module Monad
(Var "=<<",Value{args=2,fixity=R,priority=1,letBound=True})
(Var "ap",Value{args=0,fixity=Def,priority=9,letBound=True})
(Var "filterM",Value{args=2,fixity=Def,priority=9,letBound=True})
(Var "foldM",Value{args=3,fixity=Def,priority=9,letBound=True})
(Var "guard",Value{args=1,fixity=Def,priority=9,letBound=True})
(Var "join",Value{args=1,fixity=Def,priority=9,letBound=True})
(Var "liftM",Value{args=1,fixity=Def,priority=9,letBound=True})
(Var "liftM2",Value{args=1,fixity=Def,priority=9,letBound=True})
(Var "liftM3",Value{args=1,fixity=Def,priority=9,letBound=True})
(Var "liftM4",Value{args=1,fixity=Def,priority=9,letBound=True})
(Var "liftM5",Value{args=1,fixity=Def,priority=9,letBound=True})
(Var "mapAndUnzipM",Value{args=2,fixity=Def,priority=9,letBound=True})
(Var "mapM",Value{args=2,fixity=Def,priority=9,letBound=True})
(Var "mapM_",Value{args=2,fixity=Def,priority=9,letBound=True})
(Var "msum",Value{args=1,fixity=Def,priority=9,letBound=True})
(Var "sequence",Value{args=0,fixity=Def,priority=9,letBound=True})
(Var "sequence_",Value{args=0,fixity=Def,priority=9,letBound=True})
(Var "unless",Value{args=2,fixity=Def,priority=9,letBound=True})
(Var "when",Value{args=2,fixity=Def,priority=9,letBound=True})
(Var "zipWithM",Value{args=3,fixity=Def,priority=9,letBound=True})
(Var "zipWithM_",Value{args=3,fixity=Def,priority=9,letBound=True})
(Method "Functor" "fmap",Value{args=(-1),fixity=Def,priority=9,letBound=True})
(Method "Monad" ">>",Value{args=(-1),fixity=L,priority=1,letBound=True})
(Method "Monad" ">>=",Value{args=(-1),fixity=L,priority=1,letBound=True})
(Method "Monad" "fail",Value{args=(-1),fixity=Def,priority=9,letBound=True})
(Method "Monad" "return",Value{args=(-1),fixity=Def,priority=9,letBound=True})
(Method "MonadPlus" "mplus",Value{args=(-1),fixity=Def,priority=9,letBound=True})
(Method "MonadPlus" "mzero",Value{args=(-1),fixity=Def,priority=9,letBound=True})
(TypeClass "Functor",TyCls (Cls ["fmap"]))
(TypeClass "Monad",TyCls (Cls [">>=",">>","return","fail"]))
(TypeClass "MonadPlus",TyCls (Cls ["mzero","mplus"]))
