Module "PrettyFlat" Nothing [(ImportDecl (1,1) "Prelude" False Nothing Nothing) ,(ImportDecl (3,1) "Char" False Nothing Nothing) ,(ImportDecl (4,1) "Maybe" False Nothing Nothing) ,(ImportDecl (5,1) "Pretty" False Nothing Nothing) ,(ImportDecl (6,1) "FlatCurry" False Nothing Nothing) ,(ImportDecl (7,1) "FlatCurryGoodies" False Nothing Nothing) ,(ImportDecl (8,1) "StyledText" False Nothing Nothing) ,(ImportDecl (9,1) "System" False Nothing Nothing) ,(TypeDecl (17,1) (Ident "Precs" 0) [] (ListType (TupleType [(ConstructorType (QualIdent Nothing (Ident "QName" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))) ,(FunctionDecl (11,1) (Ident "prelude" 0) [(Equation (11,1) (FunLhs (Ident "prelude" 0) []) (SimpleRhs (11,11) (Literal (String "Prelude")) []))]) ,(FunctionDecl (13,1) (Ident "arrow" 0) [(Equation (13,1) (FunLhs (Ident "arrow" 0) []) (SimpleRhs (13,9) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Literal (String "->"))))) []))]) ,(FunctionDecl (14,1) (Ident "bar" 0) [(Equation (14,1) (FunLhs (Ident "bar" 0) []) (SimpleRhs (14,7) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '|'))))) []))]) ,(FunctionDecl (15,1) (Ident "dcolon" 0) [(Equation (15,1) (FunLhs (Ident "dcolon" 0) []) (SimpleRhs (15,10) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Literal (String "::"))))) []))]) ,(TypeSig (19,1) [(Ident "precFillEncloseSep" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))))))) ,(FunctionDecl (20,1) (Ident "precFillEncloseSep" 0) [(Equation (20,1) (FunLhs (Ident "precFillEncloseSep" 0) [(VariablePattern (Ident "p1" 10)),(VariablePattern (Ident "p2" 10)),(VariablePattern (Ident "l" 10)),(VariablePattern (Ident "r" 10)),(VariablePattern (Ident "s" 10)),(VariablePattern (Ident "ds" 10))]) (SimpleRhs (21,3) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "pre" 11))) (Variable (QualIdent Nothing (Ident "p1" 10)))) (Variable (QualIdent Nothing (Ident "p2" 10)))) (Variable (QualIdent Nothing (Ident "l" 10)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "pre" 11))) (Variable (QualIdent Nothing (Ident "p1" 10)))) (Variable (QualIdent Nothing (Ident "p2" 10)))) (Variable (QualIdent Nothing (Ident "r" 10)))))) (Variable (QualIdent Nothing (Ident "s" 10)))) (Variable (QualIdent Nothing (Ident "ds" 10)))) [(FunctionDecl (23,3) (Ident "pre" 11) [(Equation (23,3) (FunLhs (Ident "pre" 11) [(VariablePattern (Ident "pO" 12)),(VariablePattern (Ident "pI" 12)),(VariablePattern (Ident "br" 12))]) (GuardedRhs [(CondExpr (24,5) (InfixApply (Variable (QualIdent Nothing (Ident "pO" 12))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "pI" 12)))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0)))),(CondExpr (25,5) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) (Variable (QualIdent Nothing (Ident "br" 12))))] []))])]))]) ,(TypeSig (27,1) [(Ident "isInfixName" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "QName" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) ,(FunctionDecl (28,1) (Ident "isInfixName" 0) [(Equation (28,1) (FunLhs (Ident "isInfixName" 0) [(TuplePattern [(VariablePattern (Ident "_" 15)),(VariablePattern (Ident "n" 14))])]) (SimpleRhs (28,21) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "all" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "elem" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "infixIDs" 0))))) (Variable (QualIdent Nothing (Ident "n" 14)))) []))]) ,(TypeSig (30,1) [(Ident "infixIDs" 0)] (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) ,(FunctionDecl (31,1) (Ident "infixIDs" 0) [(Equation (31,1) (FunLhs (Ident "infixIDs" 0) []) (SimpleRhs (31,13) (Literal (String "~!@#$%^&*+-=<>?./|\\:")) []))]) ,(TypeSig (33,1) [(Ident "isTupleName" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "QName" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) ,(FunctionDecl (34,1) (Ident "isTupleName" 0) [(Equation (34,1) (FunLhs (Ident "isTupleName" 0) [(TuplePattern [(VariablePattern (Ident "mod" 19)),(VariablePattern (Ident "name" 19))])]) (SimpleRhs (34,26) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "mod" 19))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "prelude" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "elem" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "take" 0))) (Literal (Int (Ident "_" 21) 2))) (Variable (QualIdent Nothing (Ident "name" 19)))))) (List [(Literal (String "()")),(Literal (String "(,"))]))) []))]) ,(TypeSig (36,1) [(Ident "showStyledProg" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prog" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) ,(FunctionDecl (37,1) (Ident "showStyledProg" 0) [(Equation (37,1) (FunLhs (Ident "showStyledProg" 0) []) (SimpleRhs (37,18) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "prettyProg" 0))) (Literal (Int (Ident "_" 24) 78))) []))]) ,(TypeSig (39,1) [(Ident "prettyProg" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prog" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))) ,(FunctionDecl (40,1) (Ident "prettyProg" 0) [(Equation (40,1) (FunLhs (Ident "prettyProg" 0) [(VariablePattern (Ident "n" 25))]) (SimpleRhs (40,16) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pretty" 0))) (Variable (QualIdent Nothing (Ident "n" 25)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Variable (QualIdent (Just "PrettyFlat") (Ident "progDoc" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "updProgExps" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "elimApp" 0)))))) []))]) ,(TypeSig (42,1) [(Ident "prettyTypeExpr" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "TypeExpr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))) ,(FunctionDecl (43,1) (Ident "prettyTypeExpr" 0) [(Equation (43,1) (FunLhs (Ident "prettyTypeExpr" 0) [(VariablePattern (Ident "mod" 27))]) (SimpleRhs (43,22) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pretty" 0))) (Literal (Int (Ident "_" 29) 78))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeExprDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 27)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))))) []))]) ,(TypeSig (45,1) [(Ident "prettyTypes" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "TypeDecl" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))) ,(FunctionDecl (46,1) (Ident "prettyTypes" 0) [(Equation (46,1) (FunLhs (Ident "prettyTypes" 0) [(VariablePattern (Ident "mod" 30))]) (SimpleRhs (46,19) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pretty" 0))) (Literal (Int (Ident "_" 32) 78))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typesDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 30))))) []))]) ,(TypeSig (48,1) [(Ident "prettyOps" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "OpDecl" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) ,(FunctionDecl (49,1) (Ident "prettyOps" 0) [(Equation (49,1) (FunLhs (Ident "prettyOps" 0) []) (SimpleRhs (49,13) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pretty" 0))) (Literal (Int (Ident "_" 35) 78))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "opsDoc" 0)))) []))]) ,(TypeSig (51,1) [(Ident "showProg" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prog" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) ,(FunctionDecl (52,1) (Ident "showProg" 0) [(Equation (52,1) (FunLhs (Ident "showProg" 0) []) (SimpleRhs (52,12) (InfixApply (Variable (QualIdent (Just "StyledText") (Ident "plainText" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "showStyledProg" 0)))) []))]) ,(TypeSig (54,1) [(Ident "printStyledProg" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))) ,(FunctionDecl (55,1) (Ident "printStyledProg" 0) [(Equation (55,1) (FunLhs (Ident "printStyledProg" 0) [(VariablePattern (Ident "f" 38))]) (SimpleRhs (55,21) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurry") (Ident "readFlatCurry" 0))) (Variable (QualIdent Nothing (Ident "f" 38)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (InfixApply (Variable (QualIdent (Just "StyledText") (Ident "printStyledText" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "showStyledProg" 0))))) []))]) ,(TypeSig (57,1) [(Ident "mainPrint" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])) ,(FunctionDecl (58,1) (Ident "mainPrint" 0) [(Equation (58,1) (FunLhs (Ident "mainPrint" 0) []) (SimpleRhs (58,13) (InfixApply (Variable (QualIdent (Just "System") (Ident "getArgs" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "mapIO_" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "printProg" 0))))) []))]) ,(TypeSig (60,1) [(Ident "printProg" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))) ,(FunctionDecl (61,1) (Ident "printProg" 0) [(Equation (61,1) (FunLhs (Ident "printProg" 0) [(VariablePattern (Ident "f" 42))]) (SimpleRhs (61,15) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurry") (Ident "readFlatCurryFile" 0))) (Variable (QualIdent Nothing (Ident "f" 42)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "putStrLn" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "showProg" 0))))) []))]) ,(TypeSig (69,1) [(Ident "keyword" 0),(Ident "consname" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (70,1) (Ident "keyword" 0) [(Equation (70,1) (FunLhs (Ident "keyword" 0) []) (SimpleRhs (70,11) (InfixApply (Variable (QualIdent (Just "StyledText") (Ident "magentaDoc" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Pretty") (Ident "text" 0)))) []))]) ,(FunctionDecl (71,1) (Ident "consname" 0) [(Equation (71,1) (FunLhs (Ident "consname" 0) []) (SimpleRhs (71,12) (InfixApply (Variable (QualIdent (Just "StyledText") (Ident "greenDoc" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Pretty") (Ident "text" 0)))) []))]) ,(TypeSig (73,1) [(Ident "operator" 0),(Ident "literal" 0),(Ident "marked" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (74,1) (Ident "operator" 0) [(Equation (74,1) (FunLhs (Ident "operator" 0) []) (SimpleRhs (74,12) (Variable (QualIdent (Just "StyledText") (Ident "blueDoc" 0))) []))]) ,(FunctionDecl (75,1) (Ident "literal" 0) [(Equation (75,1) (FunLhs (Ident "literal" 0) []) (SimpleRhs (75,11) (Variable (QualIdent (Just "StyledText") (Ident "cyanDoc" 0))) []))]) ,(FunctionDecl (76,1) (Ident "marked" 0) [(Equation (76,1) (FunLhs (Ident "marked" 0) []) (SimpleRhs (76,10) (InfixApply (Variable (QualIdent (Just "StyledText") (Ident "bgYellowDoc" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "StyledText") (Ident "boldDoc" 0)))) []))]) ,(TypeSig (78,1) [(Ident "block" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (79,1) (Ident "block" 0) [(Equation (79,1) (FunLhs (Ident "block" 0) []) (SimpleRhs (79,9) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "hang" 0))) (Literal (Int (Ident "_" 56) 1)))) []))]) ,(TypeSig (81,1) [(Ident "def" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (82,1) (Ident "def" 0) [(Equation (82,1) (FunLhs (Ident "def" 0) [(VariablePattern (Ident "name" 57)),(VariablePattern (Ident "params" 57)),(VariablePattern (Ident "body" 57))]) (SimpleRhs (82,24) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "block" 0))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "name" 57))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "paramDoc" 58)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<$>" 0))) (Variable (QualIdent Nothing (Ident "body" 57)))))) [(PatternDecl (84,3) (VariablePattern (Ident "paramDoc" 58)) (SimpleRhs (84,14) (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "params" 57)))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0))) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "space" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillSep" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "varDoc" 0)))) (Variable (QualIdent Nothing (Ident "params" 57)))))))))) []))]))]) ,(TypeSig (92,1) [(Ident "app" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))) ,(FunctionDecl (93,1) (Ident "app" 0) [(Equation (93,1) (FunLhs (Ident "app" 0) [(VariablePattern (Ident "d" 60)),(VariablePattern (Ident "ds" 60))]) (SimpleRhs (93,12) (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "ds" 60)))) (Variable (QualIdent Nothing (Ident "d" 60))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "block" 0))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "d" 60))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ds" 60))))))))) []))]) ,(TypeSig (98,1) [(Ident "layout" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (99,1) (Ident "layout" 0) [(Equation (99,1) (FunLhs (Ident "layout" 0) []) (SimpleRhs (99,10) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "linesep" 0))) (Literal (String "; ")))))))) []))]) ,(TypeSig (101,1) [(Ident "qname" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "QName" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))) ,(FunctionDecl (102,1) (Ident "qname" 0) [(Equation (102,1) (FunLhs (Ident "qname" 0) [(VariablePattern (Ident "prog" 64)),(AsPattern (Ident "mn" 64) (TuplePattern [(VariablePattern (Ident "mod" 64)),(VariablePattern (Ident "name" 64))]))]) (GuardedRhs [(CondExpr (103,3) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "mn" 64))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Variable (QualIdent (Just "PrettyFlat") (Ident "prelude" 0))),(Literal (String "[]"))])) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "isTupleName" 0))) (Variable (QualIdent Nothing (Ident "mn" 64))))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Variable (QualIdent Nothing (Ident "name" 64))))))),(CondExpr (104,3) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "isInfixName" 0))) (Variable (QualIdent Nothing (Ident "mn" 64)))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "mod" 64))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "prog" 64)))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "parens" 0))) (Paren (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Variable (QualIdent Nothing (Ident "name" 64)))))))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "parens" 0))) (Paren (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Paren (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "consname" 0))) (Variable (QualIdent Nothing (Ident "mod" 64)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "dot" 0)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "txt" 65))) (Variable (QualIdent Nothing (Ident "name" 64)))))))))))),(CondExpr (108,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "mod" 64))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "prog" 64)))) (Apply (Variable (QualIdent Nothing (Ident "txt" 65))) (Paren (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "correctName" 0))) (Variable (QualIdent Nothing (Ident "name" 64)))))) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "consname" 0))) (Variable (QualIdent Nothing (Ident "mod" 64)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "dot" 0)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "txt" 65))) (Variable (QualIdent Nothing (Ident "name" 64))))))))] [(FunctionDecl (115,3) (Ident "txt" 65) [(Equation (115,3) (FunLhs (Ident "txt" 65) [(ParenPattern (InfixPattern (VariablePattern (Ident "n" 66)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ame" 66))))]) (SimpleRhs (115,17) (IfThenElse (Apply (Variable (QualIdent (Just "Char") (Ident "isUpper" 0))) (Variable (QualIdent Nothing (Ident "n" 66)))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "consname" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 66))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ame" 66)))))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 66))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ame" 66))))))) []))])]))]) ,(TypeSig (117,1) [(Ident "correctName" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) ,(FunctionDecl (118,1) (Ident "correctName" 0) [(Equation (118,1) (FunLhs (Ident "correctName" 0) [(VariablePattern (Ident "name" 68))]) (SimpleRhs (119,3) (Let [(PatternDecl (119,7) (VariablePattern (Ident "name'" 70)) (SimpleRhs (119,15) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "flip" 0))) (Variable (QualIdent (Just "Prelude") (Ident "elem" 0)))) (List [(Literal (Char '#')),(Literal (Char '.'))]))))) (Variable (QualIdent Nothing (Ident "name" 68)))) []))] (Case (Variable (QualIdent Nothing (Ident "name'" 70))) [(Alt (122,8) (ParenPattern (InfixPattern (LiteralPattern (Char '_')) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 72)))) (SimpleRhs (122,20) (Variable (QualIdent Nothing (Ident "xs" 72))) [])),(Alt (123,8) (VariablePattern (Ident "_" 75)) (SimpleRhs (123,20) (Variable (QualIdent Nothing (Ident "name'" 70))) []))])) []))]) ,(FunctionDecl (125,1) (Ident "<$>>" 0) [(Equation (125,1) (OpLhs (VariablePattern (Ident "d1" 77)) (Ident "<$>>" 0) (VariablePattern (Ident "d2" 77))) (SimpleRhs (125,14) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "d1" 77))) (InfixOp (QualIdent (Just "Pretty") (Ident "<$>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "line" 0)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "d2" 77)))) []))]) ,(TypeSig (127,1) [(Ident "progDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prog" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (128,1) (Ident "progDoc" 0) [(Equation (128,1) (FunLhs (Ident "progDoc" 0) [(AsPattern (Ident "prog" 79) (ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Prog" 0)) [(VariablePattern (Ident "name" 79)),(VariablePattern (Ident "imps" 79)),(VariablePattern (Ident "types" 79)),(VariablePattern (Ident "funcs" 79)),(VariablePattern (Ident "ops" 79))])))]) (SimpleRhs (129,5) (InfixApply (InfixApply (InfixApply (InfixApply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "moduleHeaderDoc" 0))) (Variable (QualIdent Nothing (Ident "name" 79)))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "exportedNames" 0))) (Variable (QualIdent Nothing (Ident "name" 79)))) (Variable (QualIdent Nothing (Ident "prog" 79)))))) (InfixOp (QualIdent (Just "PrettyFlat") (Ident "<$>>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "impsDoc" 0))) (Variable (QualIdent Nothing (Ident "imps" 79))))) (InfixOp (QualIdent (Just "PrettyFlat") (Ident "<$>>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "opsDoc" 0))) (Variable (QualIdent Nothing (Ident "ops" 79))))) (InfixOp (QualIdent (Just "PrettyFlat") (Ident "<$>>" 0))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typesDoc" 0))) (Variable (QualIdent Nothing (Ident "name" 79)))) (Variable (QualIdent Nothing (Ident "types" 79))))) (InfixOp (QualIdent (Just "PrettyFlat") (Ident "<$>>" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "funcsDoc" 0))) (Paren (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "precs" 0))) (Variable (QualIdent Nothing (Ident "ops" 79)))))) (Variable (QualIdent Nothing (Ident "name" 79)))) (Variable (QualIdent Nothing (Ident "funcs" 79))))) []))]) ,(TypeSig (134,1) [(Ident "precs" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "OpDecl" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Precs" 0)) []))) ,(FunctionDecl (135,1) (Ident "precs" 0) [(Equation (135,1) (FunLhs (Ident "precs" 0) []) (SimpleRhs (135,9) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Op" 0)) [(VariablePattern (Ident "name" 83)),(VariablePattern (Ident "_" 84)),(VariablePattern (Ident "i" 83))]))] (Tuple [(Variable (QualIdent Nothing (Ident "name" 83))),(Variable (QualIdent Nothing (Ident "i" 83)))])))) []))]) ,(TypeSig (137,1) [(Ident "exportedNames" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prog" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (138,1) (Ident "exportedNames" 0) [(Equation (138,1) (FunLhs (Ident "exportedNames" 0) [(VariablePattern (Ident "mod" 85)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Prog" 0)) [(VariablePattern (Ident "_" 86)),(VariablePattern (Ident "_" 87)),(VariablePattern (Ident "types" 85)),(VariablePattern (Ident "funcs" 85)),(VariablePattern (Ident "_" 88))]))]) (SimpleRhs (139,5) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "typeExpDoc" 89)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (LeftSection (Constructor (QualIdent (Just "FlatCurry") (Ident "Public" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "typeVisibility" 0)))))) (Variable (QualIdent Nothing (Ident "types" 85)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 85)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "funcName" 0)))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (LeftSection (Constructor (QualIdent (Just "FlatCurry") (Ident "Public" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "funcVisibility" 0)))))) (Variable (QualIdent Nothing (Ident "funcs" 85))))))) [(FunctionDecl (142,3) (Ident "typeExpDoc" 89) [(Equation (142,3) (FunLhs (Ident "typeExpDoc" 89) [(VariablePattern (Ident "tdecl" 90))]) (SimpleRhs (143,5) (Let [(PatternDecl (143,9) (VariablePattern (Ident "ecs" 92)) (SimpleRhs (143,15) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (LeftSection (Constructor (QualIdent (Just "FlatCurry") (Ident "Public" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "consVisibility" 0)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "trType" 0))) (Paren (Lambda [(VariablePattern (Ident "_" 95)),(VariablePattern (Ident "_" 96)),(VariablePattern (Ident "_" 97)),(VariablePattern (Ident "cs" 94))] (Variable (QualIdent Nothing (Ident "cs" 94)))))) (Paren (Lambda [(VariablePattern (Ident "_" 99)),(VariablePattern (Ident "_" 100)),(VariablePattern (Ident "_" 101)),(VariablePattern (Ident "_" 102))] (List [])))) (Variable (QualIdent Nothing (Ident "tdecl" 90)))))) []))] (InfixApply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 85)))) (Paren (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "typeName" 0))) (Variable (QualIdent Nothing (Ident "tdecl" 90)))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "ecs" 92)))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Literal (String "(..)")))))) []))])]))]) ,(TypeSig (147,1) [(Ident "moduleHeaderDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))) ,(FunctionDecl (148,1) (Ident "moduleHeaderDoc" 0) [(Equation (148,1) (FunLhs (Ident "moduleHeaderDoc" 0) [(VariablePattern (Ident "name" 103)),(VariablePattern (Ident "exports" 103))]) (SimpleRhs (149,5) (InfixApply (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "module"))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "consname" 0))) (Variable (QualIdent Nothing (Ident "name" 103))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "exportsDoc" 0))) (Variable (QualIdent Nothing (Ident "exports" 103))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "where")))) []))]) ,(TypeSig (152,1) [(Ident "exportsDoc" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (153,1) (Ident "exportsDoc" 0) [(Equation (153,1) (FunLhs (Ident "exportsDoc" 0) [(VariablePattern (Ident "xs" 105))]) (SimpleRhs (154,5) (Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "nest" 0))) (Literal (Int (Ident "_" 107) 1))) (Paren (InfixApply (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "lparen" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<$>" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillSep" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "punctuate" 0))) (Variable (QualIdent (Just "Pretty") (Ident "comma" 0)))) (Variable (QualIdent Nothing (Ident "xs" 105))))))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<$>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "rparen" 0)))))))) []))]) ,(TypeSig (156,1) [(Ident "impsDoc" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (157,1) (Ident "impsDoc" 0) [(Equation (157,1) (FunLhs (Ident "impsDoc" 0) [(VariablePattern (Ident "imps" 108))]) (SimpleRhs (157,16) (Apply (Variable (QualIdent (Just "Pretty") (Ident "vcat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (InfixApply (LeftSection (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "import"))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "consname" 0)))))) (Variable (QualIdent Nothing (Ident "imps" 108)))))) []))]) ,(TypeSig (159,1) [(Ident "opsDoc" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "OpDecl" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (160,1) (Ident "opsDoc" 0) [(Equation (160,1) (FunLhs (Ident "opsDoc" 0) [(VariablePattern (Ident "ops" 110))]) (SimpleRhs (160,14) (Apply (Variable (QualIdent (Just "Pretty") (Ident "vcat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "opDoc" 0)))) (Variable (QualIdent Nothing (Ident "ops" 110)))))) []))]) ,(TypeSig (162,1) [(Ident "opDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "OpDecl" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (163,1) (Ident "opDoc" 0) [(Equation (163,1) (FunLhs (Ident "opDoc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Op" 0)) [(AsPattern (Ident "n" 112) (TuplePattern [(VariablePattern (Ident "_" 113)),(VariablePattern (Ident "name" 112))])),(VariablePattern (Ident "fix" 112)),(VariablePattern (Ident "prec" 112))]))]) (SimpleRhs (164,5) (InfixApply (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "infix"))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Apply (Variable (QualIdent Nothing (Ident "fixDoc" 114))) (Variable (QualIdent Nothing (Ident "fix" 112))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "int" 0))) (Variable (QualIdent Nothing (Ident "prec" 112))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Variable (QualIdent Nothing (Ident "infname" 114))))))) [(PatternDecl (166,3) (VariablePattern (Ident "infname" 114)) (SimpleRhs (166,13) (IfThenElse (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "isInfixName" 0))) (Variable (QualIdent Nothing (Ident "n" 112)))) (Variable (QualIdent Nothing (Ident "name" 112))) (InfixApply (Literal (Char '`')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 112))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "`"))))) [])),(FunctionDecl (167,3) (Ident "fixDoc" 114) [(Equation (167,3) (FunLhs (Ident "fixDoc" 114) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "InfixOp" 0)) [])]) (SimpleRhs (167,20) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0))) [])),(Equation (168,3) (FunLhs (Ident "fixDoc" 114) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "InfixlOp" 0)) [])]) (SimpleRhs (168,21) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "l"))) [])),(Equation (169,3) (FunLhs (Ident "fixDoc" 114) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "InfixrOp" 0)) [])]) (SimpleRhs (169,21) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "r"))) []))])]))]) ,(TypeSig (171,1) [(Ident "typesDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "TypeDecl" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))) ,(FunctionDecl (172,1) (Ident "typesDoc" 0) [(Equation (172,1) (FunLhs (Ident "typesDoc" 0) [(VariablePattern (Ident "mod" 122))]) (SimpleRhs (172,16) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "vcat" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 122))))))) []))]) ,(TypeSig (174,1) [(Ident "typeDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "TypeDecl" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))) ,(FunctionDecl (175,1) (Ident "typeDoc" 0) [(Equation (175,1) (FunLhs (Ident "typeDoc" 0) [(VariablePattern (Ident "mod" 124)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Type" 0)) [(VariablePattern (Ident "name" 124)),(VariablePattern (Ident "_" 125)),(VariablePattern (Ident "params" 124)),(VariablePattern (Ident "cs" 124))]))]) (SimpleRhs (176,5) (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "def" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "data"))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 124)))) (Variable (QualIdent Nothing (Ident "name" 124))))))) (Variable (QualIdent Nothing (Ident "params" 124)))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "consDeclsDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 124)))) (Variable (QualIdent Nothing (Ident "cs" 124)))))) [])),(Equation (178,1) (FunLhs (Ident "typeDoc" 0) [(VariablePattern (Ident "mod" 127)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TypeSyn" 0)) [(VariablePattern (Ident "name" 127)),(VariablePattern (Ident "_" 128)),(VariablePattern (Ident "params" 127)),(VariablePattern (Ident "syn" 127))]))]) (SimpleRhs (179,5) (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "def" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "type"))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 127)))) (Variable (QualIdent Nothing (Ident "name" 127))))))) (Variable (QualIdent Nothing (Ident "params" 127)))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Variable (QualIdent (Just "Pretty") (Ident "equals" 0)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeExprDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 127)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "syn" 127))))))) []))]) ,(TypeSig (182,1) [(Ident "varDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (183,1) (Ident "varDoc" 0) [(Equation (183,1) (FunLhs (Ident "varDoc" 0) []) (SimpleRhs (183,10) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (LeftSection (Literal (Char 'x')) (InfixConstr (QualIdent Nothing (Ident ":" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0))))) []))]) ,(TypeSig (185,1) [(Ident "tvarDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (186,1) (Ident "tvarDoc" 0) [(Equation (186,1) (FunLhs (Ident "tvarDoc" 0) [(VariablePattern (Ident "i" 132))]) (GuardedRhs [(CondExpr (187,3) (InfixApply (Variable (QualIdent Nothing (Ident "i" 132))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 134) 25))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Paren (InfixApply (Literal (String "x")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "i" 132)))))))),(CondExpr (188,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (List [(Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (InfixApply (Literal (Int (Ident "_" 135) 97)) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "i" 132))))))])))] []))]) ,(TypeSig (190,1) [(Ident "consDeclsDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "ConsDecl" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))) ,(FunctionDecl (191,1) (Ident "consDeclsDoc" 0) [(Equation (191,1) (FunLhs (Ident "consDeclsDoc" 0) [(VariablePattern (Ident "mod" 136))]) (SimpleRhs (192,5) (InfixApply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Variable (QualIdent (Just "Pretty") (Ident "equals" 0)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0)))) (Paren (InfixApply (Variable (QualIdent (Just "PrettyFlat") (Ident "bar" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (InfixApply (RightSection (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "consDeclDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 136)))))))) []))]) ,(TypeSig (196,1) [(Ident "consDeclDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ConsDecl" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))) ,(FunctionDecl (197,1) (Ident "consDeclDoc" 0) [(Equation (197,1) (FunLhs (Ident "consDeclDoc" 0) [(VariablePattern (Ident "mod" 138)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Cons" 0)) [(VariablePattern (Ident "name" 138)),(VariablePattern (Ident "_" 139)),(VariablePattern (Ident "_" 140)),(VariablePattern (Ident "args" 138))]))]) (SimpleRhs (198,5) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "app" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 138)))) (Variable (QualIdent Nothing (Ident "name" 138)))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeExprDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 138)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))))) (Variable (QualIdent Nothing (Ident "args" 138)))))) []))]) ,(TypeSig (200,1) [(Ident "typeExprDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "TypeExpr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (201,1) (Ident "typeExprDoc" 0) [(Equation (201,1) (FunLhs (Ident "typeExprDoc" 0) [(VariablePattern (Ident "_" 143)),(VariablePattern (Ident "_" 144)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TVar" 0)) [(VariablePattern (Ident "n" 142))]))]) (SimpleRhs (201,28) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "tvarDoc" 0))) (Variable (QualIdent Nothing (Ident "n" 142)))) [])),(Equation (203,1) (FunLhs (Ident "typeExprDoc" 0) [(VariablePattern (Ident "mod" 146)),(VariablePattern (Ident "br" 146)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TCons" 0)) [(VariablePattern (Ident "name" 146)),(VariablePattern (Ident "args" 146))]))]) (GuardedRhs [(CondExpr (204,3) (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "args" 146)))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 146)))) (Variable (QualIdent Nothing (Ident "name" 146))))),(CondExpr (205,3) (InfixApply (Variable (QualIdent Nothing (Ident "name" 146))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Variable (QualIdent (Just "PrettyFlat") (Ident "prelude" 0))),(Literal (String "[]"))])) (Apply (Variable (QualIdent (Just "Pretty") (Ident "brackets" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeExprDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 146)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "args" 146))))))))),(CondExpr (206,3) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "isTupleName" 0))) (Variable (QualIdent Nothing (Ident "name" 146)))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "tupled" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeExprDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 146)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))))) (Variable (QualIdent Nothing (Ident "args" 146))))))),(CondExpr (207,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "par" 0))) (Variable (QualIdent Nothing (Ident "br" 146)))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "app" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 146)))) (Variable (QualIdent Nothing (Ident "name" 146)))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeExprDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 146)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))))) (Variable (QualIdent Nothing (Ident "args" 146))))))))] [])),(Equation (210,1) (FunLhs (Ident "typeExprDoc" 0) [(VariablePattern (Ident "mod" 148)),(VariablePattern (Ident "br" 148)),(AsPattern (Ident "typ" 148) (ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "FuncType" 0)) [(VariablePattern (Ident "_" 149)),(VariablePattern (Ident "_" 150))])))]) (SimpleRhs (211,5) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "par" 0))) (Variable (QualIdent Nothing (Ident "br" 148)))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0)))) (Paren (InfixApply (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "space" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "arrow" 0)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))))) (Paren (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeExprDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 148)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))))) (Paren (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "argTypes" 0))) (Variable (QualIdent Nothing (Ident "typ" 148)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (List [(Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeExprDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 148)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "resultType" 0))) (Variable (QualIdent Nothing (Ident "typ" 148))))))]))))) []))]) ,(FunctionDecl (216,1) (Ident "par" 0) [(Equation (216,1) (FunLhs (Ident "par" 0) [(VariablePattern (Ident "br" 152))]) (SimpleRhs (216,10) (IfThenElse (Variable (QualIdent Nothing (Ident "br" 152))) (Variable (QualIdent (Just "Pretty") (Ident "parens" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) []))]) ,(TypeSig (218,1) [(Ident "funcsDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Precs" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "FuncDecl" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (219,1) (Ident "funcsDoc" 0) [(Equation (219,1) (FunLhs (Ident "funcsDoc" 0) [(VariablePattern (Ident "pr" 154)),(VariablePattern (Ident "mod" 154)),(VariablePattern (Ident "funcs" 154))]) (SimpleRhs (219,25) (Apply (Variable (QualIdent (Just "Pretty") (Ident "vcat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "punctuate" 0))) (Variable (QualIdent (Just "Pretty") (Ident "line" 0)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "funcDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 154)))) (Variable (QualIdent Nothing (Ident "mod" 154)))))) (Variable (QualIdent Nothing (Ident "funcs" 154)))))))) []))]) ,(TypeSig (221,1) [(Ident "funcDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Precs" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FuncDecl" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (222,1) (Ident "funcDoc" 0) [(Equation (222,1) (FunLhs (Ident "funcDoc" 0) [(VariablePattern (Ident "pr" 156)),(VariablePattern (Ident "mod" 156)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Func" 0)) [(VariablePattern (Ident "name" 156)),(VariablePattern (Ident "_" 157)),(VariablePattern (Ident "_" 158)),(VariablePattern (Ident "typ" 156)),(VariablePattern (Ident "rule" 156))]))]) (SimpleRhs (223,5) (InfixApply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "funcTypeDeclDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 156)))) (Variable (QualIdent Nothing (Ident "name" 156)))) (Variable (QualIdent Nothing (Ident "typ" 156)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<$>" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "ruleDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 156)))) (Variable (QualIdent Nothing (Ident "mod" 156)))) (Variable (QualIdent Nothing (Ident "name" 156)))) (Variable (QualIdent Nothing (Ident "rule" 156))))) []))]) ,(TypeSig (226,1) [(Ident "funcTypeDeclDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "QName" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "TypeExpr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (227,1) (Ident "funcTypeDeclDoc" 0) [(Equation (227,1) (FunLhs (Ident "funcTypeDeclDoc" 0) [(VariablePattern (Ident "mod" 160)),(VariablePattern (Ident "name" 160)),(VariablePattern (Ident "typ" 160))]) (SimpleRhs (228,5) (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "def" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 160)))) (Variable (QualIdent Nothing (Ident "name" 160)))))) (List [])) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "funcTypeDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 160)))) (Paren (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "argTypes" 0))) (Variable (QualIdent Nothing (Ident "typ" 160)))))) (Paren (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "resultType" 0))) (Variable (QualIdent Nothing (Ident "typ" 160)))))))) []))]) ,(TypeSig (230,1) [(Ident "funcTypeDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "TypeExpr" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "TypeExpr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (231,1) (Ident "funcTypeDoc" 0) [(Equation (231,1) (FunLhs (Ident "funcTypeDoc" 0) [(VariablePattern (Ident "mod" 162)),(VariablePattern (Ident "args" 162)),(VariablePattern (Ident "res" 162))]) (SimpleRhs (232,5) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Paren (InfixApply (Variable (QualIdent (Just "PrettyFlat") (Ident "dcolon" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0)))) (Paren (InfixApply (Variable (QualIdent (Just "PrettyFlat") (Ident "arrow" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (InfixApply (RightSection (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "typeExprDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 162)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 162))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (List [(Variable (QualIdent Nothing (Ident "res" 162)))])))))) []))]) ,(TypeSig (236,1) [(Ident "ruleDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Precs" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "QName" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Rule" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))))) ,(FunctionDecl (237,1) (Ident "ruleDoc" 0) [(Equation (237,1) (FunLhs (Ident "ruleDoc" 0) [(VariablePattern (Ident "pr" 164)),(VariablePattern (Ident "mod" 164)),(VariablePattern (Ident "name" 164)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Rule" 0)) [(VariablePattern (Ident "args" 164)),(VariablePattern (Ident "body" 164))]))]) (SimpleRhs (238,5) (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "def" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 164)))) (Variable (QualIdent Nothing (Ident "name" 164)))))) (Variable (QualIdent Nothing (Ident "args" 164)))) (Paren (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "equals" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 164)))) (Literal (Int (Ident "_" 166) 0))) (Variable (QualIdent Nothing (Ident "mod" 164)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "body" 164))))))))) [])),(Equation (240,1) (FunLhs (Ident "ruleDoc" 0) [(VariablePattern (Ident "_" 168)),(VariablePattern (Ident "mod" 167)),(VariablePattern (Ident "name" 167)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "External" 0)) [(VariablePattern (Ident "_" 169))]))]) (SimpleRhs (241,5) (InfixApply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 167)))) (Variable (QualIdent Nothing (Ident "name" 167)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "external")))) []))]) ,(TypeSig (243,1) [(Ident "expDoc" 0),(Ident "expDoc2" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Precs" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))))) ,(FunctionDecl (244,1) (Ident "expDoc" 0) [(Equation (244,1) (FunLhs (Ident "expDoc" 0) [(VariablePattern (Ident "pr" 171)),(VariablePattern (Ident "_" 172)),(VariablePattern (Ident "mod" 171)),(VariablePattern (Ident "br" 171)),(VariablePattern (Ident "exp" 171))]) (SimpleRhs (245,3) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc2" 0))) (Variable (QualIdent Nothing (Ident "pr" 171)))) (Literal (Int (Ident "_" 174) 0))) (Variable (QualIdent Nothing (Ident "mod" 171)))) (Variable (QualIdent Nothing (Ident "br" 171)))) (Variable (QualIdent Nothing (Ident "exp" 171)))))) (Paren (Lambda [(VariablePattern (Ident "l" 175))] (Apply (Variable (QualIdent (Just "Pretty") (Ident "list" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 171)))) (Literal (Int (Ident "_" 176) 0))) (Variable (QualIdent Nothing (Ident "mod" 171)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))))) (Variable (QualIdent Nothing (Ident "l" 175))))))))) (Paren (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "toList" 0))) (Variable (QualIdent Nothing (Ident "exp" 171)))))))) (Paren (Lambda [(VariablePattern (Ident "s" 177))] (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "s" 177)))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "consname" 0))) (Literal (String "[]"))) (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "literal" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "dquotes" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Variable (QualIdent Nothing (Ident "s" 177)))))))))))) (Paren (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "toString" 0))) (Variable (QualIdent Nothing (Ident "exp" 171)))))) []))]) ,(FunctionDecl (251,1) (Ident "expDoc2" 0) [(Equation (251,1) (FunLhs (Ident "expDoc2" 0) [(VariablePattern (Ident "_" 179)),(VariablePattern (Ident "_" 180)),(VariablePattern (Ident "_" 181)),(VariablePattern (Ident "_" 182)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Var" 0)) [(VariablePattern (Ident "n" 178))]))]) (SimpleRhs (251,27) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "varDoc" 0))) (Variable (QualIdent Nothing (Ident "n" 178)))) [])),(Equation (252,1) (FunLhs (Ident "expDoc2" 0) [(VariablePattern (Ident "_" 185)),(VariablePattern (Ident "_" 186)),(VariablePattern (Ident "_" 187)),(VariablePattern (Ident "_" 188)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Lit" 0)) [(VariablePattern (Ident "l" 184))]))]) (SimpleRhs (252,27) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "litDoc" 0))) (Variable (QualIdent Nothing (Ident "l" 184)))) [])),(Equation (254,1) (FunLhs (Ident "expDoc2" 0) [(VariablePattern (Ident "pr" 190)),(VariablePattern (Ident "p" 190)),(VariablePattern (Ident "mod" 190)),(VariablePattern (Ident "br" 190)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "ct" 190)),(VariablePattern (Ident "name" 190)),(VariablePattern (Ident "args" 190))]))]) (GuardedRhs [(CondExpr (255,3) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "ct" 190))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "FlatCurry") (Ident "FuncCall" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 190))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Variable (QualIdent (Just "PrettyFlat") (Ident "prelude" 0))),(Literal (String "apply"))]))) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "par" 0))) (Variable (QualIdent Nothing (Ident "br" 190)))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "app" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 190)))) (Literal (Int (Ident "_" 199) 0))) (Variable (QualIdent Nothing (Ident "mod" 190)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 190))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 200) 0))))))) (List [(Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 190)))) (Literal (Int (Ident "_" 201) 0))) (Variable (QualIdent Nothing (Ident "mod" 190)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 190))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 202) 1)))))])))),(CondExpr (258,3) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "ct" 190))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "FlatCurry") (Ident "ConsCall" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "isTupleName" 0))) (Variable (QualIdent Nothing (Ident "name" 190))))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "tupled" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 190)))) (Literal (Int (Ident "_" 203) 0))) (Variable (QualIdent Nothing (Ident "mod" 190)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))))) (Variable (QualIdent Nothing (Ident "args" 190))))))),(CondExpr (260,3) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "isInfixName" 0))) (Variable (QualIdent Nothing (Ident "name" 190)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "args" 190)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 204) 2)))) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "precFillEncloseSep" 0))) (Variable (QualIdent Nothing (Ident "pOp" 191)))) (Variable (QualIdent Nothing (Ident "p" 190)))) (Variable (QualIdent Nothing (Ident "lbr" 191)))) (Variable (QualIdent Nothing (Ident "rbr" 191)))) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0)))) (List [(Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 190)))) (Variable (QualIdent Nothing (Ident "pOp" 191)))) (Variable (QualIdent Nothing (Ident "mod" 190)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 190))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 205) 0))))),(InfixApply (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "space" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (Variable (QualIdent Nothing (Ident "name" 190))))))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))),(Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 190)))) (Variable (QualIdent Nothing (Ident "pOp" 191)))) (Variable (QualIdent Nothing (Ident "mod" 190)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 190))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 206) 1)))))])))),(CondExpr (267,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "par" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "args" 190)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Variable (QualIdent Nothing (Ident "br" 190)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "app" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 190)))) (Variable (QualIdent Nothing (Ident "name" 190)))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 190)))) (Literal (Int (Ident "_" 207) 0))) (Variable (QualIdent Nothing (Ident "mod" 190)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))))) (Variable (QualIdent Nothing (Ident "args" 190))))))))] [(PatternDecl (271,3) (TuplePattern [(VariablePattern (Ident "lbr" 191)),(VariablePattern (Ident "rbr" 191))]) (SimpleRhs (271,15) (IfThenElse (Variable (QualIdent Nothing (Ident "br" 190))) (Tuple [(Variable (QualIdent (Just "Pretty") (Ident "lparen" 0))),(Variable (QualIdent (Just "Pretty") (Ident "rparen" 0)))]) (Tuple [(Variable (QualIdent (Just "Pretty") (Ident "empty" 0))),(Variable (QualIdent (Just "Pretty") (Ident "empty" 0)))])) [])),(PatternDecl (272,3) (VariablePattern (Ident "pOp" 191)) (SimpleRhs (272,9) (Case (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "lookup" 0))) (Variable (QualIdent Nothing (Ident "name" 190)))) (Variable (QualIdent Nothing (Ident "pr" 190)))) [(Alt (273,14) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "pr" 194))]) (SimpleRhs (273,25) (Variable (QualIdent Nothing (Ident "pr" 194))) [])),(Alt (274,14) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []) (SimpleRhs (274,25) (Literal (Int (Ident "_" 198) 0)) []))]) []))])),(Equation (276,1) (FunLhs (Ident "expDoc2" 0) [(VariablePattern (Ident "pr" 208)),(VariablePattern (Ident "_" 209)),(VariablePattern (Ident "mod" 208)),(VariablePattern (Ident "br" 208)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Let" 0)) [(VariablePattern (Ident "bs" 208)),(VariablePattern (Ident "e" 208))]))]) (SimpleRhs (277,5) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "par" 0))) (Variable (QualIdent Nothing (Ident "br" 208)))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "hang" 0))) (Literal (Int (Ident "_" 211) 1))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "let"))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "letBindsDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 208)))) (Variable (QualIdent Nothing (Ident "mod" 208)))) (Variable (QualIdent Nothing (Ident "bs" 208))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<$>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "in")))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 208)))) (Literal (Int (Ident "_" 212) 0))) (Variable (QualIdent Nothing (Ident "mod" 208)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "e" 208))))))) [])),(Equation (281,1) (FunLhs (Ident "expDoc2" 0) [(VariablePattern (Ident "pr" 213)),(VariablePattern (Ident "_" 214)),(VariablePattern (Ident "mod" 213)),(VariablePattern (Ident "br" 213)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Free" 0)) [(VariablePattern (Ident "vs" 213)),(VariablePattern (Ident "e" 213))]))]) (SimpleRhs (285,7) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "par" 0))) (Variable (QualIdent Nothing (Ident "br" 213)))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "hang" 0))) (Literal (Int (Ident "_" 216) 1))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (InfixApply (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "let"))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillSep" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "punctuate" 0))) (Variable (QualIdent (Just "Pretty") (Ident "comma" 0)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "varDoc" 0)))) (Variable (QualIdent Nothing (Ident "vs" 213))))))))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "free")))) (InfixOp (QualIdent (Just "Pretty") (Ident "<$>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "in")))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 213)))) (Literal (Int (Ident "_" 217) 0))) (Variable (QualIdent Nothing (Ident "mod" 213)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "e" 213))))))) [])),(Equation (289,1) (FunLhs (Ident "expDoc2" 0) [(VariablePattern (Ident "pr" 218)),(VariablePattern (Ident "_" 219)),(VariablePattern (Ident "mod" 218)),(VariablePattern (Ident "br" 218)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Or" 0)) [(VariablePattern (Ident "e1" 218)),(VariablePattern (Ident "e2" 218))]))]) (SimpleRhs (290,5) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 218)))) (Literal (Int (Ident "_" 221) 0))) (Variable (QualIdent Nothing (Ident "mod" 218)))) (Variable (QualIdent Nothing (Ident "br" 218)))) (Paren (Apply (Apply (Apply (Constructor (QualIdent (Just "FlatCurry") (Ident "Comb" 0))) (Constructor (QualIdent (Just "FlatCurry") (Ident "FuncCall" 0)))) (Tuple [(Variable (QualIdent (Just "PrettyFlat") (Ident "prelude" 0))),(Literal (String "?"))])) (List [(Variable (QualIdent Nothing (Ident "e1" 218))),(Variable (QualIdent Nothing (Ident "e2" 218)))])))) [])),(Equation (292,1) (FunLhs (Ident "expDoc2" 0) [(VariablePattern (Ident "pr" 222)),(VariablePattern (Ident "_" 223)),(VariablePattern (Ident "mod" 222)),(VariablePattern (Ident "br" 222)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Case" 0)) [(VariablePattern (Ident "ct" 222)),(VariablePattern (Ident "e" 222)),(VariablePattern (Ident "bs" 222))]))]) (SimpleRhs (293,5) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "par" 0))) (Variable (QualIdent Nothing (Ident "br" 222)))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "hang" 0))) (Literal (Int (Ident "_" 225) 1))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (InfixApply (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "caseTypeDoc" 0))) (Variable (QualIdent Nothing (Ident "ct" 222)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "case")))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 222)))) (Literal (Int (Ident "_" 226) 0))) (Variable (QualIdent Nothing (Ident "mod" 222)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "e" 222))))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "keyword" 0))) (Literal (String "of")))) (InfixOp (QualIdent (Just "Pretty") (Ident "<$>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "layout" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "branchDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 222)))) (Variable (QualIdent Nothing (Ident "mod" 222)))))) (Variable (QualIdent Nothing (Ident "bs" 222))))))))) []))]) ,(TypeSig (297,1) [(Ident "branchDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Precs" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "BranchExpr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (298,1) (Ident "branchDoc" 0) [(Equation (298,1) (FunLhs (Ident "branchDoc" 0) [(VariablePattern (Ident "pr" 227)),(VariablePattern (Ident "mod" 227)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Branch" 0)) [(VariablePattern (Ident "pat" 227)),(VariablePattern (Ident "e" 227))]))]) (SimpleRhs (299,5) (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "def" 0))) (Paren (InfixApply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "patternDoc" 0))) (Variable (QualIdent Nothing (Ident "mod" 227)))) (Variable (QualIdent Nothing (Ident "pat" 227)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "arrow" 0)))))) (List [])) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 227)))) (Literal (Int (Ident "_" 229) 0))) (Variable (QualIdent Nothing (Ident "mod" 227)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "e" 227)))))))) []))]) ,(TypeSig (301,1) [(Ident "caseTypeDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CaseType" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (302,1) (Ident "caseTypeDoc" 0) [(Equation (302,1) (FunLhs (Ident "caseTypeDoc" 0) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Rigid" 0)) [])]) (SimpleRhs (302,21) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0))) [])),(Equation (303,1) (FunLhs (Ident "caseTypeDoc" 0) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Flex" 0)) [])]) (SimpleRhs (303,21) (Variable (QualIdent (Just "Pretty") (Ident "empty" 0))) []))]) ,(TypeSig (305,1) [(Ident "patternDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Pattern" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))) ,(FunctionDecl (306,1) (Ident "patternDoc" 0) [(Equation (306,1) (FunLhs (Ident "patternDoc" 0) [(VariablePattern (Ident "mod" 234)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Pattern" 0)) [(VariablePattern (Ident "name" 234)),(VariablePattern (Ident "args" 234))]))]) (GuardedRhs [(CondExpr (307,3) (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "args" 234)))) (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 234)))) (Variable (QualIdent Nothing (Ident "name" 234))))),(CondExpr (308,3) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "isTupleName" 0))) (Variable (QualIdent Nothing (Ident "name" 234)))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "tupled" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "varDoc" 0)))) (Variable (QualIdent Nothing (Ident "args" 234))))))),(CondExpr (309,3) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "isInfixName" 0))) (Variable (QualIdent Nothing (Ident "name" 234)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "args" 234)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 236) 2)))) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "varDoc" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 234))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 237) 0))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (Variable (QualIdent Nothing (Ident "name" 234))))))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "varDoc" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 234))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 238) 1))))))),(CondExpr (313,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "qname" 0))) (Variable (QualIdent Nothing (Ident "mod" 234)))) (Variable (QualIdent Nothing (Ident "name" 234)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "hsep" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "PrettyFlat") (Ident "varDoc" 0)))) (Variable (QualIdent Nothing (Ident "args" 234))))))))] [])),(Equation (315,1) (FunLhs (Ident "patternDoc" 0) [(VariablePattern (Ident "_" 240)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "LPattern" 0)) [(VariablePattern (Ident "l" 239))]))]) (SimpleRhs (315,29) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "litDoc" 0))) (Variable (QualIdent Nothing (Ident "l" 239)))) []))]) ,(TypeSig (317,1) [(Ident "letBindsDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Precs" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (TupleType [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Expr" 0)) [])])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (318,1) (Ident "letBindsDoc" 0) [(Equation (318,1) (FunLhs (Ident "letBindsDoc" 0) [(VariablePattern (Ident "pr" 242)),(VariablePattern (Ident "mod" 242))]) (SimpleRhs (318,22) (InfixApply (Variable (QualIdent (Just "PrettyFlat") (Ident "layout" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "letBindDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 242)))) (Variable (QualIdent Nothing (Ident "mod" 242))))))) []))]) ,(TypeSig (320,1) [(Ident "letBindDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Precs" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (TupleType [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Expr" 0)) [])]) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))) ,(FunctionDecl (321,1) (Ident "letBindDoc" 0) [(Equation (321,1) (FunLhs (Ident "letBindDoc" 0) [(VariablePattern (Ident "pr" 244)),(VariablePattern (Ident "mod" 244)),(TuplePattern [(VariablePattern (Ident "n" 244)),(VariablePattern (Ident "e" 244))])]) (SimpleRhs (322,3) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "varDoc" 0))) (Variable (QualIdent Nothing (Ident "n" 244)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "operator" 0))) (Variable (QualIdent (Just "Pretty") (Ident "equals" 0))))) (InfixOp (QualIdent (Just "Pretty") (Ident "<+>" 0))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "expDoc" 0))) (Variable (QualIdent Nothing (Ident "pr" 244)))) (Literal (Int (Ident "_" 246) 0))) (Variable (QualIdent Nothing (Ident "mod" 244)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "e" 244))))) []))]) ,(TypeSig (324,1) [(Ident "litDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Literal" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) ,(FunctionDecl (325,1) (Ident "litDoc" 0) [(Equation (325,1) (FunLhs (Ident "litDoc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Intc" 0)) [(VariablePattern (Ident "n" 247))]))]) (SimpleRhs (325,19) (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "literal" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "int" 0))) (Variable (QualIdent Nothing (Ident "n" 247)))))) [])),(Equation (326,1) (FunLhs (Ident "litDoc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Floatc" 0)) [(VariablePattern (Ident "x" 249))]))]) (SimpleRhs (326,21) (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "literal" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "float" 0))) (Variable (QualIdent Nothing (Ident "x" 249)))))) [])),(Equation (327,1) (FunLhs (Ident "litDoc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Charc" 0)) [(VariablePattern (Ident "c" 251))]))]) (SimpleRhs (327,20) (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "literal" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "squotes" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Paren (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "quoteChar" 0))) (Variable (QualIdent Nothing (Ident "c" 251)))))))))) []))]) ,(FunctionDecl (329,1) (Ident "quoteChar" 0) [(Equation (329,1) (FunLhs (Ident "quoteChar" 0) [(VariablePattern (Ident "c" 253))]) (SimpleRhs (329,15) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (List [(Variable (QualIdent Nothing (Ident "c" 253)))])) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "lookup" 0))) (Variable (QualIdent Nothing (Ident "c" 253)))) (Variable (QualIdent (Just "PrettyFlat") (Ident "specialChars" 0)))))) []))]) ,(FunctionDecl (332,1) (Ident "specialChars" 0) [(Equation (332,1) (FunLhs (Ident "specialChars" 0) []) (SimpleRhs (332,16) (List [(Tuple [(Literal (Char '\\')),(Literal (String "\\\\"))]),(Tuple [(Literal (Char '\n')),(Literal (String "\\n"))]),(Tuple [(Literal (Char '\r')),(Literal (String "\\r"))]),(Tuple [(Literal (Char '\t')),(Literal (String "\\t"))])]) []))]) ,(TypeSig (334,1) [(Ident "toString" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))) ,(FunctionDecl (335,1) (Ident "toString" 0) [(Equation (335,1) (FunLhs (Ident "toString" 0) [(VariablePattern (Ident "exp" 257))]) (SimpleRhs (336,5) (Case (Variable (QualIdent Nothing (Ident "exp" 257))) [(Alt (337,7) (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "ConsCall" 0)) []),(TuplePattern [(LiteralPattern (String "Prelude")),(LiteralPattern (String "[]"))]),(ListPattern [])]) (SimpleRhs (337,44) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Literal (String ""))) [])),(Alt (338,7) (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "ConsCall" 0)) []),(TuplePattern [(LiteralPattern (String "Prelude")),(LiteralPattern (String ":"))]),(ListPattern [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Lit" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Charc" 0)) [(VariablePattern (Ident "c" 261))]))]),(VariablePattern (Ident "cs" 261))])]) (SimpleRhs (339,9) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "toString" 0))) (Variable (QualIdent Nothing (Ident "cs" 261)))) (InfixOp (QualIdent (Just "Maybe") (Ident ">>-" 0))) (InfixApply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (LeftSection (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "quoteChar" 0))) (Variable (QualIdent Nothing (Ident "c" 261)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0)))))) [])),(Alt (340,7) (VariablePattern (Ident "_" 264)) (SimpleRhs (340,12) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) []))]) []))]) ,(TypeSig (342,1) [(Ident "toList" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ListType (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []))]))) ,(FunctionDecl (343,1) (Ident "toList" 0) [(Equation (343,1) (FunLhs (Ident "toList" 0) [(VariablePattern (Ident "exp" 266))]) (SimpleRhs (344,5) (Case (Variable (QualIdent Nothing (Ident "exp" 266))) [(Alt (345,7) (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "ConsCall" 0)) []),(TuplePattern [(LiteralPattern (String "Prelude")),(LiteralPattern (String "[]"))]),(ListPattern [])]) (SimpleRhs (345,44) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (List [])) [])),(Alt (346,7) (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "ConsCall" 0)) []),(TuplePattern [(LiteralPattern (String "Prelude")),(LiteralPattern (String ":"))]),(ListPattern [(VariablePattern (Ident "x" 270)),(VariablePattern (Ident "xs" 270))])]) (SimpleRhs (346,47) (InfixApply (Apply (Variable (QualIdent (Just "PrettyFlat") (Ident "toList" 0))) (Variable (QualIdent Nothing (Ident "xs" 270)))) (InfixOp (QualIdent (Just "Maybe") (Ident ">>-" 0))) (InfixApply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (LeftSection (Variable (QualIdent Nothing (Ident "x" 270))) (InfixConstr (QualIdent Nothing (Ident ":" 0)))))) [])),(Alt (347,7) (VariablePattern (Ident "_" 273)) (SimpleRhs (347,12) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) []))]) []))]) ,(TypeSig (350,1) [(Ident "elimApp" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []))) ,(FunctionDecl (351,1) (Ident "elimApp" 0) [(Equation (351,1) (FunLhs (Ident "elimApp" 0) []) (SimpleRhs (351,11) (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "updCombs" 0))) (Variable (QualIdent Nothing (Ident "elim" 276)))) [(FunctionDecl (353,3) (Ident "elim" 276) [(Equation (353,3) (FunLhs (Ident "elim" 276) [(VariablePattern (Ident "ct" 277)),(VariablePattern (Ident "name" 277)),(VariablePattern (Ident "args" 277))]) (GuardedRhs [(CondExpr (354,5) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "ct" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "FlatCurry") (Ident "FuncCall" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "name" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Variable (QualIdent (Just "PrettyFlat") (Ident "prelude" 0))),(Literal (String "apply"))])) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "isComb" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "args" 277)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryGoodies") (Ident "combName" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "args" 277)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Tuple [(Variable (QualIdent (Just "PrettyFlat") (Ident "prelude" 0))),(Literal (String "apply"))]))))) (Apply (Apply (Variable (QualIdent Nothing (Ident "extend" 276))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "args" 277)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 279) 1)))))),(CondExpr (357,5) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Constructor (QualIdent (Just "FlatCurry") (Ident "Comb" 0))) (Variable (QualIdent Nothing (Ident "ct" 277)))) (Variable (QualIdent Nothing (Ident "name" 277)))) (Variable (QualIdent Nothing (Ident "args" 277)))))] []))]),(FunctionDecl (358,3) (Ident "extend" 276) [(Equation (358,3) (FunLhs (Ident "extend" 276) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "ct" 280)),(VariablePattern (Ident "name" 280)),(VariablePattern (Ident "args" 280))])),(VariablePattern (Ident "arg" 280))]) (SimpleRhs (358,36) (Apply (Apply (Apply (Constructor (QualIdent (Just "FlatCurry") (Ident "Comb" 0))) (Variable (QualIdent Nothing (Ident "ct" 280)))) (Variable (QualIdent Nothing (Ident "name" 280)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 280))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (List [(Variable (QualIdent Nothing (Ident "arg" 280)))])))) []))])]))]) ]