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; }