! ' '' - -- -< -<< -> :: ; <- , = => > ? # * @ [| |] \ _ ` {, } {- -} | ~ as case of class data data family data instance default deriving deriving instance do forall foreign hiding if then else import infix infixl infixr instance let in mdo module newtype proc qualified rec type type family type instance where Int Float Double Bool Char String () [Int] [Float] [Double] [Bool] [Char] [String] (&&) (||) (==) (/=) (<) (<=) (>) (>=) (+) (-) (*) (/) (**) (^) (^^) (<$) (<$>) (<*>) (*>) (<*) (>>=) (>>) (=<<) (.) ($) ($!) (++) (!!) not otherwise fst snd curry uncurry max min succ pred negate abs signum quot rem div mod recip even odd fmap pure return foldMap foldr foldl elem maximum minimum sum product traverse sequence id const flip until undefined seq map filter head last tail init null length reverse and or any all concat concatMap iterate repeat replicate cycle take drop takeWhile dropWhile span break splitAt notElem lookup zip zipWith unzip lines words unlines unwords putChar putStr putStrLn print getChar getLine getContents interact readFile writeFile appendFile readIO readLn Eq Enum Bounded Num Real Fractional Semigroup Functor Applicative Monad Foldable Show Read Maybe Either Ordering