Module "Maybe" (Just (Exporting (9,13) [(Export (QualIdent Nothing (Ident "isJust" 0))),(Export (QualIdent Nothing (Ident "isNothing" 0))),(Export (QualIdent Nothing (Ident "fromJust" 0))),(Export (QualIdent Nothing (Ident "fromMaybe" 0))),(Export (QualIdent Nothing (Ident "listToMaybe" 0))),(Export (QualIdent Nothing (Ident "maybeToList" 0))),(Export (QualIdent Nothing (Ident "catMaybes" 0))),(Export (QualIdent Nothing (Ident "mapMaybe" 0))),(Export (QualIdent Nothing (Ident ">>-" 0))),(Export (QualIdent Nothing (Ident "sequenceMaybe" 0))),(Export (QualIdent Nothing (Ident "mapMMaybe" 0))),(ExportTypeAll (QualIdent Nothing (Ident "Maybe" 0))),(Export (QualIdent Nothing (Ident "maybe" 0)))])) [(ImportDecl (1,1) "Prelude" False Nothing Nothing) ,(InfixDecl (19,1) InfixL 1 [(Ident ">>-" 0)]) ,(TypeSig (21,1) [(Ident "isJust" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) ,(FunctionDecl (22,1) (Ident "isJust" 0) [(Equation (22,1) (FunLhs (Ident "isJust" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "_" 3))]))]) (SimpleRhs (22,19) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (23,1) (FunLhs (Ident "isJust" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (23,19) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))]) ,(TypeSig (25,1) [(Ident "isNothing" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) ,(FunctionDecl (26,1) (Ident "isNothing" 0) [(Equation (26,1) (FunLhs (Ident "isNothing" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (26,22) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (27,1) (FunLhs (Ident "isNothing" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "_" 10))]))]) (SimpleRhs (27,22) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))]) ,(TypeSig (29,1) [(Ident "fromJust" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "a" 0)))) ,(FunctionDecl (30,1) (Ident "fromJust" 0) [(Equation (30,1) (FunLhs (Ident "fromJust" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "a" 12))]))]) (SimpleRhs (30,21) (Variable (QualIdent Nothing (Ident "a" 12))) [])),(Equation (31,1) (FunLhs (Ident "fromJust" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (31,21) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Maybe.fromJust: Nothing"))) []))]) ,(TypeSig (33,1) [(Ident "fromMaybe" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "a" 0))))) ,(FunctionDecl (34,1) (Ident "fromMaybe" 0) [(Equation (34,1) (FunLhs (Ident "fromMaybe" 0) [(VariablePattern (Ident "d" 16)),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (34,24) (Variable (QualIdent Nothing (Ident "d" 16))) [])),(Equation (35,1) (FunLhs (Ident "fromMaybe" 0) [(VariablePattern (Ident "_" 19)),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "a" 18))]))]) (SimpleRhs (35,24) (Variable (QualIdent Nothing (Ident "a" 18))) []))]) ,(TypeSig (37,1) [(Ident "maybeToList" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0))))) ,(FunctionDecl (38,1) (Ident "maybeToList" 0) [(Equation (38,1) (FunLhs (Ident "maybeToList" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (38,24) (List []) [])),(Equation (39,1) (FunLhs (Ident "maybeToList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "a" 23))]))]) (SimpleRhs (39,24) (List [(Variable (QualIdent Nothing (Ident "a" 23)))]) []))]) ,(TypeSig (41,1) [(Ident "listToMaybe" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]))) ,(FunctionDecl (42,1) (Ident "listToMaybe" 0) [(Equation (42,1) (FunLhs (Ident "listToMaybe" 0) [(ListPattern [])]) (SimpleRhs (42,22) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (43,1) (FunLhs (Ident "listToMaybe" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "a" 27)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 28))))]) (SimpleRhs (43,21) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Variable (QualIdent Nothing (Ident "a" 27)))) []))]) ,(TypeSig (45,1) [(Ident "catMaybes" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))])) (ListType (VariableType (Ident "a" 0))))) ,(FunctionDecl (46,1) (Ident "catMaybes" 0) [(Equation (46,1) (FunLhs (Ident "catMaybes" 0) [(VariablePattern (Ident "ms" 30))]) (SimpleRhs (46,16) (ListCompr (Variable (QualIdent Nothing (Ident "m" 32))) [(StmtBind (ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "m" 32))])) (Variable (QualIdent Nothing (Ident "ms" 30))))]) []))]) ,(TypeSig (48,1) [(Ident "mapMaybe" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "b" 0)))))) ,(FunctionDecl (49,1) (Ident "mapMaybe" 0) [(Equation (49,1) (FunLhs (Ident "mapMaybe" 0) [(VariablePattern (Ident "f" 33))]) (SimpleRhs (49,14) (InfixApply (Variable (QualIdent (Just "Maybe") (Ident "catMaybes" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "f" 33))))) []))]) ,(TypeSig (58,1) [(Ident ">>-" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))])) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))])))) ,(FunctionDecl (59,1) (Ident ">>-" 0) [(Equation (59,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []) (Ident ">>-" 0) (VariablePattern (Ident "_" 36))) (SimpleRhs (59,17) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (60,1) (OpLhs (ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "x" 38))])) (Ident ">>-" 0) (VariablePattern (Ident "f" 38))) (SimpleRhs (60,19) (Apply (Variable (QualIdent Nothing (Ident "f" 38))) (Variable (QualIdent Nothing (Ident "x" 38)))) []))]) ,(TypeSig (63,1) [(Ident "sequenceMaybe" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))])) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ListType (VariableType (Ident "a" 0)))]))) ,(FunctionDecl (64,1) (Ident "sequenceMaybe" 0) [(Equation (64,1) (FunLhs (Ident "sequenceMaybe" 0) [(ListPattern [])]) (SimpleRhs (64,20) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (List [])) [])),(Equation (65,1) (FunLhs (Ident "sequenceMaybe" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 42)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 42))))]) (SimpleRhs (65,24) (InfixApply (Variable (QualIdent Nothing (Ident "c" 42))) (InfixOp (QualIdent (Just "Maybe") (Ident ">>-" 0))) (Lambda [(VariablePattern (Ident "x" 44))] (InfixApply (Apply (Variable (QualIdent (Just "Maybe") (Ident "sequenceMaybe" 0))) (Variable (QualIdent Nothing (Ident "cs" 42)))) (InfixOp (QualIdent (Just "Maybe") (Ident ">>-" 0))) (Lambda [(VariablePattern (Ident "xs" 45))] (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 44))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 45)))))))))) []))]) ,(TypeSig (68,1) [(Ident "mapMMaybe" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ListType (VariableType (Ident "b" 0)))])))) ,(FunctionDecl (69,1) (Ident "mapMMaybe" 0) [(Equation (69,1) (FunLhs (Ident "mapMMaybe" 0) [(VariablePattern (Ident "f" 46))]) (SimpleRhs (69,15) (InfixApply (Variable (QualIdent (Just "Maybe") (Ident "sequenceMaybe" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "f" 46))))) []))]) ]