interface NHC.FFI where {
{-# NEED #-}
instance Prelude.Functor NHC.Internal.IO;
{-# NEED #-}
instance Prelude.Monad NHC.Internal.IO;
{-# NEED #-}
instance Prelude.Floating CLDouble;
{-# NEED #-}
instance Prelude.Floating CDouble;
{-# NEED #-}
instance Prelude.Floating CFloat;
{-# NEED #-}
instance Prelude.RealFloat CLDouble;
{-# NEED #-}
instance Prelude.RealFloat CDouble;
{-# NEED #-}
instance Prelude.RealFloat CFloat;
{-# NEED #-}
instance (Prelude.Integral a) => Prelude.Fractional (Ratio.Ratio a);
{-# NEED #-}
instance Prelude.Fractional CLDouble;
{-# NEED #-}
instance Prelude.Fractional CDouble;
{-# NEED #-}
instance Prelude.Fractional CFloat;
{-# NEED #-}
instance (Prelude.Integral a) => Prelude.RealFrac (Ratio.Ratio a);
{-# NEED #-}
instance Prelude.RealFrac CLDouble;
{-# NEED #-}
instance Prelude.RealFrac CDouble;
{-# NEED #-}
instance Prelude.RealFrac CFloat;
{-# NEED #-}
instance Ix.Ix Prelude.Bool;
{-# NEED #-}
instance Ix.Ix Prelude.Char;
{-# NEED #-}
instance Ix.Ix Prelude.Int;
{-# NEED #-}
instance Ix.Ix Prelude.Integer;
{-# NEED #-}
instance Ix.Ix Prelude.Ordering;
{-# NEED #-}
instance (Ix.Ix a,Ix.Ix b) => Ix.Ix (a,b);
{-# NEED #-}
instance Ix.Ix Word32;
{-# NEED #-}
instance Ix.Ix Word64;
{-# NEED #-}
instance Ix.Ix Int64;
{-# NEED #-}
instance Ix.Ix Int32;
{-# NEED #-}
instance Ix.Ix Word16;
{-# NEED #-}
instance Ix.Ix Int16;
{-# NEED #-}
instance Ix.Ix Word8;
{-# NEED #-}
instance Ix.Ix Int8;
{-# NEED #-}
instance Prelude.Bounded CPtrdiff;
{-# NEED #-}
instance Prelude.Bounded CWchar;
{-# NEED #-}
instance Prelude.Bounded CSigAtomic;
{-# NEED #-}
instance Prelude.Bounded CInt;
{-# NEED #-}
instance Prelude.Bounded CSize;
{-# NEED #-}
instance Prelude.Bounded Word32;
{-# NEED #-}
instance Prelude.Bounded CUInt;
{-# NEED #-}
instance Prelude.Bounded Word64;
{-# NEED #-}
instance Prelude.Bounded CULLong;
{-# NEED #-}
instance Prelude.Bounded Int64;
{-# NEED #-}
instance Prelude.Bounded CLLong;
{-# NEED #-}
instance Prelude.Bounded CULong;
{-# NEED #-}
instance Prelude.Bounded Int32;
{-# NEED #-}
instance Prelude.Bounded CLong;
{-# NEED #-}
instance Prelude.Bounded Word16;
{-# NEED #-}
instance Prelude.Bounded CUShort;
{-# NEED #-}
instance Prelude.Bounded Int16;
{-# NEED #-}
instance Prelude.Bounded CShort;
{-# NEED #-}
instance Prelude.Bounded Word8;
{-# NEED #-}
instance Prelude.Bounded CUChar;
{-# NEED #-}
instance Prelude.Bounded Int8;
{-# NEED #-}
instance Prelude.Bounded CSChar;
{-# NEED #-}
instance Prelude.Bounded CChar;
{-# NEED #-}
instance Prelude.Read NHC.PackedString.PackedString;
{-# NEED #-}
instance (Prelude.Read a,Prelude.Integral a) => Prelude.Read (Ratio.Ratio a);
{-# NEED #-}
instance Prelude.Read CPtrdiff;
{-# NEED #-}
instance Prelude.Read CWchar;
{-# NEED #-}
instance Prelude.Read CSigAtomic;
{-# NEED #-}
instance Prelude.Read CInt;
{-# NEED #-}
instance Prelude.Read CSize;
{-# NEED #-}
instance Prelude.Read Word32;
{-# NEED #-}
instance Prelude.Read CClock;
{-# NEED #-}
instance Prelude.Read CUInt;
{-# NEED #-}
instance Prelude.Read CTime;
{-# NEED #-}
instance Prelude.Read CLDouble;
{-# NEED #-}
instance Prelude.Read CDouble;
{-# NEED #-}
instance Prelude.Read CFloat;
{-# NEED #-}
instance Prelude.Read Word64;
{-# NEED #-}
instance Prelude.Read CULLong;
{-# NEED #-}
instance Prelude.Read Int64;
{-# NEED #-}
instance Prelude.Read CLLong;
{-# NEED #-}
instance Prelude.Read CULong;
{-# NEED #-}
instance Prelude.Read Int32;
{-# NEED #-}
instance Prelude.Read CLong;
{-# NEED #-}
instance Prelude.Read Word16;
{-# NEED #-}
instance Prelude.Read CUShort;
{-# NEED #-}
instance Prelude.Read Int16;
{-# NEED #-}
instance Prelude.Read CShort;
{-# NEED #-}
instance Prelude.Read Word8;
{-# NEED #-}
instance Prelude.Read CUChar;
{-# NEED #-}
instance Prelude.Read Int8;
{-# NEED #-}
instance Prelude.Read CSChar;
{-# NEED #-}
instance Prelude.Read CChar;
{-# NEED #-}
instance (Prelude.Integral a) => Prelude.Num (Ratio.Ratio a);
{-# NEED #-}
instance Prelude.Num CPtrdiff;
{-# NEED #-}
instance Prelude.Num CWchar;
{-# NEED #-}
instance Prelude.Num CSigAtomic;
{-# NEED #-}
instance Prelude.Num CInt;
{-# NEED #-}
instance Prelude.Num CSize;
{-# NEED #-}
instance Prelude.Num Word32;
{-# NEED #-}
instance Prelude.Num CClock;
{-# NEED #-}
instance Prelude.Num CUInt;
{-# NEED #-}
instance Prelude.Num CTime;
{-# NEED #-}
instance Prelude.Num CLDouble;
{-# NEED #-}
instance Prelude.Num CDouble;
{-# NEED #-}
instance Prelude.Num CFloat;
{-# NEED #-}
instance Prelude.Num Word64;
{-# NEED #-}
instance Prelude.Num CULLong;
{-# NEED #-}
instance Prelude.Num Int64;
{-# NEED #-}
instance Prelude.Num CLLong;
{-# NEED #-}
instance Prelude.Num CULong;
{-# NEED #-}
instance Prelude.Num Int32;
{-# NEED #-}
instance Prelude.Num CLong;
{-# NEED #-}
instance Prelude.Num Word16;
{-# NEED #-}
instance Prelude.Num CUShort;
{-# NEED #-}
instance Prelude.Num Int16;
{-# NEED #-}
instance Prelude.Num CShort;
{-# NEED #-}
instance Prelude.Num Word8;
{-# NEED #-}
instance Prelude.Num CUChar;
{-# NEED #-}
instance Prelude.Num Int8;
{-# NEED #-}
instance Prelude.Num CSChar;
{-# NEED #-}
instance Prelude.Num CChar;
{-# NEED #-}
instance (Prelude.Integral a) => Prelude.Real (Ratio.Ratio a);
{-# NEED #-}
instance Prelude.Real CPtrdiff;
{-# NEED #-}
instance Prelude.Real CWchar;
{-# NEED #-}
instance Prelude.Real CSigAtomic;
{-# NEED #-}
instance Prelude.Real CInt;
{-# NEED #-}
instance Prelude.Real CSize;
{-# NEED #-}
instance Prelude.Real Word32;
{-# NEED #-}
instance Prelude.Real CClock;
{-# NEED #-}
instance Prelude.Real CUInt;
{-# NEED #-}
instance Prelude.Real CTime;
{-# NEED #-}
instance Prelude.Real CLDouble;
{-# NEED #-}
instance Prelude.Real CDouble;
{-# NEED #-}
instance Prelude.Real CFloat;
{-# NEED #-}
instance Prelude.Real Word64;
{-# NEED #-}
instance Prelude.Real CULLong;
{-# NEED #-}
instance Prelude.Real Int64;
{-# NEED #-}
instance Prelude.Real CLLong;
{-# NEED #-}
instance Prelude.Real CULong;
{-# NEED #-}
instance Prelude.Real Int32;
{-# NEED #-}
instance Prelude.Real CLong;
{-# NEED #-}
instance Prelude.Real Word16;
{-# NEED #-}
instance Prelude.Real CUShort;
{-# NEED #-}
instance Prelude.Real Int16;
{-# NEED #-}
instance Prelude.Real CShort;
{-# NEED #-}
instance Prelude.Real Word8;
{-# NEED #-}
instance Prelude.Real CUChar;
{-# NEED #-}
instance Prelude.Real Int8;
{-# NEED #-}
instance Prelude.Real CSChar;
{-# NEED #-}
instance Prelude.Real CChar;
{-# NEED #-}
instance Prelude.Integral CPtrdiff;
{-# NEED #-}
instance Prelude.Integral CWchar;
{-# NEED #-}
instance Prelude.Integral CSigAtomic;
{-# NEED #-}
instance Prelude.Integral CInt;
{-# NEED #-}
instance Prelude.Integral CSize;
{-# NEED #-}
instance Prelude.Integral Word32;
{-# NEED #-}
instance Prelude.Integral CUInt;
{-# NEED #-}
instance Prelude.Integral Word64;
{-# NEED #-}
instance Prelude.Integral CULLong;
{-# NEED #-}
instance Prelude.Integral Int64;
{-# NEED #-}
instance Prelude.Integral CLLong;
{-# NEED #-}
instance Prelude.Integral CULong;
{-# NEED #-}
instance Prelude.Integral Int32;
{-# NEED #-}
instance Prelude.Integral CLong;
{-# NEED #-}
instance Prelude.Integral Word16;
{-# NEED #-}
instance Prelude.Integral CUShort;
{-# NEED #-}
instance Prelude.Integral Int16;
{-# NEED #-}
instance Prelude.Integral CShort;
{-# NEED #-}
instance Prelude.Integral Word8;
{-# NEED #-}
instance Prelude.Integral CUChar;
{-# NEED #-}
instance Prelude.Integral Int8;
{-# NEED #-}
instance Prelude.Integral CSChar;
{-# NEED #-}
instance Prelude.Integral CChar;
{-# NEED #-}
instance Prelude.Eq Addr;
{-# NEED #-}
instance Prelude.Eq NHC.PackedString.PackedString;
{-# NEED #-}
instance Prelude.Eq NHC.DErrNo.ErrNo;
{-# NEED #-}
instance Prelude.Eq IO.Handle;
{-# NEED #-}
instance Prelude.Eq (FunPtr a);
{-# NEED #-}
instance Prelude.Eq (ForeignPtr a);
{-# NEED #-}
instance (Prelude.Integral a) => Prelude.Eq (Ratio.Ratio a);
{-# NEED #-}
instance Prelude.Eq CPtrdiff;
{-# NEED #-}
instance Prelude.Eq CWchar;
{-# NEED #-}
instance Prelude.Eq CSigAtomic;
{-# NEED #-}
instance Prelude.Eq CInt;
{-# NEED #-}
instance Prelude.Eq CSize;
{-# NEED #-}
instance Prelude.Eq Word32;
{-# NEED #-}
instance Prelude.Eq CClock;
{-# NEED #-}
instance Prelude.Eq CUInt;
{-# NEED #-}
instance Prelude.Eq CTime;
{-# NEED #-}
instance Prelude.Eq (Ptr a);
{-# NEED #-}
instance Prelude.Eq CLDouble;
{-# NEED #-}
instance Prelude.Eq CDouble;
{-# NEED #-}
instance Prelude.Eq CFloat;
{-# NEED #-}
instance Prelude.Eq Word64;
{-# NEED #-}
instance Prelude.Eq CULLong;
{-# NEED #-}
instance Prelude.Eq Int64;
{-# NEED #-}
instance Prelude.Eq CLLong;
{-# NEED #-}
instance Prelude.Eq CULong;
{-# NEED #-}
instance Prelude.Eq Int32;
{-# NEED #-}
instance Prelude.Eq CLong;
{-# NEED #-}
instance Prelude.Eq Word16;
{-# NEED #-}
instance Prelude.Eq CUShort;
{-# NEED #-}
instance Prelude.Eq Int16;
{-# NEED #-}
instance Prelude.Eq CShort;
{-# NEED #-}
instance Prelude.Eq Word8;
{-# NEED #-}
instance Prelude.Eq CUChar;
{-# NEED #-}
instance Prelude.Eq Int8;
{-# NEED #-}
instance Prelude.Eq CSChar;
{-# NEED #-}
instance Prelude.Eq CChar;
{-# NEED #-}
instance Prelude.Ord Addr;
{-# NEED #-}
instance Prelude.Ord NHC.PackedString.PackedString;
{-# NEED #-}
instance Prelude.Ord (FunPtr a);
{-# NEED #-}
instance Prelude.Ord (ForeignPtr a);
{-# NEED #-}
instance (Prelude.Integral a) => Prelude.Ord (Ratio.Ratio a);
{-# NEED #-}
instance Prelude.Ord CPtrdiff;
{-# NEED #-}
instance Prelude.Ord CWchar;
{-# NEED #-}
instance Prelude.Ord CSigAtomic;
{-# NEED #-}
instance Prelude.Ord CInt;
{-# NEED #-}
instance Prelude.Ord CSize;
{-# NEED #-}
instance Prelude.Ord Word32;
{-# NEED #-}
instance Prelude.Ord CClock;
{-# NEED #-}
instance Prelude.Ord CUInt;
{-# NEED #-}
instance Prelude.Ord CTime;
{-# NEED #-}
instance Prelude.Ord (Ptr a);
{-# NEED #-}
instance Prelude.Ord CLDouble;
{-# NEED #-}
instance Prelude.Ord CDouble;
{-# NEED #-}
instance Prelude.Ord CFloat;
{-# NEED #-}
instance Prelude.Ord Word64;
{-# NEED #-}
instance Prelude.Ord CULLong;
{-# NEED #-}
instance Prelude.Ord Int64;
{-# NEED #-}
instance Prelude.Ord CLLong;
{-# NEED #-}
instance Prelude.Ord CULong;
{-# NEED #-}
instance Prelude.Ord Int32;
{-# NEED #-}
instance Prelude.Ord CLong;
{-# NEED #-}
instance Prelude.Ord Word16;
{-# NEED #-}
instance Prelude.Ord CUShort;
{-# NEED #-}
instance Prelude.Ord Int16;
{-# NEED #-}
instance Prelude.Ord CShort;
{-# NEED #-}
instance Prelude.Ord Word8;
{-# NEED #-}
instance Prelude.Ord CUChar;
{-# NEED #-}
instance Prelude.Ord Int8;
{-# NEED #-}
instance Prelude.Ord CSChar;
{-# NEED #-}
instance Prelude.Ord CChar;
{-# NEED #-}
instance Prelude.Enum Addr;
{-# NEED #-}
instance Prelude.Enum NHC.DErrNo.ErrNo;
{-# NEED #-}
instance (Prelude.Integral a) => Prelude.Enum (Ratio.Ratio a);
{-# NEED #-}
instance Prelude.Enum CPtrdiff;
{-# NEED #-}
instance Prelude.Enum CWchar;
{-# NEED #-}
instance Prelude.Enum CSigAtomic;
{-# NEED #-}
instance Prelude.Enum CInt;
{-# NEED #-}
instance Prelude.Enum CSize;
{-# NEED #-}
instance Prelude.Enum Word32;
{-# NEED #-}
instance Prelude.Enum CClock;
{-# NEED #-}
instance Prelude.Enum CUInt;
{-# NEED #-}
instance Prelude.Enum CTime;
{-# NEED #-}
instance Prelude.Enum (Ptr a);
{-# NEED #-}
instance Prelude.Enum CLDouble;
{-# NEED #-}
instance Prelude.Enum CDouble;
{-# NEED #-}
instance Prelude.Enum CFloat;
{-# NEED #-}
instance Prelude.Enum Word64;
{-# NEED #-}
instance Prelude.Enum CULLong;
{-# NEED #-}
instance Prelude.Enum Int64;
{-# NEED #-}
instance Prelude.Enum CLLong;
{-# NEED #-}
instance Prelude.Enum CULong;
{-# NEED #-}
instance Prelude.Enum Int32;
{-# NEED #-}
instance Prelude.Enum CLong;
{-# NEED #-}
instance Prelude.Enum Word16;
{-# NEED #-}
instance Prelude.Enum CUShort;
{-# NEED #-}
instance Prelude.Enum Int16;
{-# NEED #-}
instance Prelude.Enum CShort;
{-# NEED #-}
instance Prelude.Enum Word8;
{-# NEED #-}
instance Prelude.Enum CUChar;
{-# NEED #-}
instance Prelude.Enum Int8;
{-# NEED #-}
instance Prelude.Enum CSChar;
{-# NEED #-}
instance Prelude.Enum CChar;
{-# NEED #-}
instance Prelude.Show Addr;
{-# NEED #-}
instance Prelude.Show NHC.PackedString.PackedString;
{-# NEED #-}
instance (Prelude.Show a) => Prelude.Show (NHC.Internal.IO a);
{-# NEED #-}
instance Prelude.Show NHC.DErrNo.ErrNo;
{-# NEED #-}
instance Prelude.Show IO.Handle;
{-# NEED #-}
instance Prelude.Show (FunPtr a);
{-# NEED #-}
instance Prelude.Show (ForeignPtr a);
{-# NEED #-}
instance (Prelude.Integral a) => Prelude.Show (Ratio.Ratio a);
{-# NEED #-}
instance Prelude.Show CPtrdiff;
{-# NEED #-}
instance Prelude.Show CWchar;
{-# NEED #-}
instance Prelude.Show CSigAtomic;
{-# NEED #-}
instance Prelude.Show CInt;
{-# NEED #-}
instance Prelude.Show CSize;
{-# NEED #-}
instance Prelude.Show Word32;
{-# NEED #-}
instance Prelude.Show CClock;
{-# NEED #-}
instance Prelude.Show CUInt;
{-# NEED #-}
instance Prelude.Show CTime;
{-# NEED #-}
instance Prelude.Show (Ptr a);
{-# NEED #-}
instance Prelude.Show CLDouble;
{-# NEED #-}
instance Prelude.Show CDouble;
{-# NEED #-}
instance Prelude.Show CFloat;
{-# NEED #-}
instance Prelude.Show Word64;
{-# NEED #-}
instance Prelude.Show CULLong;
{-# NEED #-}
instance Prelude.Show Int64;
{-# NEED #-}
instance Prelude.Show CLLong;
{-# NEED #-}
instance Prelude.Show CULong;
{-# NEED #-}
instance Prelude.Show Int32;
{-# NEED #-}
instance Prelude.Show CLong;
{-# NEED #-}
instance Prelude.Show Word16;
{-# NEED #-}
instance Prelude.Show CUShort;
{-# NEED #-}
instance Prelude.Show Int16;
{-# NEED #-}
instance Prelude.Show CShort;
{-# NEED #-}
instance Prelude.Show Word8;
{-# NEED #-}
instance Prelude.Show CUChar;
{-# NEED #-}
instance Prelude.Show Int8;
{-# NEED #-}
instance Prelude.Show CSChar;
{-# NEED #-}
instance Prelude.Show CChar;
{-# NEED #-}
instance Storable (StablePtr a);
{-# NEED #-}
instance Storable Prelude.Float;
{-# NEED #-}
instance Storable Prelude.Double;
{-# NEED #-}
instance Storable (FunPtr a);
{-# NEED #-}
instance Storable Prelude.Bool;
{-# NEED #-}
instance Storable Prelude.Char;
{-# NEED #-}
instance Storable Prelude.Int;
{-# NEED #-}
instance Storable CPtrdiff;
{-# NEED #-}
instance Storable CWchar;
{-# NEED #-}
instance Storable CSigAtomic;
{-# NEED #-}
instance Storable CInt;
{-# NEED #-}
instance Storable CSize;
{-# NEED #-}
instance Storable Word32;
{-# NEED #-}
instance Storable CClock;
{-# NEED #-}
instance Storable CUInt;
{-# NEED #-}
instance Storable CTime;
{-# NEED #-}
instance Storable (Ptr a);
{-# NEED #-}
instance Storable CLDouble;
{-# NEED #-}
instance Storable CDouble;
{-# NEED #-}
instance Storable CFloat;
{-# NEED #-}
instance Storable Word64;
{-# NEED #-}
instance Storable CULLong;
{-# NEED #-}
instance Storable Int64;
{-# NEED #-}
instance Storable CLLong;
{-# NEED #-}
instance Storable CULong;
{-# NEED #-}
instance Storable Int32;
{-# NEED #-}
instance Storable CLong;
{-# NEED #-}
instance Storable Word16;
{-# NEED #-}
instance Storable CUShort;
{-# NEED #-}
instance Storable Int16;
{-# NEED #-}
instance Storable CShort;
{-# NEED #-}
instance Storable Word8;
{-# NEED #-}
instance Storable CUChar;
{-# NEED #-}
instance Storable Int8;
{-# NEED #-}
instance Storable CSChar;
{-# NEED #-}
instance Storable CChar;
interface Ix
{-# NEED Ix #-}
class (Prelude.Ord a) => Ix a;
interface NHC.DErrNo
{-# NEED ErrNo #-}
data ErrNo;
interface Ratio
{-# NEED Ratio #-}
data (Prelude.Integral a) => Ratio a;
interface ! NHC.FFI
{-# NEED mallocArray #-}
mallocArray{-# 0 #-}::(Storable a) => (Prelude.Int -> (NHC.Internal.IO (Ptr a)));
{-# NEED mallocArray0 #-}
mallocArray0{-# 1 #-}::(Storable a) => (Prelude.Int -> (NHC.Internal.IO (Ptr a)));
{-# NEED allocaArray #-}
allocaArray{-# 0 #-}::(Storable a) => (Prelude.Int -> (((Ptr a) -> (NHC.Internal.IO b)) -> (NHC.Internal.IO b)));
{-# NEED allocaArray0 #-}
allocaArray0{-# 1 #-}::(Storable a) => (Prelude.Int -> (((Ptr a) -> (NHC.Internal.IO b)) -> (NHC.Internal.IO b)));
{-# NEED reallocArray #-}
reallocArray{-# 0 #-}::(Storable a) => ((Ptr a) -> (Prelude.Int -> (NHC.Internal.IO (Ptr a))));
{-# NEED reallocArray0 #-}
reallocArray0{-# 2 #-}::(Storable a) => ((Ptr a) -> (Prelude.Int -> (NHC.Internal.IO (Ptr a))));
{-# NEED peekArray #-}
peekArray{-# 2 #-}::(Storable a) => (Prelude.Int -> ((Ptr a) -> (NHC.Internal.IO [a])));
{-# NEED peekArray0 #-}
peekArray0{-# 2 #-}::(Storable a,Prelude.Eq a) => (a -> ((Ptr a) -> (NHC.Internal.IO [a])));
{-# NEED pokeArray #-}
pokeArray{-# 2 #-}::(Storable a) => ((Ptr a) -> ([a] -> (NHC.Internal.IO ())));
{-# NEED pokeArray0 #-}
pokeArray0{-# 3 #-}::(Storable a) => (a -> ((Ptr a) -> ([a] -> (NHC.Internal.IO ()))));
{-# NEED newArray #-}
newArray{-# 1 #-}::(Storable a) => ([a] -> (NHC.Internal.IO (Ptr a)));
{-# NEED newArray0 #-}
newArray0{-# 2 #-}::(Storable a) => (a -> ([a] -> (NHC.Internal.IO (Ptr a))));
{-# NEED withArray #-}
withArray{-# 2 #-}::(Storable a) => ([a] -> (((Ptr a) -> (NHC.Internal.IO b)) -> (NHC.Internal.IO b)));
{-# NEED withArray0 #-}
withArray0{-# 3 #-}::(Storable a) => (a -> ([a] -> (((Ptr a) -> (NHC.Internal.IO b)) -> (NHC.Internal.IO b))));
{-# NEED destructArray #-}
destructArray{-# 2 #-}::(Storable a) => (Prelude.Int -> ((Ptr a) -> (NHC.Internal.IO ())));
{-# NEED destructArray0 #-}
destructArray0{-# 2 #-}::(Storable a,Prelude.Eq a) => (a -> ((Ptr a) -> (NHC.Internal.IO ())));
{-# NEED copyArray #-}
copyArray{-# 0 #-}::(Storable a) => ((Ptr a) -> ((Ptr a) -> (Prelude.Int -> (NHC.Internal.IO ()))));
{-# NEED moveArray #-}
moveArray{-# 0 #-}::(Storable a) => ((Ptr a) -> ((Ptr a) -> (Prelude.Int -> (NHC.Internal.IO ()))));
{-# NEED lengthArray0 #-}
lengthArray0{-# 2 #-}::(Storable a,Prelude.Eq a) => (a -> ((Ptr a) -> (NHC.Internal.IO Prelude.Int)));
{-# NEED advancePtr #-}
advancePtr{-# 0 #-}::(Storable a) => ((Ptr a) -> (Prelude.Int -> (Ptr a)));
{-# NEED new #-}
new{-# 1 #-}::(Storable a) => (a -> (NHC.Internal.IO (Ptr a)));
{-# NEED with #-}
with{-# 2 #-}::(Storable a) => (a -> (((Ptr a) -> (NHC.Internal.IO b)) -> (NHC.Internal.IO b)));
{-# NEED fromBool #-}
fromBool{-# 1 #-}::(Prelude.Num a) => (Prelude.Bool -> a);
{-# NEED toBool #-}
toBool{-# 0 #-}::(Prelude.Num a) => (a -> Prelude.Bool);
{-# NEED maybeNew #-}
maybeNew{-# 0 #-}::((a -> (NHC.Internal.IO (Ptr a))) -> ((Prelude.Maybe a) -> (NHC.Internal.IO (Ptr a))));
{-# NEED maybeWith #-}
maybeWith{-# 0 #-}::((a -> (((Ptr b) -> (NHC.Internal.IO c)) -> (NHC.Internal.IO c))) -> ((Prelude.Maybe a) -> (((Ptr b) -> (NHC.Internal.IO c)) -> (NHC.Internal.IO c))));
{-# NEED maybePeek #-}
maybePeek{-# 2 #-}::(((Ptr a) -> (NHC.Internal.IO b)) -> ((Ptr a) -> (NHC.Internal.IO (Prelude.Maybe b))));
{-# NEED withMany #-}
withMany{-# 3 #-}::((a -> ((b -> c) -> c)) -> ([a] -> (([b] -> c) -> c)));
{-# NEED copyBytes #-}
copyBytes{-# 3 #-}::((Ptr a) -> ((Ptr a) -> (Prelude.Int -> (NHC.Internal.IO ()))));
{-# NEED moveBytes #-}
moveBytes{-# 3 #-}::((Ptr a) -> ((Ptr a) -> (Prelude.Int -> (NHC.Internal.IO ()))));
{-# NEED peekCString #-}
peekCString{-# 1 #-}::(CString -> (NHC.Internal.IO Prelude.String));
{-# NEED peekCStringLen #-}
peekCStringLen{-# 1 #-}::(CStringLen -> (NHC.Internal.IO Prelude.String));
{-# NEED newCString #-}
newCString{-# 0 #-}::(Prelude.String -> (NHC.Internal.IO CString));
{-# NEED newCStringLen #-}
newCStringLen{-# 1 #-}::(Prelude.String -> (NHC.Internal.IO CStringLen));
{-# NEED withCString #-}
withCString{-# 0 #-}::(Prelude.String -> ((CString -> (NHC.Internal.IO a)) -> (NHC.Internal.IO a)));
{-# NEED withCStringLen #-}
withCStringLen{-# 2 #-}::(Prelude.String -> ((CStringLen -> (NHC.Internal.IO a)) -> (NHC.Internal.IO a)));
{-# NEED CStringLen #-}
type {-# 2 #-} CStringLen = (CString,Prelude.Int);
{-# NEED CString #-}
type {-# 1 #-} CString = (Ptr CChar);
{-# NEED castCCharToChar #-}
castCCharToChar{-# 1 #-}::(CChar -> Prelude.Char);
{-# NEED castCharToCChar #-}
castCharToCChar{-# 1 #-}::(Prelude.Char -> CChar);
{-# NEED nullFunPtr #-}
nullFunPtr{-# 0 #-}::(FunPtr a);
{-# NEED castFunPtr #-}
castFunPtr{-# 1 #-}::((FunPtr a) -> (FunPtr b));
{-# NEED freeHaskellFunPtr #-}
freeHaskellFunPtr{-# 1 #-}::((FunPtr a) -> (NHC.Internal.IO ()));
{-# NEED castFunPtrToPtr #-}
castFunPtrToPtr{-# 1 #-}::((FunPtr a) -> (Ptr b));
{-# NEED castPtrToFunPtr #-}
castPtrToFunPtr{-# 1 #-}::((Ptr a) -> (FunPtr b));
{-# NEED newForeignPtr #-}
newForeignPtr{-# 0 #-}::((FinalizerPtr a) -> ((Ptr a) -> (NHC.Internal.IO (ForeignPtr a))));
{-# NEED newForeignPtr_ #-}
newForeignPtr_{-# 1 #-}::((Ptr a) -> (NHC.Internal.IO (ForeignPtr a)));
{-# NEED addForeignPtrFinalizer #-}
addForeignPtrFinalizer{-# 2 #-}::((FinalizerPtr a) -> ((ForeignPtr a) -> (NHC.Internal.IO ())));
{-# NEED FinalizerPtr #-}
type {-# 1 #-} FinalizerPtr a = (FunPtr ((Ptr a) -> (NHC.Internal.IO ())));
{-# NEED withForeignPtr #-}
withForeignPtr{-# 2 #-}::((ForeignPtr a) -> (((Ptr a) -> (NHC.Internal.IO b)) -> (NHC.Internal.IO b)));
{-# NEED unsafeForeignPtrToPtr #-}
unsafeForeignPtrToPtr{-# 1 #-}::((ForeignPtr a) -> (Ptr a));
{-# NEED touchForeignPtr #-}
touchForeignPtr{-# 1 #-}::((ForeignPtr a) -> (NHC.Internal.IO ()));
{-# NEED castForeignPtr #-}
castForeignPtr{-# 1 #-}::((ForeignPtr a) -> (ForeignPtr b));
{-# NEED newConcForeignPtr #-}
newConcForeignPtr{-# 2 #-}::((NHC.Internal.IO ()) -> ((Ptr a) -> (NHC.Internal.IO (ForeignPtr a))));
{-# NEED addConcForeignPtrFinalizer #-}
addConcForeignPtrFinalizer{-# 2 #-}::((NHC.Internal.IO ()) -> ((ForeignPtr a) -> (NHC.Internal.IO ())));
{-# NEED newStablePtr #-}
newStablePtr{-# 0 #-}::(a -> (NHC.Internal.IO (StablePtr a)));
{-# NEED deRefStablePtr #-}
deRefStablePtr{-# 0 #-}::((StablePtr a) -> (NHC.Internal.IO a));
{-# NEED freeStablePtr #-}
freeStablePtr{-# 0 #-}::((StablePtr a) -> (NHC.Internal.IO ()));
{-# NEED castStablePtrToPtr #-}
castStablePtrToPtr{-# 1 #-}::((StablePtr a) -> (Ptr ()));
{-# NEED castPtrToStablePtr #-}
castPtrToStablePtr{-# 1 #-}::((Ptr ()) -> (StablePtr a));
{-# NEED StablePtr #-}
data StablePtr a;
{-# NEED castPtr #-}
castPtr{-# 1 #-}::((Ptr a) -> (Ptr b));
{-# NEED nullPtr #-}
nullPtr{-# 0 #-}::(Ptr a);
{-# NEED plusPtr #-}
plusPtr{-# 2 #-}::((Ptr a) -> (Prelude.Int -> (Ptr b)));
{-# NEED alignPtr #-}
alignPtr{-# 2 #-}::((Ptr a) -> (Prelude.Int -> (Ptr a)));
{-# NEED minusPtr #-}
minusPtr{-# 2 #-}::((Ptr a) -> ((Ptr b) -> Prelude.Int));
{-# NEED throwIf #-}
throwIf{-# 3 #-}::((a -> Prelude.Bool) -> ((a -> Prelude.String) -> ((NHC.Internal.IO a) -> (NHC.Internal.IO a))));
{-# NEED throwIf_ #-}
throwIf_{-# 3 #-}::((a -> Prelude.Bool) -> ((a -> Prelude.String) -> ((NHC.Internal.IO a) -> (NHC.Internal.IO ()))));
{-# NEED throwIfNeg #-}
throwIfNeg{-# 0 #-}::(Prelude.Ord a,Prelude.Num a) => ((a -> Prelude.String) -> ((NHC.Internal.IO a) -> (NHC.Internal.IO a)));
{-# NEED throwIfNeg_ #-}
throwIfNeg_{-# 0 #-}::(Prelude.Ord a,Prelude.Num a) => ((a -> Prelude.String) -> ((NHC.Internal.IO a) -> (NHC.Internal.IO ())));
{-# NEED throwIfNull #-}
throwIfNull{-# 0 #-}::(Prelude.String -> ((NHC.Internal.IO (Ptr a)) -> (NHC.Internal.IO (Ptr a))));
{-# NEED void #-}
void{-# 1 #-}::((NHC.Internal.IO a) -> (NHC.Internal.IO ()));
{-# NEED getErrNo #-}
getErrNo{-# 0 #-}::(NHC.Internal.IO Prelude.Int);
{-# NEED mkIOError #-}
mkIOError{-# 4 #-}::(Prelude.String -> ((Prelude.Maybe Prelude.FilePath) -> ((Prelude.Maybe IO.Handle) -> (Prelude.Int -> Prelude.IOError))));
{-# NEED throwIOError #-}
throwIOError{-# 4 #-}::(Prelude.String -> ((Prelude.Maybe Prelude.FilePath) -> ((Prelude.Maybe IO.Handle) -> (Prelude.Int -> (NHC.Internal.IO a)))));
interface IO
{-# NEED Handle #-}
newtype {-# #-} Handle;
interface ! NHC.FFI
{-# NEED nullAddr #-}
nullAddr{-# 0 #-}::Addr;
{-# NEED plusAddr #-}
plusAddr{-# 2 #-}::(Addr -> (Prelude.Int -> Addr));
interface ! NHC.Internal
{-# NEED unsafePerformIO #-}
unsafePerformIO{-# 1 #-}::((NHC.Internal.IO a) -> a);
interface ! NHC.FFI
{-# NEED makeForeignObj #-}
makeForeignObj{-# 2 #-}::(Addr -> ((NHC.Internal.IO ()) -> (NHC.Internal.IO ForeignObj)));
{-# NEED newForeignObj #-}
newForeignObj{-# 0 #-}::(Addr -> ((NHC.Internal.IO ()) -> (NHC.Internal.IO ForeignObj)));
{-# NEED foreignObjToAddr #-}
foreignObjToAddr{-# 1 #-}::(ForeignObj -> Addr);
{-# NEED freeForeignObj #-}
freeForeignObj{-# 1 #-}::(ForeignObj -> (NHC.Internal.IO ()));
{-# NEED withForeignObj #-}
withForeignObj{-# 2 #-}::(ForeignObj -> ((Addr -> (NHC.Internal.IO a)) -> (NHC.Internal.IO a)));
{-# NEED touchForeignObj #-}
touchForeignObj{-# 1 #-}::(ForeignObj -> (NHC.Internal.IO ()));
{-# NEED ForeignObj #-}
data ForeignObj;
{-# NEED Addr #-}
data Addr;
interface ! CString
{-# NEED toCString #-}
toCString{-# 1 #-}::([Prelude.Char] -> NHC.PackedString.PackedString);
{-# NEED fromCString #-}
fromCString{-# 1 #-}::(NHC.PackedString.PackedString -> [Prelude.Char]);
interface ! NHC.PackedString
{-# NEED PackedString #-}
data PackedString;
interface ! NHC.FFI
{-# NEED malloc #-}
malloc{-# 0 #-}::(Storable a) => (NHC.Internal.IO (Ptr a));
{-# NEED mallocBytes #-}
mallocBytes{-# 1 #-}::(Prelude.Int -> (NHC.Internal.IO (Ptr a)));
{-# NEED alloca #-}
alloca{-# 0 #-}::(Storable a) => (((Ptr a) -> (NHC.Internal.IO b)) -> (NHC.Internal.IO b));
{-# NEED allocaBytes #-}
allocaBytes{-# 1 #-}::(Prelude.Int -> (((Ptr a) -> (NHC.Internal.IO b)) -> (NHC.Internal.IO b)));
{-# NEED realloc #-}
realloc{-# 1 #-}::(Storable b) => ((Ptr a) -> (NHC.Internal.IO (Ptr b)));
{-# NEED reallocBytes #-}
reallocBytes{-# 2 #-}::((Ptr a) -> (Prelude.Int -> (NHC.Internal.IO (Ptr a))));
{-# NEED free #-}
free{-# 0 #-}::((Ptr a) -> (NHC.Internal.IO ()));
{-# NEED finalizerFree #-}
finalizerFree{-# 0 #-}::(FunPtr ((Ptr a) -> (NHC.Internal.IO ())));
{-# NEED FunPtr #-}
data FunPtr a;
{-# NEED ForeignPtr #-}
data ForeignPtr a;
{-# NEED {CPtrdiff CPtrdiff} #-}
newtype {-# #-} CPtrdiff
= CPtrdiff CInt;
{-# NEED {CWchar CWchar} #-}
newtype {-# #-} CWchar
= CWchar CInt;
{-# NEED {CSigAtomic CSigAtomic} #-}
newtype {-# #-} CSigAtomic
= CSigAtomic CInt;
{-# NEED {CSize CSize} #-}
newtype {-# #-} CSize
= CSize CInt;
{-# NEED {CInt CInt} #-}
newtype {-# #-} CInt
= CInt Prelude.Int;
{-# NEED {CClock CClock} #-}
newtype {-# #-} CClock
= CClock CUInt;
{-# NEED {CTime CTime} #-}
newtype {-# #-} CTime
= CTime CUInt;
{-# NEED {CUInt CUInt} #-}
newtype {-# #-} CUInt
= CUInt Word32;
{-# NEED CFile #-}
data CFile;
{-# NEED CFpos #-}
data CFpos;
{-# NEED CJmpBuf #-}
data CJmpBuf;
{-# NEED {CLDouble CLDouble} #-}
newtype {-# #-} CLDouble
= CLDouble Prelude.Double;
{-# NEED {CDouble CDouble} #-}
newtype {-# #-} CDouble
= CDouble Prelude.Double;
{-# NEED {CFloat CFloat} #-}
newtype {-# #-} CFloat
= CFloat Prelude.Float;
{-# NEED {CULLong CULLong} #-}
newtype {-# #-} CULLong
= CULLong Word64;
{-# NEED Word64 #-}
data Word64;
{-# NEED {CLLong CLLong} #-}
newtype {-# #-} CLLong
= CLLong Int64;
{-# NEED Int64 #-}
data Int64;
{-# NEED {CULong CULong} #-}
newtype {-# #-} CULong
= CULong Word32;
{-# NEED Word32 #-}
data Word32;
{-# NEED {CLong CLong} #-}
newtype {-# #-} CLong
= CLong Int32;
{-# NEED Int32 #-}
data Int32;
{-# NEED {CUShort CUShort} #-}
newtype {-# #-} CUShort
= CUShort Word16;
{-# NEED Word16 #-}
data Word16;
{-# NEED {CShort CShort} #-}
newtype {-# #-} CShort
= CShort Int16;
{-# NEED Int16 #-}
data Int16;
{-# NEED {CUChar CUChar} #-}
newtype {-# #-} CUChar
= CUChar Word8;
{-# NEED Word8 #-}
data Word8;
{-# NEED {CSChar CSChar} #-}
newtype {-# #-} CSChar
= CSChar Int8;
{-# NEED {Storable peekElemOff pokeElemOff peekByteOff pokeByteOff peek poke destruct sizeOf alignment} #-}
class Storable a where {
peekElemOff{-# 2 #-}::((Ptr a) -> (Prelude.Int -> (NHC.Internal.IO a)));
pokeElemOff{-# 3 #-}::((Ptr a) -> (Prelude.Int -> (a -> (NHC.Internal.IO ()))));
peekByteOff{-# 2 #-}::((Ptr b) -> (Prelude.Int -> (NHC.Internal.IO a)));
pokeByteOff{-# 3 #-}::((Ptr b) -> (Prelude.Int -> (a -> (NHC.Internal.IO ()))));
peek{-# 1 #-}::((Ptr a) -> (NHC.Internal.IO a));
poke{-# 2 #-}::((Ptr a) -> (a -> (NHC.Internal.IO ())));
destruct{-# 1 #-}::((Ptr a) -> (NHC.Internal.IO ()));
sizeOf{-# 1 #-}::(a -> Prelude.Int);
alignment{-# 1 #-}::(a -> Prelude.Int);
};
interface NHC.Internal
{-# NEED IO #-}
newtype {-# #-} IO a;
{-# NEED World #-}
data World;
interface ! NHC.FFI
{-# NEED Ptr #-}
data Ptr a;
{-# NEED {CChar CChar} #-}
newtype {-# #-} CChar
= CChar Int8;
{-# NEED Int8 #-}
data Int8;
}
|