interface Distribution.Compat.ReadP where { infixr 5 <++; infixr 5 +++; {-# NEED #-} instance (Prelude.Integral a) => Prelude.Fractional (Ratio.Ratio a); {-# NEED #-} instance (Prelude.Integral a) => Prelude.RealFrac (Ratio.Ratio a); {-# NEED #-} instance (Prelude.Integral a) => Prelude.Num (Ratio.Ratio a); {-# NEED #-} instance (Prelude.Integral a) => Prelude.Real (Ratio.Ratio a); {-# NEED #-} instance (Prelude.Integral a) => Prelude.Enum (Ratio.Ratio a); {-# NEED #-} instance (Prelude.Read a,Prelude.Integral a) => Prelude.Read (Ratio.Ratio a); {-# NEED #-} instance (Prelude.Integral a) => Prelude.Ord (Ratio.Ratio a); {-# NEED #-} instance (Prelude.Integral a) => Prelude.Eq (Ratio.Ratio a); {-# NEED #-} instance Prelude.Functor (Parser a b); {-# NEED #-} instance Prelude.Functor NHC.Internal.IO; {-# NEED #-} instance (Prelude.Integral a) => Prelude.Show (Ratio.Ratio a); {-# NEED #-} instance (Prelude.Show a) => Prelude.Show (NHC.Internal.IO a); {-# NEED #-} instance Control.Monad.MonadPlus (Parser a b); {-# NEED #-} instance Control.Monad.MonadPlus (P a); {-# NEED #-} instance Control.Monad.MonadPlus Prelude.Maybe; {-# NEED #-} instance Control.Monad.MonadPlus Prelude.[]; {-# NEED #-} instance Prelude.Monad (Parser a b); {-# NEED #-} instance Prelude.Monad (P a); {-# NEED #-} instance Prelude.Monad NHC.Internal.IO; interface Ratio {-# NEED Ratio #-} data Ratio a; interface NHC.Internal {-# NEED IO #-} newtype {-# #-} IO a; {-# NEED World #-} data World; interface ! Distribution.Compat.ReadP {-# NEED readS_to_P #-} readS_to_P{-# 1 #-}::(([a] -> [(b,[a])]) -> (Parser c a b)); {-# NEED readP_to_S #-} readP_to_S{-# 1 #-}::((Parser a b a) -> ([b] -> [(a,[b])])); {-# NEED manyTill #-} manyTill{-# 2 #-}::((Parser a b c) -> ((Parser [c] b d) -> (Parser a b [c]))); {-# NEED chainl1 #-} chainl1{-# 2 #-}::((Parser a b c) -> ((Parser a b (c -> (c -> c))) -> (Parser a b c))); {-# NEED chainr1 #-} chainr1{-# 2 #-}::((Parser a b c) -> ((Parser a b (c -> (c -> c))) -> (Parser a b c))); {-# NEED chainl #-} chainl{-# 3 #-}::((Parser a b c) -> ((Parser a b (c -> (c -> c))) -> (c -> (Parser a b c)))); {-# NEED chainr #-} chainr{-# 3 #-}::((Parser a b c) -> ((Parser a b (c -> (c -> c))) -> (c -> (Parser a b c)))); {-# NEED endBy1 #-} endBy1{-# 2 #-}::((Parser a b c) -> ((Parser a b d) -> (Parser a b [c]))); {-# NEED endBy #-} endBy{-# 2 #-}::((Parser a b c) -> ((Parser a b d) -> (Parser a b [c]))); {-# NEED sepBy1 #-} sepBy1{-# 2 #-}::((Parser a b c) -> ((Parser a b d) -> (Parser a b [c]))); {-# NEED sepBy #-} sepBy{-# 2 #-}::((Parser a b c) -> ((Parser a b d) -> (Parser a b [c]))); {-# NEED skipMany1 #-} skipMany1{-# 1 #-}::((Parser a b c) -> (Parser a b ())); {-# NEED skipMany #-} skipMany{-# 1 #-}::((Parser a b c) -> (Parser a b ())); {-# NEED many1 #-} many1{-# 1 #-}::((Parser a b c) -> (Parser a b [c])); {-# NEED many #-} many{-# 1 #-}::((Parser a b c) -> (Parser a b [c])); {-# NEED optional #-} optional{-# 1 #-}::((Parser a b c) -> (Parser a b ())); {-# NEED option #-} option{-# 2 #-}::(a -> ((Parser b c a) -> (Parser b c a))); {-# NEED between #-} between{-# 3 #-}::(Prelude.Monad a) => ((a b) -> ((a c) -> ((a d) -> (a d)))); {-# NEED count #-} count{-# 2 #-}::(Prelude.Monad a) => (Prelude.Int -> ((a b) -> (a [b]))); {-# NEED skipSpaces #-} skipSpaces{-# 0 #-}::(Parser a Prelude.Char ()); {-# NEED choice #-} choice{-# 1 #-}::([(Parser a b c)] -> (Parser a b c)); {-# NEED munch1 #-} munch1{-# 1 #-}::((Prelude.Char -> Prelude.Bool) -> (Parser a Prelude.Char [Prelude.Char])); {-# NEED munch #-} munch{-# 1 #-}::((Prelude.Char -> Prelude.Bool) -> (Parser a Prelude.Char [Prelude.Char])); {-# NEED string #-} string{-# 1 #-}::(Prelude.Eq a) => ([a] -> (Parser b a [a])); {-# NEED char #-} char{-# 1 #-}::(Prelude.Eq a) => (a -> (Parser b a a)); {-# NEED satisfy #-} satisfy{-# 1 #-}::((a -> Prelude.Bool) -> (Parser b a a)); {-# NEED gather #-} gather{-# 1 #-}::((Parser ([a] -> (P a b)) a c) -> (Parser b a ([a],c))); {-# NEED (<++) #-} (<++){-# 2 #-}::((Parser a b a) -> ((Parser c b a) -> (Parser c b a))); {-# NEED (+++) #-} (+++){-# 2 #-}::((Parser a b c) -> ((Parser a b c) -> (Parser a b c))); {-# NEED pfail #-} pfail{-# 0 #-}::(Parser a b c); {-# NEED look #-} look{-# 0 #-}::(Parser a b [b]); {-# NEED get #-} get{-# 0 #-}::(Parser a b b); {-# NEED ReadP #-} type {-# 1 #-} ReadP a b = (Parser a Prelude.Char b); interface Distribution.Compat.ReadP {-# NEED Parser #-} newtype {-# #-} Parser a b c; {-# NEED P #-} data P a b; interface ! Prelude {-# NEED ReadS #-} type {-# 2 #-} ReadS a = (String -> [(a,String)]); }