Module "FlatCurryShow" (Just (Exporting (17,21) [(Export (QualIdent Nothing (Ident "showFlatProg" 0))),(Export (QualIdent Nothing (Ident "showFlatType" 0))),(Export (QualIdent Nothing (Ident "showFlatFunc" 0))),(Export (QualIdent Nothing (Ident "showCurryType" 0))),(Export (QualIdent Nothing (Ident "showCurryExpr" 0))),(Export (QualIdent Nothing (Ident "showCurryId" 0))),(Export (QualIdent Nothing (Ident "showCurryVar" 0)))])) [(ImportDecl (1,1) "Prelude" False Nothing Nothing) ,(ImportDecl (21,1) "FlatCurry" False Nothing Nothing) ,(ImportDecl (22,1) "List" False Nothing Nothing) ,(ImportDecl (23,1) "Char" False Nothing Nothing) ,(TypeSig (26,1) [(Ident "showFlatProg" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prog" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) ,(FunctionDecl (27,1) (Ident "showFlatProg" 0) [(Equation (27,1) (FunLhs (Ident "showFlatProg" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Prog" 0)) [(VariablePattern (Ident "modname" 2)),(VariablePattern (Ident "imports" 2)),(VariablePattern (Ident "types" 2)),(VariablePattern (Ident "funcs" 2)),(VariablePattern (Ident "ops" 2))]))]) (SimpleRhs (28,6) (InfixApply (Literal (String " (Prog ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "modname" 2)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Paren (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "imports" 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (List [])) (Literal (String "\n []")) (InfixApply (Literal (String "\n [")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatListElems" 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) (Variable (QualIdent Nothing (Ident "imports" 2)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "]")))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Paren (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "types" 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (List [])) (Literal (String "\n []")) (InfixApply (Literal (String "\n [")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatListElems" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatType" 0)))) (Variable (QualIdent Nothing (Ident "types" 2)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n ]")))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n [")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatListElems" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatFunc" 0)))) (Variable (QualIdent Nothing (Ident "funcs" 2)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n ]")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatOp" 0)))) (Variable (QualIdent Nothing (Ident "ops" 2)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n )\n"))))))))))) []))]) ,(FunctionDecl (37,1) (Ident "showFlatVisibility" 0) [(Equation (37,1) (FunLhs (Ident "showFlatVisibility" 0) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Public" 0)) [])]) (SimpleRhs (37,30) (Literal (String " Public ")) [])),(Equation (38,1) (FunLhs (Ident "showFlatVisibility" 0) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Private" 0)) [])]) (SimpleRhs (38,30) (Literal (String " Private ")) []))]) ,(FunctionDecl (40,1) (Ident "showFlatFixity" 0) [(Equation (40,1) (FunLhs (Ident "showFlatFixity" 0) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "InfixOp" 0)) [])]) (SimpleRhs (40,26) (Literal (String " InfixOp ")) [])),(Equation (41,1) (FunLhs (Ident "showFlatFixity" 0) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "InfixlOp" 0)) [])]) (SimpleRhs (41,27) (Literal (String " InfixlOp ")) [])),(Equation (42,1) (FunLhs (Ident "showFlatFixity" 0) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "InfixrOp" 0)) [])]) (SimpleRhs (42,27) (Literal (String " InfixrOp ")) []))]) ,(FunctionDecl (44,1) (Ident "showFlatOp" 0) [(Equation (44,1) (FunLhs (Ident "showFlatOp" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Op" 0)) [(VariablePattern (Ident "name" 14)),(VariablePattern (Ident "fix" 14)),(VariablePattern (Ident "prec" 14))]))]) (SimpleRhs (45,2) (InfixApply (Literal (String "(Op ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "name" 14)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatFixity" 0))) (Variable (QualIdent Nothing (Ident "fix" 14)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "prec" 14)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))))) []))]) ,(TypeSig (47,1) [(Ident "showFlatType" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "TypeDecl" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) ,(FunctionDecl (48,1) (Ident "showFlatType" 0) [(Equation (48,1) (FunLhs (Ident "showFlatType" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Type" 0)) [(VariablePattern (Ident "name" 16)),(VariablePattern (Ident "vis" 16)),(VariablePattern (Ident "tpars" 16)),(VariablePattern (Ident "consdecls" 16))]))]) (SimpleRhs (49,3) (InfixApply (Literal (String "\n (Type ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "name" 16)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatVisibility" 0))) (Variable (QualIdent Nothing (Ident "vis" 16)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) (Variable (QualIdent Nothing (Ident "tpars" 16)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatCons" 0)))) (Variable (QualIdent Nothing (Ident "consdecls" 16)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))))) [])),(Equation (52,1) (FunLhs (Ident "showFlatType" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TypeSyn" 0)) [(VariablePattern (Ident "name" 18)),(VariablePattern (Ident "vis" 18)),(VariablePattern (Ident "tpars" 18)),(VariablePattern (Ident "texp" 18))]))]) (SimpleRhs (53,3) (InfixApply (Literal (String "\n (TypeSyn ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "name" 18)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatVisibility" 0))) (Variable (QualIdent Nothing (Ident "vis" 18)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) (Variable (QualIdent Nothing (Ident "tpars" 18)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatTypeExpr" 0))) (Variable (QualIdent Nothing (Ident "texp" 18)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))))) []))]) ,(FunctionDecl (57,1) (Ident "showFlatCons" 0) [(Equation (57,1) (FunLhs (Ident "showFlatCons" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Cons" 0)) [(VariablePattern (Ident "cname" 20)),(VariablePattern (Ident "arity" 20)),(VariablePattern (Ident "vis" 20)),(VariablePattern (Ident "types" 20))]))]) (SimpleRhs (58,3) (InfixApply (Literal (String "(Cons ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "cname" 20)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "arity" 20)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatVisibility" 0))) (Variable (QualIdent Nothing (Ident "vis" 20)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatTypeExpr" 0)))) (Variable (QualIdent Nothing (Ident "types" 20)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))))))) []))]) ,(TypeSig (62,1) [(Ident "showFlatFunc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FuncDecl" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) ,(FunctionDecl (63,1) (Ident "showFlatFunc" 0) [(Equation (63,1) (FunLhs (Ident "showFlatFunc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Func" 0)) [(VariablePattern (Ident "name" 22)),(VariablePattern (Ident "arity" 22)),(VariablePattern (Ident "vis" 22)),(VariablePattern (Ident "ftype" 22)),(VariablePattern (Ident "rl" 22))]))]) (SimpleRhs (64,3) (InfixApply (Literal (String "\n (Func ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "name" 22)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "arity" 22)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatVisibility" 0))) (Variable (QualIdent Nothing (Ident "vis" 22)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatTypeExpr" 0))) (Variable (QualIdent Nothing (Ident "ftype" 22)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatRule" 0))) (Variable (QualIdent Nothing (Ident "rl" 22)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))))))))))) []))]) ,(FunctionDecl (69,1) (Ident "showFlatRule" 0) [(Equation (69,1) (FunLhs (Ident "showFlatRule" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Rule" 0)) [(VariablePattern (Ident "params" 24)),(VariablePattern (Ident "expr" 24))]))]) (SimpleRhs (70,3) (InfixApply (Literal (String " (Rule ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) (Variable (QualIdent Nothing (Ident "params" 24)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0))) (Variable (QualIdent Nothing (Ident "expr" 24)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))) [])),(Equation (72,1) (FunLhs (Ident "showFlatRule" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "External" 0)) [(VariablePattern (Ident "name" 26))]))]) (SimpleRhs (73,3) (InfixApply (Literal (String " (External ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "name" 26)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) []))]) ,(FunctionDecl (75,1) (Ident "showFlatTypeExpr" 0) [(Equation (75,1) (FunLhs (Ident "showFlatTypeExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "FuncType" 0)) [(VariablePattern (Ident "t1" 28)),(VariablePattern (Ident "t2" 28))]))]) (SimpleRhs (76,3) (InfixApply (Literal (String "(FuncType ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatTypeExpr" 0))) (Variable (QualIdent Nothing (Ident "t1" 28)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatTypeExpr" 0))) (Variable (QualIdent Nothing (Ident "t2" 28)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))))) [])),(Equation (77,1) (FunLhs (Ident "showFlatTypeExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TCons" 0)) [(VariablePattern (Ident "tc" 30)),(VariablePattern (Ident "ts" 30))]))]) (SimpleRhs (78,3) (InfixApply (Literal (String "(TCons ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "tc" 30)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatTypeExpr" 0)))) (Variable (QualIdent Nothing (Ident "ts" 30)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))) [])),(Equation (80,1) (FunLhs (Ident "showFlatTypeExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TVar" 0)) [(VariablePattern (Ident "n" 32))]))]) (SimpleRhs (80,29) (InfixApply (Literal (String "(TVar ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 32)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) []))]) ,(FunctionDecl (83,1) (Ident "showFlatCombType" 0) [(Equation (83,1) (FunLhs (Ident "showFlatCombType" 0) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "FuncCall" 0)) [])]) (SimpleRhs (83,29) (Literal (String "FuncCall")) [])),(Equation (84,1) (FunLhs (Ident "showFlatCombType" 0) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "ConsCall" 0)) [])]) (SimpleRhs (84,29) (Literal (String "ConsCall")) [])),(Equation (85,1) (FunLhs (Ident "showFlatCombType" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "FuncPartCall" 0)) [(VariablePattern (Ident "n" 38))]))]) (SimpleRhs (85,37) (InfixApply (Literal (String "(FuncPartCall ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 38)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) [])),(Equation (86,1) (FunLhs (Ident "showFlatCombType" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "ConsPartCall" 0)) [(VariablePattern (Ident "n" 40))]))]) (SimpleRhs (86,37) (InfixApply (Literal (String "(ConsPartCall ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 40)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) []))]) ,(FunctionDecl (88,1) (Ident "showFlatExpr" 0) [(Equation (88,1) (FunLhs (Ident "showFlatExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Var" 0)) [(VariablePattern (Ident "n" 42))]))]) (SimpleRhs (88,24) (InfixApply (Literal (String "(Var ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 42)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) [])),(Equation (89,1) (FunLhs (Ident "showFlatExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Lit" 0)) [(VariablePattern (Ident "l" 44))]))]) (SimpleRhs (89,24) (InfixApply (Literal (String "(Lit ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatLit" 0))) (Variable (QualIdent Nothing (Ident "l" 44)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) [])),(Equation (90,1) (FunLhs (Ident "showFlatExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "ctype" 46)),(VariablePattern (Ident "cf" 46)),(VariablePattern (Ident "es" 46))]))]) (SimpleRhs (91,3) (InfixApply (Literal (String "(Comb ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatCombType" 0))) (Variable (QualIdent Nothing (Ident "ctype" 46)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "cf" 46)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0)))) (Variable (QualIdent Nothing (Ident "es" 46)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))))) [])),(Equation (93,1) (FunLhs (Ident "showFlatExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Let" 0)) [(VariablePattern (Ident "bindings" 48)),(VariablePattern (Ident "exp" 48))]))]) (SimpleRhs (94,3) (InfixApply (Literal (String "(Let ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent Nothing (Ident "showFlatBinding" 49)))) (Variable (QualIdent Nothing (Ident "bindings" 48)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0))) (Variable (QualIdent Nothing (Ident "exp" 48)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))) [(TypeSig (96,4) [(Ident "showFlatBinding" 49)] (ArrowType (TupleType [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Expr" 0)) [])]) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))),(FunctionDecl (97,4) (Ident "showFlatBinding" 49) [(Equation (97,4) (FunLhs (Ident "showFlatBinding" 49) [(TuplePattern [(VariablePattern (Ident "x" 50)),(VariablePattern (Ident "e" 50))])]) (SimpleRhs (97,28) (InfixApply (Literal (String "(")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "x" 50)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ",")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0))) (Variable (QualIdent Nothing (Ident "e" 50)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))))) []))])])),(Equation (98,1) (FunLhs (Ident "showFlatExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Free" 0)) [(VariablePattern (Ident "xs" 52)),(VariablePattern (Ident "e" 52))]))]) (SimpleRhs (99,3) (InfixApply (Literal (String "(Free ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) (Variable (QualIdent Nothing (Ident "xs" 52)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0))) (Variable (QualIdent Nothing (Ident "e" 52)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))) [])),(Equation (100,1) (FunLhs (Ident "showFlatExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Or" 0)) [(VariablePattern (Ident "e1" 54)),(VariablePattern (Ident "e2" 54))]))]) (SimpleRhs (101,3) (InfixApply (Literal (String "(Or ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0))) (Variable (QualIdent Nothing (Ident "e1" 54)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0))) (Variable (QualIdent Nothing (Ident "e2" 54)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))))) [])),(Equation (102,1) (FunLhs (Ident "showFlatExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Case" 0)) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Rigid" 0)) []),(VariablePattern (Ident "e" 56)),(VariablePattern (Ident "bs" 56))]))]) (SimpleRhs (103,3) (InfixApply (Literal (String "(Case Rigid ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0))) (Variable (QualIdent Nothing (Ident "e" 56)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatBranch" 0)))) (Variable (QualIdent Nothing (Ident "bs" 56)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))) [])),(Equation (104,1) (FunLhs (Ident "showFlatExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Case" 0)) [(ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Flex" 0)) []),(VariablePattern (Ident "e" 58)),(VariablePattern (Ident "bs" 58))]))]) (SimpleRhs (105,3) (InfixApply (Literal (String "(Case Flex ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0))) (Variable (QualIdent Nothing (Ident "e" 58)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatBranch" 0)))) (Variable (QualIdent Nothing (Ident "bs" 58)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))) []))]) ,(FunctionDecl (107,1) (Ident "showFlatLit" 0) [(Equation (107,1) (FunLhs (Ident "showFlatLit" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Intc" 0)) [(VariablePattern (Ident "i" 60))]))]) (SimpleRhs (107,26) (InfixApply (Literal (String "(Intc ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "i" 60)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) [])),(Equation (108,1) (FunLhs (Ident "showFlatLit" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Floatc" 0)) [(VariablePattern (Ident "f" 62))]))]) (SimpleRhs (108,26) (InfixApply (Literal (String "(Floatc ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "f" 62)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) [])),(Equation (109,1) (FunLhs (Ident "showFlatLit" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Charc" 0)) [(VariablePattern (Ident "c" 64))]))]) (SimpleRhs (109,26) (InfixApply (Literal (String "(Charc ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "c" 64)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) []))]) ,(FunctionDecl (111,1) (Ident "showFlatBranch" 0) [(Equation (111,1) (FunLhs (Ident "showFlatBranch" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Branch" 0)) [(VariablePattern (Ident "p" 66)),(VariablePattern (Ident "e" 66))]))]) (SimpleRhs (111,31) (InfixApply (Literal (String "(Branch ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatPattern" 0))) (Variable (QualIdent Nothing (Ident "p" 66)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatExpr" 0))) (Variable (QualIdent Nothing (Ident "e" 66)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))) []))]) ,(FunctionDecl (114,1) (Ident "showFlatPattern" 0) [(Equation (114,1) (FunLhs (Ident "showFlatPattern" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Pattern" 0)) [(VariablePattern (Ident "qn" 68)),(VariablePattern (Ident "xs" 68))]))]) (SimpleRhs (115,7) (InfixApply (Literal (String "(Pattern ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "qn" 68)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatList" 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) (Variable (QualIdent Nothing (Ident "xs" 68)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))) [])),(Equation (117,1) (FunLhs (Ident "showFlatPattern" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "LPattern" 0)) [(VariablePattern (Ident "lit" 70))]))]) (SimpleRhs (117,34) (InfixApply (Literal (String "(LPattern ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatLit" 0))) (Variable (QualIdent Nothing (Ident "lit" 70)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) []))]) ,(TypeSig (121,1) [(Ident "showFlatList" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))) ,(FunctionDecl (122,1) (Ident "showFlatList" 0) [(Equation (122,1) (FunLhs (Ident "showFlatList" 0) [(VariablePattern (Ident "format" 72)),(VariablePattern (Ident "elems" 72))]) (SimpleRhs (122,29) (InfixApply (Literal (String " [")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showFlatListElems" 0))) (Variable (QualIdent Nothing (Ident "format" 72)))) (Variable (QualIdent Nothing (Ident "elems" 72)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "] ")))) []))]) ,(TypeSig (124,1) [(Ident "showFlatListElems" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))) ,(FunctionDecl (125,1) (Ident "showFlatListElems" 0) [(Equation (125,1) (FunLhs (Ident "showFlatListElems" 0) [(VariablePattern (Ident "format" 74)),(VariablePattern (Ident "elems" 74))]) (SimpleRhs (125,34) (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Literal (String ","))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "format" 74)))) (Variable (QualIdent Nothing (Ident "elems" 74)))))))) []))]) ,(TypeSig (137,1) [(Ident "showCurryType" 0)] (ArrowType (ArrowType (TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "TypeExpr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))) ,(FunctionDecl (139,1) (Ident "showCurryType" 0) [(Equation (139,1) (FunLhs (Ident "showCurryType" 0) [(VariablePattern (Ident "_" 77)),(VariablePattern (Ident "_" 78)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TVar" 0)) [(VariablePattern (Ident "i" 76))]))]) (SimpleRhs (139,30) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "i" 76))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Literal (Int (Ident "_" 80) 5))) (List [(Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (InfixApply (Literal (Int (Ident "_" 81) 97)) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "i" 76))))))]) (InfixApply (Literal (Char 't')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "i" 76)))))) [])),(Equation (140,1) (FunLhs (Ident "showCurryType" 0) [(VariablePattern (Ident "tf" 82)),(VariablePattern (Ident "nested" 82)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "FuncType" 0)) [(VariablePattern (Ident "t1" 82)),(VariablePattern (Ident "t2" 82))]))]) (SimpleRhs (141,3) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 82)))) (Paren (InfixApply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryType" 0))) (Variable (QualIdent Nothing (Ident "tf" 82)))) (Paren (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "isFuncType" 0))) (Variable (QualIdent Nothing (Ident "t1" 82)))))) (Variable (QualIdent Nothing (Ident "t1" 82)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " -> ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryType" 0))) (Variable (QualIdent Nothing (Ident "tf" 82)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "t2" 82)))))))) [])),(Equation (144,1) (FunLhs (Ident "showCurryType" 0) [(VariablePattern (Ident "tf" 84)),(VariablePattern (Ident "nested" 84)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TCons" 0)) [(VariablePattern (Ident "tc" 84)),(VariablePattern (Ident "ts" 84))]))]) (GuardedRhs [(CondExpr (145,2) (InfixApply (Variable (QualIdent Nothing (Ident "ts" 84))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (List [])) (Apply (Variable (QualIdent Nothing (Ident "tf" 84))) (Variable (QualIdent Nothing (Ident "tc" 84))))),(CondExpr (146,2) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "tc" 84))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Literal (String "Prelude")),(Literal (String "[]"))])) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "ts" 84)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Apply (Constructor (QualIdent (Just "FlatCurry") (Ident "TCons" 0))) (Tuple [(Literal (String "Prelude")),(Literal (String "Char"))])) (List []))))) (Literal (String "String"))),(CondExpr (148,2) (InfixApply (Variable (QualIdent Nothing (Ident "tc" 84))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Literal (String "Prelude")),(Literal (String "[]"))])) (InfixApply (Literal (String "[")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryType" 0))) (Variable (QualIdent Nothing (Ident "tf" 84)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "ts" 84)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "]"))))),(CondExpr (150,2) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "take" 0))) (Literal (Int (Ident "_" 86) 2))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (Variable (QualIdent Nothing (Ident "tc" 84)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (String "(,"))) (InfixApply (Literal (String "(")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Literal (String ","))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryType" 0))) (Variable (QualIdent Nothing (Ident "tf" 84)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))))) (Variable (QualIdent Nothing (Ident "ts" 84)))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))),(CondExpr (152,2) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 84)))) (Paren (InfixApply (Apply (Variable (QualIdent Nothing (Ident "tf" 84))) (Variable (QualIdent Nothing (Ident "tc" 84)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concatMap" 0))) (Paren (Lambda [(VariablePattern (Ident "t" 87))] (InfixApply (Literal (Char ' ')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryType" 0))) (Variable (QualIdent Nothing (Ident "tf" 84)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "t" 87)))))))) (Variable (QualIdent Nothing (Ident "ts" 84))))))))] []))]) ,(FunctionDecl (156,1) (Ident "isFuncType" 0) [(Equation (156,1) (FunLhs (Ident "isFuncType" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TVar" 0)) [(VariablePattern (Ident "_" 89))]))]) (SimpleRhs (156,29) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (157,1) (FunLhs (Ident "isFuncType" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "FuncType" 0)) [(VariablePattern (Ident "_" 92)),(VariablePattern (Ident "_" 93))]))]) (SimpleRhs (157,29) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (158,1) (FunLhs (Ident "isFuncType" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "TCons" 0)) [(VariablePattern (Ident "_" 96)),(VariablePattern (Ident "_" 97))]))]) (SimpleRhs (158,27) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))]) ,(TypeSig (171,1) [(Ident "showCurryExpr" 0)] (ArrowType (ArrowType (TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))))) ,(FunctionDecl (173,1) (Ident "showCurryExpr" 0) [(Equation (173,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "_" 100)),(VariablePattern (Ident "_" 101)),(VariablePattern (Ident "_" 102)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Var" 0)) [(VariablePattern (Ident "n" 99))]))]) (SimpleRhs (173,31) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0))) (Variable (QualIdent Nothing (Ident "n" 99)))) [])),(Equation (175,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "_" 105)),(VariablePattern (Ident "_" 106)),(VariablePattern (Ident "_" 107)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Lit" 0)) [(VariablePattern (Ident "l" 104))]))]) (SimpleRhs (175,31) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryLit" 0))) (Variable (QualIdent Nothing (Ident "l" 104)))) [])),(Equation (177,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "tf" 109)),(VariablePattern (Ident "_" 110)),(VariablePattern (Ident "_" 111)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "_" 112)),(VariablePattern (Ident "cf" 109)),(ListPattern [])]))]) (SimpleRhs (177,39) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryId" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "tf" 109))) (Variable (QualIdent Nothing (Ident "cf" 109)))))) [])),(Equation (178,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "tf" 114)),(VariablePattern (Ident "nested" 114)),(VariablePattern (Ident "b" 114)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "_" 115)),(VariablePattern (Ident "cf" 114)),(ListPattern [(VariablePattern (Ident "e" 114))])]))]) (SimpleRhs (179,3) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 114)))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryId" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "tf" 114))) (Variable (QualIdent Nothing (Ident "cf" 114)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 114)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 114)))) (Variable (QualIdent Nothing (Ident "e" 114)))))))) [])),(Equation (181,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "tf" 117)),(VariablePattern (Ident "nested" 117)),(VariablePattern (Ident "b" 117)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "ct" 117)),(VariablePattern (Ident "cf" 117)),(ListPattern [(VariablePattern (Ident "e1" 117)),(VariablePattern (Ident "e2" 117))])]))]) (GuardedRhs [(CondExpr (182,2) (InfixApply (Variable (QualIdent Nothing (Ident "cf" 117))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Literal (String "Prelude")),(Literal (String "apply"))])) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 117)))) (Paren (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 117)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 117)))) (Variable (QualIdent Nothing (Ident "e1" 117)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 117)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 117)))) (Variable (QualIdent Nothing (Ident "e2" 117))))))))),(CondExpr (185,2) (Apply (Variable (QualIdent (Just "Char") (Ident "isAlpha" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (Variable (QualIdent Nothing (Ident "cf" 117)))))))) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 117)))) (Paren (InfixApply (Apply (Variable (QualIdent Nothing (Ident "tf" 117))) (Variable (QualIdent Nothing (Ident "cf" 117)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryElems" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 117)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 117)))))) (List [(Variable (QualIdent Nothing (Ident "e1" 117))),(Variable (QualIdent Nothing (Ident "e2" 117)))]))))))),(CondExpr (188,2) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "isFiniteList" 0))) (Paren (Apply (Apply (Apply (Constructor (QualIdent (Just "FlatCurry") (Ident "Comb" 0))) (Variable (QualIdent Nothing (Ident "ct" 117)))) (Variable (QualIdent Nothing (Ident "cf" 117)))) (List [(Variable (QualIdent Nothing (Ident "e1" 117))),(Variable (QualIdent Nothing (Ident "e2" 117)))])))) (IfThenElse (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "isStringConstant" 0))) (Paren (Apply (Apply (Apply (Constructor (QualIdent (Just "FlatCurry") (Ident "Comb" 0))) (Variable (QualIdent Nothing (Ident "ct" 117)))) (Variable (QualIdent Nothing (Ident "cf" 117)))) (List [(Variable (QualIdent Nothing (Ident "e1" 117))),(Variable (QualIdent Nothing (Ident "e2" 117)))])))) (InfixApply (Literal (String "\"")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryStringConstant" 0))) (Paren (Apply (Apply (Apply (Constructor (QualIdent (Just "FlatCurry") (Ident "Comb" 0))) (Variable (QualIdent Nothing (Ident "ct" 117)))) (Variable (QualIdent Nothing (Ident "cf" 117)))) (List [(Variable (QualIdent Nothing (Ident "e1" 117))),(Variable (QualIdent Nothing (Ident "e2" 117)))])))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\"")))) (InfixApply (Literal (String "[")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Literal (String ","))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryFiniteList" 0))) (Variable (QualIdent Nothing (Ident "tf" 117)))) (Variable (QualIdent Nothing (Ident "b" 117)))) (Paren (Apply (Apply (Apply (Constructor (QualIdent (Just "FlatCurry") (Ident "Comb" 0))) (Variable (QualIdent Nothing (Ident "ct" 117)))) (Variable (QualIdent Nothing (Ident "cf" 117)))) (List [(Variable (QualIdent Nothing (Ident "e1" 117))),(Variable (QualIdent Nothing (Ident "e2" 117)))])))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "]")))))),(CondExpr (194,2) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (Variable (QualIdent Nothing (Ident "cf" 117)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (String "(,)"))) (InfixApply (Literal (String "(")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 117)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "b" 117)))) (Variable (QualIdent Nothing (Ident "e1" 117)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ",")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 117)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "b" 117)))) (Variable (QualIdent Nothing (Ident "e2" 117)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))))),(CondExpr (197,2) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 117)))) (Paren (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 117)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 117)))) (Variable (QualIdent Nothing (Ident "e1" 117)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "tf" 117))) (Variable (QualIdent Nothing (Ident "cf" 117)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 117)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 117)))) (Variable (QualIdent Nothing (Ident "e2" 117)))))))))))] [])),(Equation (201,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "tf" 119)),(VariablePattern (Ident "nested" 119)),(VariablePattern (Ident "b" 119)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "_" 120)),(VariablePattern (Ident "cf" 119)),(ParenPattern (InfixPattern (VariablePattern (Ident "e1" 119)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "e2" 119)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "e3" 119)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "es" 119))))))]))]) (GuardedRhs [(CondExpr (202,2) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "cf" 119))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Literal (String "Prelude")),(Literal (String "if_then_else"))])) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "es" 119))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (List []))) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 119)))) (Paren (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "sceBlanks" 0))) (Variable (QualIdent Nothing (Ident "b" 119)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " if ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 119)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "b" 119))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 122) 2))))) (Variable (QualIdent Nothing (Ident "e1" 119)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "sceBlanks" 0))) (Variable (QualIdent Nothing (Ident "b" 119)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " then ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 119)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "b" 119))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 123) 2))))) (Variable (QualIdent Nothing (Ident "e2" 119)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "sceBlanks" 0))) (Variable (QualIdent Nothing (Ident "b" 119)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " else ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 119)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "b" 119))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 124) 2))))) (Variable (QualIdent Nothing (Ident "e3" 119)))))))))))))))))),(CondExpr (208,2) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "take" 0))) (Literal (Int (Ident "_" 125) 2))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (Variable (QualIdent Nothing (Ident "cf" 119)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (String "(,"))) (InfixApply (Literal (String "(")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Literal (String ","))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 119)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "b" 119)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "e1" 119))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "e2" 119))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "e3" 119))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "es" 119)))))))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))),(CondExpr (212,2) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 119)))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryId" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "tf" 119))) (Variable (QualIdent Nothing (Ident "cf" 119)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryElems" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 119)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 119)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "e1" 119))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "e2" 119))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "e3" 119))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "es" 119)))))))))))))] [])),(Equation (217,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "tf" 126)),(VariablePattern (Ident "nested" 126)),(VariablePattern (Ident "b" 126)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Let" 0)) [(VariablePattern (Ident "bindings" 126)),(VariablePattern (Ident "exp" 126))]))]) (SimpleRhs (218,3) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 126)))) (Paren (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "sceBlanks" 0))) (Variable (QualIdent Nothing (Ident "b" 126)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "let ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Paren (InfixApply (Literal (String "\n ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "sceBlanks" 0))) (Variable (QualIdent Nothing (Ident "b" 126))))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "x" 128)),(VariablePattern (Ident "e" 128))])] (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0))) (Variable (QualIdent Nothing (Ident "x" 128)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " = ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 126)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "b" 126))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 129) 4))))) (Variable (QualIdent Nothing (Ident "e" 128))))))))) (Variable (QualIdent Nothing (Ident "bindings" 126)))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Paren (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "sceBlanks" 0))) (Variable (QualIdent Nothing (Ident "b" 126)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String " in "))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 126)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "b" 126))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 130) 4))))) (Variable (QualIdent Nothing (Ident "exp" 126))))))))))) [])),(Equation (223,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "tf" 131)),(VariablePattern (Ident "nested" 131)),(VariablePattern (Ident "b" 131)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Free" 0)) [(ListPattern []),(VariablePattern (Ident "e" 131))]))]) (SimpleRhs (223,41) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 131)))) (Variable (QualIdent Nothing (Ident "nested" 131)))) (Variable (QualIdent Nothing (Ident "b" 131)))) (Variable (QualIdent Nothing (Ident "e" 131)))) [])),(Equation (225,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "tf" 133)),(VariablePattern (Ident "nested" 133)),(VariablePattern (Ident "b" 133)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Free" 0)) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 133)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 133)))),(VariablePattern (Ident "e" 133))]))]) (SimpleRhs (226,3) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 133)))) (Paren (InfixApply (Literal (String "let ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Literal (String ","))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 133))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 133)))))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " free in ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 133)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "b" 133)))) (Variable (QualIdent Nothing (Ident "e" 133))))))))) [])),(Equation (230,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "tf" 135)),(VariablePattern (Ident "nested" 135)),(VariablePattern (Ident "b" 135)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Or" 0)) [(VariablePattern (Ident "e1" 135)),(VariablePattern (Ident "e2" 135))]))]) (SimpleRhs (231,3) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 135)))) (Paren (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 135)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 135)))) (Variable (QualIdent Nothing (Ident "e1" 135)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ? ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 135)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 135)))) (Variable (QualIdent Nothing (Ident "e2" 135)))))))) [])),(Equation (234,1) (FunLhs (Ident "showCurryExpr" 0) [(VariablePattern (Ident "tf" 137)),(VariablePattern (Ident "nested" 137)),(VariablePattern (Ident "b" 137)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Case" 0)) [(VariablePattern (Ident "ctype" 137)),(VariablePattern (Ident "e" 137)),(VariablePattern (Ident "cs" 137))]))]) (SimpleRhs (235,3) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showBracketsIf" 0))) (Variable (QualIdent Nothing (Ident "nested" 137)))) (Paren (InfixApply (Paren (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "ctype" 137))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "FlatCurry") (Ident "Rigid" 0)))) (Literal (String "case ")) (Literal (String "fcase ")))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 137)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (Variable (QualIdent Nothing (Ident "b" 137)))) (Variable (QualIdent Nothing (Ident "e" 137)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " of\n ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryElems" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryCase" 0))) (Variable (QualIdent Nothing (Ident "tf" 137)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "b" 137))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 139) 2))))))) (Variable (QualIdent Nothing (Ident "cs" 137)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "sceBlanks" 0))) (Variable (QualIdent Nothing (Ident "b" 137)))))))))) []))]) ,(FunctionDecl (241,1) (Ident "showCurryVar" 0) [(Equation (241,1) (FunLhs (Ident "showCurryVar" 0) [(VariablePattern (Ident "i" 140))]) (SimpleRhs (241,18) (InfixApply (Literal (String "v")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "i" 140))))) []))]) ,(FunctionDecl (244,1) (Ident "showCurryId" 0) [(Equation (244,1) (FunLhs (Ident "showCurryId" 0) [(VariablePattern (Ident "name" 142))]) (GuardedRhs [(CondExpr (244,18) (Apply (Variable (QualIdent (Just "Char") (Ident "isAlpha" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "name" 142)))))) (Variable (QualIdent Nothing (Ident "name" 142)))),(CondExpr (245,18) (InfixApply (Variable (QualIdent Nothing (Ident "name" 142))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (String "[]"))) (Variable (QualIdent Nothing (Ident "name" 142)))),(CondExpr (246,18) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (Paren (InfixApply (Literal (Char '(')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "name" 142))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")"))))] []))]) ,(FunctionDecl (248,1) (Ident "showCurryLit" 0) [(Equation (248,1) (FunLhs (Ident "showCurryLit" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Intc" 0)) [(VariablePattern (Ident "i" 144))]))]) (SimpleRhs (248,27) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "i" 144)))) [])),(Equation (249,1) (FunLhs (Ident "showCurryLit" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Floatc" 0)) [(VariablePattern (Ident "f" 146))]))]) (SimpleRhs (249,27) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "f" 146)))) [])),(Equation (250,1) (FunLhs (Ident "showCurryLit" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Charc" 0)) [(VariablePattern (Ident "c" 148))]))]) (SimpleRhs (250,27) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "c" 148)))) []))]) ,(FunctionDecl (252,1) (Ident "showCurryCase" 0) [(Equation (252,1) (FunLhs (Ident "showCurryCase" 0) [(VariablePattern (Ident "tf" 150)),(VariablePattern (Ident "b" 150)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Branch" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Pattern" 0)) [(VariablePattern (Ident "l" 150)),(VariablePattern (Ident "vs" 150))])),(VariablePattern (Ident "e" 150))]))]) (SimpleRhs (253,3) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "sceBlanks" 0))) (Variable (QualIdent Nothing (Ident "b" 150)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Variable (QualIdent Nothing (Ident "showPattern" 151))) (Paren (Apply (Variable (QualIdent Nothing (Ident "tf" 150))) (Variable (QualIdent Nothing (Ident "l" 150)))))) (Variable (QualIdent Nothing (Ident "vs" 150)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " -> ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 150)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "b" 150)))) (Variable (QualIdent Nothing (Ident "e" 150)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))))) [(FunctionDecl (256,4) (Ident "showPattern" 151) [(Equation (256,4) (FunLhs (Ident "showPattern" 151) [(VariablePattern (Ident "c" 152)),(ListPattern [])]) (SimpleRhs (256,23) (Variable (QualIdent Nothing (Ident "c" 152))) [])),(Equation (257,4) (FunLhs (Ident "showPattern" 151) [(VariablePattern (Ident "c" 154)),(ListPattern [(VariablePattern (Ident "x" 154))])]) (SimpleRhs (257,24) (InfixApply (Variable (QualIdent Nothing (Ident "c" 154))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0))) (Variable (QualIdent Nothing (Ident "x" 154)))))) [])),(Equation (258,4) (FunLhs (Ident "showPattern" 151) [(VariablePattern (Ident "c" 156)),(ListPattern [(VariablePattern (Ident "x1" 156)),(VariablePattern (Ident "x2" 156))])]) (SimpleRhs (259,6) (IfThenElse (Apply (Variable (QualIdent (Just "Char") (Ident "isAlpha" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "c" 156)))))) (InfixApply (Variable (QualIdent Nothing (Ident "c" 156))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0))) (Variable (QualIdent Nothing (Ident "x1" 156)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0))) (Variable (QualIdent Nothing (Ident "x2" 156)))))))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "c" 156))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (String "(,)"))) (InfixApply (Literal (String "(")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0))) (Variable (QualIdent Nothing (Ident "x1" 156)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ",")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0))) (Variable (QualIdent Nothing (Ident "x2" 156)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0))) (Variable (QualIdent Nothing (Ident "x1" 156)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "c" 156))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0))) (Variable (QualIdent Nothing (Ident "x2" 156)))))))))) [])),(Equation (264,4) (FunLhs (Ident "showPattern" 151) [(VariablePattern (Ident "c" 158)),(ParenPattern (InfixPattern (VariablePattern (Ident "x1" 158)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "x2" 158)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "x3" 158)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 158))))))]) (SimpleRhs (265,6) (IfThenElse (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "take" 0))) (Literal (Int (Ident "_" 160) 2))) (Variable (QualIdent Nothing (Ident "c" 158)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (String "(,"))) (InfixApply (Literal (String "(")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Literal (String ","))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x1" 158))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "x2" 158))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "x3" 158))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 158)))))))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) (InfixApply (Variable (QualIdent Nothing (Ident "c" 158))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryElems" 0))) (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryVar" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x1" 158))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "x2" 158))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "x3" 158))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 158))))))))))) []))])])),(Equation (269,1) (FunLhs (Ident "showCurryCase" 0) [(VariablePattern (Ident "tf" 161)),(VariablePattern (Ident "b" 161)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Branch" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "LPattern" 0)) [(VariablePattern (Ident "l" 161))])),(VariablePattern (Ident "e" 161))]))]) (SimpleRhs (270,3) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "sceBlanks" 0))) (Variable (QualIdent Nothing (Ident "b" 161)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryLit" 0))) (Variable (QualIdent Nothing (Ident "l" 161)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " -> ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 161)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "b" 161)))) (Variable (QualIdent Nothing (Ident "e" 161)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n"))))))) []))]) ,(FunctionDecl (273,1) (Ident "showCurryFiniteList" 0) [(Equation (273,1) (FunLhs (Ident "showCurryFiniteList" 0) [(VariablePattern (Ident "_" 164)),(VariablePattern (Ident "_" 165)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "_" 166)),(TuplePattern [(LiteralPattern (String "Prelude")),(LiteralPattern (String "[]"))]),(ListPattern [])]))]) (SimpleRhs (273,56) (List []) [])),(Equation (274,1) (FunLhs (Ident "showCurryFiniteList" 0) [(VariablePattern (Ident "tf" 168)),(VariablePattern (Ident "b" 168)),(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "_" 169)),(TuplePattern [(LiteralPattern (String "Prelude")),(LiteralPattern (String ":"))]),(ListPattern [(VariablePattern (Ident "e1" 168)),(VariablePattern (Ident "e2" 168))])]))]) (SimpleRhs (275,3) (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryExpr" 0))) (Variable (QualIdent Nothing (Ident "tf" 168)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Variable (QualIdent Nothing (Ident "b" 168)))) (Variable (QualIdent Nothing (Ident "e1" 168)))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryFiniteList" 0))) (Variable (QualIdent Nothing (Ident "tf" 168)))) (Variable (QualIdent Nothing (Ident "b" 168)))) (Variable (QualIdent Nothing (Ident "e2" 168))))) []))]) ,(FunctionDecl (278,1) (Ident "showCurryStringConstant" 0) [(Equation (278,1) (FunLhs (Ident "showCurryStringConstant" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "_" 172)),(TuplePattern [(LiteralPattern (String "Prelude")),(LiteralPattern (String "[]"))]),(ListPattern [])]))]) (SimpleRhs (278,56) (List []) [])),(Equation (279,1) (FunLhs (Ident "showCurryStringConstant" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "_" 175)),(TuplePattern [(LiteralPattern (String "Prelude")),(LiteralPattern (String ":"))]),(ListPattern [(VariablePattern (Ident "e1" 174)),(VariablePattern (Ident "e2" 174))])]))]) (SimpleRhs (280,4) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCharExpr" 0))) (Variable (QualIdent Nothing (Ident "e1" 174)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "showCurryStringConstant" 0))) (Variable (QualIdent Nothing (Ident "e2" 174))))) []))]) ,(FunctionDecl (282,1) (Ident "showCharExpr" 0) [(Equation (282,1) (FunLhs (Ident "showCharExpr" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Lit" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Charc" 0)) [(VariablePattern (Ident "c" 177))]))]))]) (GuardedRhs [(CondExpr (283,3) (InfixApply (Variable (QualIdent Nothing (Ident "c" 177))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '"'))) (Literal (String "\\\""))),(CondExpr (284,3) (InfixApply (Variable (QualIdent Nothing (Ident "c" 177))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\''))) (Literal (String "\\'"))),(CondExpr (285,3) (InfixApply (Variable (QualIdent Nothing (Ident "c" 177))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\n'))) (Literal (String "\\n"))),(CondExpr (286,3) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "o" 178))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Literal (Int (Ident "_" 180) 32))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "o" 178))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 181) 126)))) (List [(Literal (Char '\\')),(Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "o" 178))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 182) 100))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 183) 48))))),(Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (Paren (InfixApply (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "o" 178))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 184) 100)))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 185) 10))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 186) 48)))))),(Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "o" 178))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 187) 10))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 188) 48)))))])),(CondExpr (288,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (List [(Variable (QualIdent Nothing (Ident "c" 177)))]))] [(PatternDecl (290,4) (VariablePattern (Ident "o" 178)) (SimpleRhs (290,8) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 177)))) []))]))]) ,(TypeSig (292,1) [(Ident "showCurryElems" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))) ,(FunctionDecl (293,1) (Ident "showCurryElems" 0) [(Equation (293,1) (FunLhs (Ident "showCurryElems" 0) [(VariablePattern (Ident "format" 189)),(VariablePattern (Ident "elems" 189))]) (SimpleRhs (294,4) (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Literal (String " "))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "format" 189)))) (Variable (QualIdent Nothing (Ident "elems" 189)))))))) []))]) ,(FunctionDecl (296,1) (Ident "showBracketsIf" 0) [(Equation (296,1) (FunLhs (Ident "showBracketsIf" 0) [(VariablePattern (Ident "nested" 191)),(VariablePattern (Ident "s" 191))]) (SimpleRhs (296,27) (IfThenElse (Variable (QualIdent Nothing (Ident "nested" 191))) (InfixApply (Literal (Char '(')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "s" 191))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ")")))) (Variable (QualIdent Nothing (Ident "s" 191)))) []))]) ,(FunctionDecl (298,1) (Ident "sceBlanks" 0) [(Equation (298,1) (FunLhs (Ident "sceBlanks" 0) [(VariablePattern (Ident "b" 193))]) (SimpleRhs (298,15) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "take" 0))) (Variable (QualIdent Nothing (Ident "b" 193)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "repeat" 0))) (Literal (Char ' '))))) []))]) ,(TypeSig (301,1) [(Ident "isFiniteList" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) ,(FunctionDecl (302,1) (Ident "isFiniteList" 0) [(Equation (302,1) (FunLhs (Ident "isFiniteList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Var" 0)) [(VariablePattern (Ident "_" 196))]))]) (SimpleRhs (302,24) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (303,1) (FunLhs (Ident "isFiniteList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Lit" 0)) [(VariablePattern (Ident "_" 199))]))]) (SimpleRhs (303,24) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (304,1) (FunLhs (Ident "isFiniteList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "_" 202)),(VariablePattern (Ident "name" 201)),(VariablePattern (Ident "args" 201))]))]) (GuardedRhs [(CondExpr (305,3) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "name" 201))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Literal (String "Prelude")),(Literal (String "[]"))])) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "args" 201))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (List []))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))),(CondExpr (306,3) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "name" 201))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Literal (String "Prelude")),(Literal (String ":"))])) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "args" 201)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 204) 2)))) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "isFiniteList" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 201))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 205) 1)))))),(CondExpr (307,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))))] [])),(Equation (308,1) (FunLhs (Ident "isFiniteList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Let" 0)) [(VariablePattern (Ident "_" 207)),(VariablePattern (Ident "_" 208))]))]) (SimpleRhs (308,26) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (309,1) (FunLhs (Ident "isFiniteList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Free" 0)) [(VariablePattern (Ident "_" 211)),(VariablePattern (Ident "_" 212))]))]) (SimpleRhs (309,27) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (310,1) (FunLhs (Ident "isFiniteList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Or" 0)) [(VariablePattern (Ident "_" 215)),(VariablePattern (Ident "_" 216))]))]) (SimpleRhs (310,35) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (311,1) (FunLhs (Ident "isFiniteList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Case" 0)) [(VariablePattern (Ident "_" 219)),(VariablePattern (Ident "_" 220)),(VariablePattern (Ident "_" 221))]))]) (SimpleRhs (311,29) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))]) ,(TypeSig (314,1) [(Ident "isStringConstant" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) ,(FunctionDecl (315,1) (Ident "isStringConstant" 0) [(Equation (315,1) (FunLhs (Ident "isStringConstant" 0) [(VariablePattern (Ident "e" 223))]) (SimpleRhs (315,22) (Case (Variable (QualIdent Nothing (Ident "e" 223))) [(Alt (316,3) (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Comb" 0)) [(VariablePattern (Ident "_" 226)),(VariablePattern (Ident "name" 225)),(VariablePattern (Ident "args" 225))]) (SimpleRhs (316,23) (InfixApply (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "name" 225))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Literal (String "Prelude")),(Literal (String "[]"))])) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "args" 225)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "name" 225))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Tuple [(Literal (String "Prelude")),(Literal (String ":"))])) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "args" 225)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 228) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "isCharConstant" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "args" 225)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "FlatCurryShow") (Ident "isStringConstant" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "args" 225))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 229) 1)))))))))) [])),(Alt (319,3) (VariablePattern (Ident "_" 231)) (SimpleRhs (319,23) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))]) []))]) ,(TypeSig (322,1) [(Ident "isCharConstant" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Expr" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) ,(FunctionDecl (323,1) (Ident "isCharConstant" 0) [(Equation (323,1) (FunLhs (Ident "isCharConstant" 0) [(VariablePattern (Ident "e" 233))]) (SimpleRhs (323,20) (Case (Variable (QualIdent Nothing (Ident "e" 233))) [(Alt (324,3) (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Lit" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "FlatCurry") (Ident "Charc" 0)) [(VariablePattern (Ident "_" 236))]))]) (SimpleRhs (324,20) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Alt (325,3) (VariablePattern (Ident "_" 239)) (SimpleRhs (325,20) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))]) []))]) ]