packages feed

KiCS-0.9.1: src/lib/Curry/Module/Pretty.cy

Module "Pretty"
(Just (Exporting (11,15) [(Export (QualIdent Nothing (Ident "pretty" 0))),(Export (QualIdent Nothing (Ident "Doc" 0))),(Export (QualIdent Nothing (Ident "empty" 0))),(Export (QualIdent Nothing (Ident "text" 0))),(Export (QualIdent Nothing (Ident "linesep" 0))),(Export (QualIdent Nothing (Ident "line" 0))),(Export (QualIdent Nothing (Ident "linebreak" 0))),(Export (QualIdent Nothing (Ident "group" 0))),(Export (QualIdent Nothing (Ident "softline" 0))),(Export (QualIdent Nothing (Ident "softbreak" 0))),(Export (QualIdent Nothing (Ident "nest" 0))),(Export (QualIdent Nothing (Ident "hang" 0))),(Export (QualIdent Nothing (Ident "align" 0))),(Export (QualIdent Nothing (Ident "combine" 0))),(Export (QualIdent Nothing (Ident "<>" 0))),(Export (QualIdent Nothing (Ident "<+>" 0))),(Export (QualIdent Nothing (Ident "<$>" 0))),(Export (QualIdent Nothing (Ident "</>" 0))),(Export (QualIdent Nothing (Ident "<$$>" 0))),(Export (QualIdent Nothing (Ident "<//>" 0))),(Export (QualIdent Nothing (Ident "compose" 0))),(Export (QualIdent Nothing (Ident "hsep" 0))),(Export (QualIdent Nothing (Ident "vsep" 0))),(Export (QualIdent Nothing (Ident "fillSep" 0))),(Export (QualIdent Nothing (Ident "sep" 0))),(Export (QualIdent Nothing (Ident "hcat" 0))),(Export (QualIdent Nothing (Ident "vcat" 0))),(Export (QualIdent Nothing (Ident "fillCat" 0))),(Export (QualIdent Nothing (Ident "cat" 0))),(Export (QualIdent Nothing (Ident "punctuate" 0))),(Export (QualIdent Nothing (Ident "encloseSep" 0))),(Export (QualIdent Nothing (Ident "hEncloseSep" 0))),(Export (QualIdent Nothing (Ident "fillEncloseSep" 0))),(Export (QualIdent Nothing (Ident "list" 0))),(Export (QualIdent Nothing (Ident "tupled" 0))),(Export (QualIdent Nothing (Ident "semiBraces" 0))),(Export (QualIdent Nothing (Ident "enclose" 0))),(Export (QualIdent Nothing (Ident "squotes" 0))),(Export (QualIdent Nothing (Ident "dquotes" 0))),(Export (QualIdent Nothing (Ident "bquotes" 0))),(Export (QualIdent Nothing (Ident "parens" 0))),(Export (QualIdent Nothing (Ident "angles" 0))),(Export (QualIdent Nothing (Ident "braces" 0))),(Export (QualIdent Nothing (Ident "brackets" 0))),(Export (QualIdent Nothing (Ident "char" 0))),(Export (QualIdent Nothing (Ident "string" 0))),(Export (QualIdent Nothing (Ident "int" 0))),(Export (QualIdent Nothing (Ident "float" 0))),(Export (QualIdent Nothing (Ident "lparen" 0))),(Export (QualIdent Nothing (Ident "rparen" 0))),(Export (QualIdent Nothing (Ident "langle" 0))),(Export (QualIdent Nothing (Ident "rangle" 0))),(Export (QualIdent Nothing (Ident "lbrace" 0))),(Export (QualIdent Nothing (Ident "rbrace" 0))),(Export (QualIdent Nothing (Ident "lbracket" 0))),(Export (QualIdent Nothing (Ident "rbracket" 0))),(Export (QualIdent Nothing (Ident "squote" 0))),(Export (QualIdent Nothing (Ident "dquote" 0))),(Export (QualIdent Nothing (Ident "semi" 0))),(Export (QualIdent Nothing (Ident "colon" 0))),(Export (QualIdent Nothing (Ident "comma" 0))),(Export (QualIdent Nothing (Ident "space" 0))),(Export (QualIdent Nothing (Ident "dot" 0))),(Export (QualIdent Nothing (Ident "backslash" 0))),(Export (QualIdent Nothing (Ident "equals" 0)))]))
[(ImportDecl (1,1) "Prelude" False Nothing Nothing)
,(ImportDecl (41,1) "Dequeue" False (Just "Q") Nothing)
,(DataDecl (45,1) (Ident "Doc" 0) [] [(ConstrDecl (45,12) [] (Ident "Doc" 0) [(ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []))])])
,(TypeDecl (177,1) (Ident "Layout" 0) [] (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))
,(TypeDecl (178,1) (Ident "Horizontal" 0) [] (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))
,(TypeDecl (179,1) (Ident "Remaining" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))
,(TypeDecl (180,1) (Ident "Width" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))
,(TypeDecl (181,1) (Ident "Position" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))
,(TypeDecl (182,1) (Ident "StartPosition" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))
,(TypeDecl (183,1) (Ident "EndPosition" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))
,(TypeDecl (184,1) (Ident "Out" 0) [] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Remaining" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Margins" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))
,(TypeDecl (185,1) (Ident "OutGroupPrefix" 0) [] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Horizontal" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Out" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) []))))
,(TypeDecl (186,1) (Ident "Margins" 0) [] (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))
,(DataDecl (188,1) (Ident "Tokens" 0) [] [(ConstrDecl (188,15) [] (Ident "Text" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (189,15) [] (Ident "Line" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (190,15) [] (Ident "Open" 0) [(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (191,15) [] (Ident "Close" 0) [(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (192,15) [] (Ident "Empty" 0) []),(ConstrDecl (193,15) [] (Ident "OpenNest" 0) [(ArrowType (ConstructorType (QualIdent Nothing (Ident "Margins" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Remaining" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Margins" 0)) [])))),(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (194,15) [] (Ident "CloseNest" 0) [(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])])])
,(InfixDecl (43,1) InfixL 1 [(Ident "<>" 0),(Ident "<+>" 0),(Ident "<$>" 0),(Ident "</>" 0),(Ident "<$$>" 0),(Ident "<//>" 0)])
,(FunctionDecl (47,1) (Ident "deDoc" 0) [(Equation (47,1) (FunLhs (Ident "deDoc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Doc" 0)) [(VariablePattern (Ident "d" 2))]))]) (SimpleRhs (47,17) (Variable (QualIdent Nothing (Ident "d" 2))) []))])
,(TypeSig (49,1) [(Ident "empty" 0)] (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))
,(FunctionDecl (50,1) (Ident "empty" 0) [(Equation (50,1) (FunLhs (Ident "empty" 0) []) (SimpleRhs (50,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Literal (String ""))) []))])
,(TypeSig (52,1) [(Ident "text" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (53,1) (Ident "text" 0) [(Equation (53,1) (FunLhs (Ident "text" 0) [(VariablePattern (Ident "s" 6))]) (SimpleRhs (53,10) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Text" 0))) (Variable (QualIdent Nothing (Ident "s" 6)))))) []))])
,(TypeSig (55,1) [(Ident "linesep" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (56,1) (Ident "linesep" 0) [(Equation (56,1) (FunLhs (Ident "linesep" 0) []) (SimpleRhs (56,11) (InfixApply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "Line" 0)))) []))])
,(TypeSig (58,1) [(Ident "line" 0),(Ident "linebreak" 0),(Ident "softline" 0),(Ident "softbreak" 0)] (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))
,(FunctionDecl (59,1) (Ident "line" 0) [(Equation (59,1) (FunLhs (Ident "line" 0) []) (SimpleRhs (59,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "linesep" 0))) (Literal (String " "))) []))])
,(FunctionDecl (60,1) (Ident "linebreak" 0) [(Equation (60,1) (FunLhs (Ident "linebreak" 0) []) (SimpleRhs (60,13) (Apply (Variable (QualIdent (Just "Pretty") (Ident "linesep" 0))) (Literal (String ""))) []))])
,(FunctionDecl (61,1) (Ident "softline" 0) [(Equation (61,1) (FunLhs (Ident "softline" 0) []) (SimpleRhs (61,12) (Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Variable (QualIdent (Just "Pretty") (Ident "line" 0)))) []))])
,(FunctionDecl (62,1) (Ident "softbreak" 0) [(Equation (62,1) (FunLhs (Ident "softbreak" 0) []) (SimpleRhs (62,13) (Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0)))) []))])
,(TypeSig (64,1) [(Ident "group" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (65,1) (Ident "group" 0) [(Equation (65,1) (FunLhs (Ident "group" 0) [(VariablePattern (Ident "d" 18))]) (SimpleRhs (65,11) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (InfixApply (Constructor (QualIdent (Just "Pretty") (Ident "Open" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d" 18)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "Close" 0))))))) []))])
,(TypeSig (67,1) [(Ident "nest" 0),(Ident "hang" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))
,(FunctionDecl (68,1) (Ident "nest" 0) [(Equation (68,1) (FunLhs (Ident "nest" 0) [(VariablePattern (Ident "i" 20)),(VariablePattern (Ident "d" 20))]) (SimpleRhs (68,12) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (InfixApply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "OpenNest" 0))) (Paren (Lambda [(AsPattern (Ident "ms" 22) (ParenPattern (InfixPattern (VariablePattern (Ident "m" 22)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 23))))),(VariablePattern (Ident "_" 24)),(VariablePattern (Ident "_" 25))] (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 22))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "i" 20))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ms" 22))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d" 20)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "CloseNest" 0))))))) []))])
,(FunctionDecl (69,1) (Ident "hang" 0) [(Equation (69,1) (FunLhs (Ident "hang" 0) [(VariablePattern (Ident "i" 26)),(VariablePattern (Ident "d" 26))]) (SimpleRhs (69,12) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (InfixApply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "OpenNest" 0))) (Paren (Lambda [(VariablePattern (Ident "ms" 28)),(VariablePattern (Ident "r" 28)),(VariablePattern (Ident "w" 28))] (InfixApply (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "w" 28))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "r" 28)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "i" 26))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ms" 28))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d" 26)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "CloseNest" 0))))))) []))])
,(TypeSig (71,1) [(Ident "align" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (72,1) (Ident "align" 0) [(Equation (72,1) (FunLhs (Ident "align" 0) []) (SimpleRhs (72,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "hang" 0))) (Literal (Int (Ident "_" 31) 0))) []))])
,(TypeSig (74,1) [(Ident "combine" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))))
,(FunctionDecl (75,1) (Ident "combine" 0) [(Equation (75,1) (FunLhs (Ident "combine" 0) [(VariablePattern (Ident "s" 32)),(VariablePattern (Ident "d1" 32)),(VariablePattern (Ident "d2" 32))]) (SimpleRhs (75,19) (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent Nothing (Ident "d1" 32)))) (Variable (QualIdent Nothing (Ident "d2" 32)))) (Variable (QualIdent Nothing (Ident "s" 32)))) []))])
,(TypeSig (77,1) [(Ident "<>" 0),(Ident "<+>" 0),(Ident "<$>" 0),(Ident "</>" 0),(Ident "<$$>" 0),(Ident "<//>" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))
,(FunctionDecl (78,1) (Ident "<>" 0) [(Equation (78,1) (OpLhs (VariablePattern (Ident "d1" 34)) (Ident "<>" 0) (VariablePattern (Ident "d2" 34))) (SimpleRhs (78,12) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d1" 34)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d2" 34))))))) []))])
,(FunctionDecl (79,1) (Ident "<+>" 0) [(Equation (79,1) (FunLhs (Ident "<+>" 0) []) (SimpleRhs (79,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))) []))])
,(FunctionDecl (80,1) (Ident "<$>" 0) [(Equation (80,1) (FunLhs (Ident "<$>" 0) []) (SimpleRhs (80,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "line" 0)))) []))])
,(FunctionDecl (81,1) (Ident "</>" 0) [(Equation (81,1) (FunLhs (Ident "</>" 0) []) (SimpleRhs (81,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "softline" 0)))) []))])
,(FunctionDecl (82,1) (Ident "<$$>" 0) [(Equation (82,1) (FunLhs (Ident "<$$>" 0) []) (SimpleRhs (82,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0)))) []))])
,(FunctionDecl (83,1) (Ident "<//>" 0) [(Equation (83,1) (FunLhs (Ident "<//>" 0) []) (SimpleRhs (83,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "softbreak" 0)))) []))])
,(TypeSig (85,1) [(Ident "compose" 0)] (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))
,(FunctionDecl (87,1) (Ident "compose" 0) [(Equation (87,1) (FunLhs (Ident "compose" 0) [(VariablePattern (Ident "_" 47)),(ListPattern [])]) (SimpleRhs (87,16) (Variable (QualIdent (Just "Dequeue") (Ident "empty" 0))) [])),(Equation (88,1) (FunLhs (Ident "compose" 0) [(VariablePattern (Ident "op" 49)),(AsPattern (Ident "ds" 49) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 50)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 51)))))]) (SimpleRhs (88,23) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr1" 0))) (Variable (QualIdent Nothing (Ident "op" 49)))) (Variable (QualIdent Nothing (Ident "ds" 49)))) []))])
,(TypeSig (90,1) [(Ident "hsep" 0),(Ident "vsep" 0),(Ident "fillSep" 0),(Ident "sep" 0),(Ident "hcat" 0),(Ident "vcat" 0),(Ident "fillCat" 0),(Ident "cat" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (91,1) (Ident "hsep" 0) [(Equation (91,1) (FunLhs (Ident "hsep" 0) []) (SimpleRhs (91,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<+>" 0)))) []))])
,(FunctionDecl (92,1) (Ident "vsep" 0) [(Equation (92,1) (FunLhs (Ident "vsep" 0) []) (SimpleRhs (92,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<$>" 0)))) []))])
,(FunctionDecl (93,1) (Ident "fillSep" 0) [(Equation (93,1) (FunLhs (Ident "fillSep" 0) []) (SimpleRhs (93,11) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "</>" 0)))) []))])
,(FunctionDecl (94,1) (Ident "sep" 0) [(Equation (94,1) (FunLhs (Ident "sep" 0) []) (SimpleRhs (94,7) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Pretty") (Ident "vsep" 0)))) []))])
,(FunctionDecl (95,1) (Ident "hcat" 0) [(Equation (95,1) (FunLhs (Ident "hcat" 0) []) (SimpleRhs (95,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<>" 0)))) []))])
,(FunctionDecl (96,1) (Ident "vcat" 0) [(Equation (96,1) (FunLhs (Ident "vcat" 0) []) (SimpleRhs (96,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<$$>" 0)))) []))])
,(FunctionDecl (97,1) (Ident "fillCat" 0) [(Equation (97,1) (FunLhs (Ident "fillCat" 0) []) (SimpleRhs (97,11) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<//>" 0)))) []))])
,(FunctionDecl (98,1) (Ident "cat" 0) [(Equation (98,1) (FunLhs (Ident "cat" 0) []) (SimpleRhs (98,7) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Pretty") (Ident "vcat" 0)))) []))])
,(TypeSig (100,1) [(Ident "punctuate" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))))
,(FunctionDecl (101,1) (Ident "punctuate" 0) [(Equation (101,1) (FunLhs (Ident "punctuate" 0) [(VariablePattern (Ident "_" 70)),(ListPattern [])]) (SimpleRhs (101,18) (List []) [])),(Equation (102,1) (FunLhs (Ident "punctuate" 0) [(VariablePattern (Ident "d" 72)),(AsPattern (Ident "ds" 72) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 73)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 74)))))]) (SimpleRhs (102,24) (Apply (Variable (QualIdent Nothing (Ident "go" 75))) (Variable (QualIdent Nothing (Ident "ds" 72)))) [(FunctionDecl (104,3) (Ident "go" 75) [(Equation (104,3) (FunLhs (Ident "go" 75) [(ListPattern [(VariablePattern (Ident "x" 76))])]) (SimpleRhs (104,12) (List [(Variable (QualIdent Nothing (Ident "x" 76)))]) [])),(Equation (105,3) (FunLhs (Ident "go" 75) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 78)) (QualIdent Nothing (Ident ":" 0)) (AsPattern (Ident "xs" 78) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 79)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 80)))))))]) (SimpleRhs (105,21) (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 78))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "d" 72))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "go" 75))) (Variable (QualIdent Nothing (Ident "xs" 78))))) []))])]))])
,(TypeSig (107,1) [(Ident "encloseSep" 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 (108,1) (Ident "encloseSep" 0) [(Equation (108,1) (FunLhs (Ident "encloseSep" 0) [(VariablePattern (Ident "l" 82)),(VariablePattern (Ident "r" 82)),(VariablePattern (Ident "_" 83)),(ListPattern [])]) (SimpleRhs (108,23) (InfixApply (Variable (QualIdent Nothing (Ident "l" 82))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "r" 82)))) [])),(Equation (109,1) (FunLhs (Ident "encloseSep" 0) [(VariablePattern (Ident "l" 85)),(VariablePattern (Ident "r" 85)),(VariablePattern (Ident "s" 85)),(ParenPattern (InfixPattern (VariablePattern (Ident "d" 85)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ds" 85))))]) (SimpleRhs (109,27) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent Nothing (Ident "l" 85)))) (Variable (QualIdent Nothing (Ident "r" 85)))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "cat" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "d" 85))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "s" 85))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))))) (Variable (QualIdent Nothing (Ident "ds" 85))))))))))) []))])
,(TypeSig (111,1) [(Ident "hEncloseSep" 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 (112,1) (Ident "hEncloseSep" 0) [(Equation (112,1) (FunLhs (Ident "hEncloseSep" 0) [(VariablePattern (Ident "l" 87)),(VariablePattern (Ident "r" 87)),(VariablePattern (Ident "_" 88)),(ListPattern [])]) (SimpleRhs (112,24) (InfixApply (Variable (QualIdent Nothing (Ident "l" 87))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "r" 87)))) [])),(Equation (113,1) (FunLhs (Ident "hEncloseSep" 0) [(VariablePattern (Ident "l" 90)),(VariablePattern (Ident "r" 90)),(VariablePattern (Ident "s" 90)),(ParenPattern (InfixPattern (VariablePattern (Ident "d" 90)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ds" 90))))]) (SimpleRhs (113,28) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent Nothing (Ident "l" 90)))) (Variable (QualIdent Nothing (Ident "r" 90)))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "hcat" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "d" 90))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "s" 90))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))))) (Variable (QualIdent Nothing (Ident "ds" 90))))))))))) []))])
,(TypeSig (115,1) [(Ident "fillEncloseSep" 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 (116,1) (Ident "fillEncloseSep" 0) [(Equation (116,1) (FunLhs (Ident "fillEncloseSep" 0) [(VariablePattern (Ident "l" 92)),(VariablePattern (Ident "r" 92)),(VariablePattern (Ident "_" 93)),(ListPattern [])]) (SimpleRhs (116,27) (InfixApply (Variable (QualIdent Nothing (Ident "l" 92))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "r" 92)))) [])),(Equation (117,1) (FunLhs (Ident "fillEncloseSep" 0) [(VariablePattern (Ident "l" 95)),(VariablePattern (Ident "r" 95)),(VariablePattern (Ident "s" 95)),(ParenPattern (InfixPattern (VariablePattern (Ident "d" 95)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ds" 95))))]) (SimpleRhs (118,5) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent Nothing (Ident "l" 95)))) (Variable (QualIdent Nothing (Ident "r" 95)))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "hcat" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "d" 95))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "withSoftBreaks" 96))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "s" 95))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))))) (Variable (QualIdent Nothing (Ident "ds" 95))))))))))))) [(FunctionDecl (120,3) (Ident "withSoftBreaks" 96) [(Equation (120,3) (FunLhs (Ident "withSoftBreaks" 96) [(ListPattern [])]) (SimpleRhs (120,23) (List []) [])),(Equation (121,3) (FunLhs (Ident "withSoftBreaks" 96) [(ListPattern [(VariablePattern (Ident "x" 99))])]) (SimpleRhs (121,24) (List [(Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "x" 99))))))]) [])),(Equation (122,3) (FunLhs (Ident "withSoftBreaks" 96) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 101)) (QualIdent Nothing (Ident ":" 0)) (AsPattern (Ident "xs" 101) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 102)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 103)))))))]) (SimpleRhs (123,7) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 101))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0)))))))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "withSoftBreaks" 96))) (Variable (QualIdent Nothing (Ident "xs" 101)))))) []))])]))])
,(TypeSig (125,1) [(Ident "list" 0),(Ident "tupled" 0),(Ident "semiBraces" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (126,1) (Ident "list" 0) [(Equation (126,1) (FunLhs (Ident "list" 0) []) (SimpleRhs (126,8) (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lbracket" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rbracket" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "comma" 0)))) []))])
,(FunctionDecl (127,1) (Ident "tupled" 0) [(Equation (127,1) (FunLhs (Ident "tupled" 0) []) (SimpleRhs (127,10) (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lparen" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rparen" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "comma" 0)))) []))])
,(FunctionDecl (128,1) (Ident "semiBraces" 0) [(Equation (128,1) (FunLhs (Ident "semiBraces" 0) []) (SimpleRhs (128,14) (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lbrace" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rbrace" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "semi" 0)))) []))])
,(TypeSig (130,1) [(Ident "enclose" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))))
,(FunctionDecl (131,1) (Ident "enclose" 0) [(Equation (131,1) (FunLhs (Ident "enclose" 0) [(VariablePattern (Ident "l" 111)),(VariablePattern (Ident "r" 111)),(VariablePattern (Ident "d" 111))]) (SimpleRhs (131,17) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "l" 111))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "d" 111)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "r" 111)))) []))])
,(TypeSig (133,1) [(Ident "squotes" 0),(Ident "dquotes" 0),(Ident "parens" 0),(Ident "angles" 0),(Ident "braces" 0),(Ident "brackets" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (134,1) (Ident "squotes" 0) [(Equation (134,1) (FunLhs (Ident "squotes" 0) []) (SimpleRhs (134,11) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "squote" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "squote" 0)))) []))])
,(FunctionDecl (135,1) (Ident "dquotes" 0) [(Equation (135,1) (FunLhs (Ident "dquotes" 0) []) (SimpleRhs (135,11) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "dquote" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "dquote" 0)))) []))])
,(FunctionDecl (136,1) (Ident "bquotes" 0) [(Equation (136,1) (FunLhs (Ident "bquotes" 0) []) (SimpleRhs (136,11) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "bquote" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "bquote" 0)))) []))])
,(FunctionDecl (137,1) (Ident "parens" 0) [(Equation (137,1) (FunLhs (Ident "parens" 0) []) (SimpleRhs (137,10) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lparen" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rparen" 0)))) []))])
,(FunctionDecl (138,1) (Ident "angles" 0) [(Equation (138,1) (FunLhs (Ident "angles" 0) []) (SimpleRhs (138,10) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "langle" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rangle" 0)))) []))])
,(FunctionDecl (139,1) (Ident "braces" 0) [(Equation (139,1) (FunLhs (Ident "braces" 0) []) (SimpleRhs (139,10) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lbrace" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rbrace" 0)))) []))])
,(FunctionDecl (140,1) (Ident "brackets" 0) [(Equation (140,1) (FunLhs (Ident "brackets" 0) []) (SimpleRhs (140,12) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lbracket" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rbracket" 0)))) []))])
,(TypeSig (142,1) [(Ident "char" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (143,1) (Ident "char" 0) [(Equation (143,1) (FunLhs (Ident "char" 0) [(VariablePattern (Ident "c" 127))]) (SimpleRhs (143,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (List [(Variable (QualIdent Nothing (Ident "c" 127)))])) []))])
,(TypeSig (145,1) [(Ident "string" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (146,1) (Ident "string" 0) [(Equation (146,1) (FunLhs (Ident "string" 0) []) (SimpleRhs (146,10) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "hcat" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(VariablePattern (Ident "c" 131))] (IfThenElse (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "elem" 0))) (Variable (QualIdent Nothing (Ident "c" 131)))) (List [(Literal (Char '\n')),(Literal (Char '\r'))])) (Variable (QualIdent (Just "Pretty") (Ident "line" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Variable (QualIdent Nothing (Ident "c" 131))))))))) []))])
,(TypeSig (148,1) [(Ident "int" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (149,1) (Ident "int" 0) [(Equation (149,1) (FunLhs (Ident "int" 0) [(VariablePattern (Ident "n" 132))]) (SimpleRhs (149,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 132)))))) []))])
,(TypeSig (151,1) [(Ident "float" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))
,(FunctionDecl (152,1) (Ident "float" 0) [(Equation (152,1) (FunLhs (Ident "float" 0) [(VariablePattern (Ident "x" 134))]) (SimpleRhs (152,11) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "x" 134)))))) []))])
,(TypeSig (154,1) [(Ident "lparen" 0),(Ident "rparen" 0),(Ident "langle" 0),(Ident "rangle" 0),(Ident "lbrace" 0),(Ident "rbrace" 0),(Ident "lbracket" 0),(Ident "rbracket" 0),(Ident "squote" 0),(Ident "dquote" 0),(Ident "bquote" 0),(Ident "semi" 0),(Ident "colon" 0),(Ident "comma" 0),(Ident "space" 0),(Ident "dot" 0),(Ident "backslash" 0),(Ident "equals" 0)] (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))
,(FunctionDecl (157,1) (Ident "lparen" 0) [(Equation (157,1) (FunLhs (Ident "lparen" 0) []) (SimpleRhs (157,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '('))) []))])
,(FunctionDecl (158,1) (Ident "rparen" 0) [(Equation (158,1) (FunLhs (Ident "rparen" 0) []) (SimpleRhs (158,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ')'))) []))])
,(FunctionDecl (159,1) (Ident "langle" 0) [(Equation (159,1) (FunLhs (Ident "langle" 0) []) (SimpleRhs (159,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '<'))) []))])
,(FunctionDecl (160,1) (Ident "rangle" 0) [(Equation (160,1) (FunLhs (Ident "rangle" 0) []) (SimpleRhs (160,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '>'))) []))])
,(FunctionDecl (161,1) (Ident "lbrace" 0) [(Equation (161,1) (FunLhs (Ident "lbrace" 0) []) (SimpleRhs (161,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '{'))) []))])
,(FunctionDecl (162,1) (Ident "rbrace" 0) [(Equation (162,1) (FunLhs (Ident "rbrace" 0) []) (SimpleRhs (162,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '}'))) []))])
,(FunctionDecl (163,1) (Ident "lbracket" 0) [(Equation (163,1) (FunLhs (Ident "lbracket" 0) []) (SimpleRhs (163,12) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '['))) []))])
,(FunctionDecl (164,1) (Ident "rbracket" 0) [(Equation (164,1) (FunLhs (Ident "rbracket" 0) []) (SimpleRhs (164,12) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ']'))) []))])
,(FunctionDecl (165,1) (Ident "squote" 0) [(Equation (165,1) (FunLhs (Ident "squote" 0) []) (SimpleRhs (165,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '\''))) []))])
,(FunctionDecl (166,1) (Ident "dquote" 0) [(Equation (166,1) (FunLhs (Ident "dquote" 0) []) (SimpleRhs (166,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '"'))) []))])
,(FunctionDecl (167,1) (Ident "bquote" 0) [(Equation (167,1) (FunLhs (Ident "bquote" 0) []) (SimpleRhs (167,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '`'))) []))])
,(FunctionDecl (168,1) (Ident "semi" 0) [(Equation (168,1) (FunLhs (Ident "semi" 0) []) (SimpleRhs (168,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ';'))) []))])
,(FunctionDecl (169,1) (Ident "colon" 0) [(Equation (169,1) (FunLhs (Ident "colon" 0) []) (SimpleRhs (169,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ':'))) []))])
,(FunctionDecl (170,1) (Ident "comma" 0) [(Equation (170,1) (FunLhs (Ident "comma" 0) []) (SimpleRhs (170,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ','))) []))])
,(FunctionDecl (171,1) (Ident "space" 0) [(Equation (171,1) (FunLhs (Ident "space" 0) []) (SimpleRhs (171,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ' '))) []))])
,(FunctionDecl (172,1) (Ident "dot" 0) [(Equation (172,1) (FunLhs (Ident "dot" 0) []) (SimpleRhs (172,7) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '.'))) []))])
,(FunctionDecl (173,1) (Ident "backslash" 0) [(Equation (173,1) (FunLhs (Ident "backslash" 0) []) (SimpleRhs (173,13) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '\\'))) []))])
,(FunctionDecl (174,1) (Ident "equals" 0) [(Equation (174,1) (FunLhs (Ident "equals" 0) []) (SimpleRhs (174,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '='))) []))])
,(TypeSig (196,1) [(Ident "normalise" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])))
,(FunctionDecl (197,1) (Ident "normalise" 0) [(Equation (197,1) (FunLhs (Ident "normalise" 0) []) (SimpleRhs (197,13) (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) [(FunctionDecl (199,3) (Ident "go" 173) [(Equation (199,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 174)),(ConstructorPattern (QualIdent (Just "Pretty") (Ident "Empty" 0)) [])]) (SimpleRhs (199,17) (Apply (Variable (QualIdent Nothing (Ident "co" 174))) (Constructor (QualIdent (Just "Pretty") (Ident "Empty" 0)))) [])),(Equation (201,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 176)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Open" 0)) [(VariablePattern (Ident "ts" 176))]))]) (SimpleRhs (201,21) (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "co" 176))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent Nothing (Ident "open" 173)))))) (Variable (QualIdent Nothing (Ident "ts" 176)))) [])),(Equation (202,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 178)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 178))]))]) (SimpleRhs (202,22) (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "co" 178))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "Close" 0)))))) (Variable (QualIdent Nothing (Ident "ts" 178)))) [])),(Equation (203,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 180)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Line" 0)) [(VariablePattern (Ident "s" 180)),(VariablePattern (Ident "ts" 180))]))]) (SimpleRhs (203,23) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "co" 180))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Line" 0))) (Variable (QualIdent Nothing (Ident "s" 180)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Variable (QualIdent Nothing (Ident "ts" 180)))) [])),(Equation (204,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 182)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Text" 0)) [(VariablePattern (Ident "s" 182)),(VariablePattern (Ident "ts" 182))]))]) (SimpleRhs (204,23) (Apply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Text" 0))) (Variable (QualIdent Nothing (Ident "s" 182)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent Nothing (Ident "co" 182)))) (Variable (QualIdent Nothing (Ident "ts" 182)))))) [])),(Equation (205,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 184)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "OpenNest" 0)) [(VariablePattern (Ident "f" 184)),(VariablePattern (Ident "ts" 184))]))]) (SimpleRhs (205,27) (Apply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "OpenNest" 0))) (Variable (QualIdent Nothing (Ident "f" 184)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent Nothing (Ident "co" 184)))) (Variable (QualIdent Nothing (Ident "ts" 184)))))) [])),(Equation (206,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 186)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "CloseNest" 0)) [(VariablePattern (Ident "ts" 186))]))]) (SimpleRhs (206,26) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "CloseNest" 0))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent Nothing (Ident "co" 186)))) (Variable (QualIdent Nothing (Ident "ts" 186)))))) []))]),(FunctionDecl (208,3) (Ident "open" 173) [(Equation (208,3) (FunLhs (Ident "open" 173) [(VariablePattern (Ident "t" 188))]) (SimpleRhs (208,12) (Case (Variable (QualIdent Nothing (Ident "t" 188))) [(Alt (208,22) (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 190))]) (SimpleRhs (208,34) (Variable (QualIdent Nothing (Ident "ts" 190))) [])),(Alt (208,38) (VariablePattern (Ident "_" 193)) (SimpleRhs (208,43) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Open" 0))) (Variable (QualIdent Nothing (Ident "t" 188)))) []))]) []))])]))])
,(FunctionDecl (210,1) (Ident "doc2Tokens" 0) [(Equation (210,1) (FunLhs (Ident "doc2Tokens" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Doc" 0)) [(VariablePattern (Ident "d" 195))]))]) (SimpleRhs (210,22) (Apply (Variable (QualIdent (Just "Pretty") (Ident "normalise" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "d" 195))) (Constructor (QualIdent (Just "Pretty") (Ident "Empty" 0)))))) []))])
,(TypeSig (213,1) [(Ident "pretty" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))
,(FunctionDecl (214,1) (Ident "pretty" 0) [(Equation (214,1) (FunLhs (Ident "pretty" 0) [(VariablePattern (Ident "w" 197)),(VariablePattern (Ident "d" 197))]) (SimpleRhs (214,14) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "doc2Tokens" 0))) (Variable (QualIdent Nothing (Ident "d" 197)))))) (Variable (QualIdent Nothing (Ident "w" 197)))) (Literal (Int (Ident "_" 199) 1))) (Variable (QualIdent Nothing (Ident "w" 197)))) (List [(Literal (Int (Ident "_" 200) 0))])) []))])
,(FunctionDecl (217,1) (Ident "length" 0) [(Equation (217,1) (FunLhs (Ident "length" 0) []) (SimpleRhs (217,10) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "elem" 0))) (Paren (InfixApply (List [(Literal (Int (Ident "_" 203) 5)),(Literal (Int (Ident "_" 204) 6)),(Literal (Int (Ident "_" 205) 7))]) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (EnumFromTo (Literal (Int (Ident "_" 206) 16)) (Literal (Int (Ident "_" 207) 31)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "ord" 0)))))))) []))])
,(TypeSig (219,1) [(Ident "noGroup" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) [])))))
,(FunctionDecl (220,1) (Ident "noGroup" 0) [(Equation (220,1) (FunLhs (Ident "noGroup" 0) [(ConstructorPattern (QualIdent (Just "Pretty") (Ident "Empty" 0)) []),(VariablePattern (Ident "_" 209)),(VariablePattern (Ident "_" 210)),(VariablePattern (Ident "_" 211)),(VariablePattern (Ident "_" 212))]) (SimpleRhs (220,25) (Literal (String "")) [])),(Equation (221,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Text" 0)) [(VariablePattern (Ident "t" 214)),(VariablePattern (Ident "ts" 214))])),(VariablePattern (Ident "w" 214)),(VariablePattern (Ident "p" 214)),(VariablePattern (Ident "r" 214)),(VariablePattern (Ident "ms" 214))]) (SimpleRhs (221,32) (InfixApply (Variable (QualIdent Nothing (Ident "t" 214))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 214)))) (Variable (QualIdent Nothing (Ident "w" 214)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 214))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "l" 215)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 214))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "l" 215)))))) (Variable (QualIdent Nothing (Ident "ms" 214))))) [(PatternDecl (223,3) (VariablePattern (Ident "l" 215)) (SimpleRhs (223,7) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "t" 214)))) []))])),(Equation (224,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Line" 0)) [(VariablePattern (Ident "_" 218)),(VariablePattern (Ident "ts" 217))])),(VariablePattern (Ident "w" 217)),(VariablePattern (Ident "p" 217)),(VariablePattern (Ident "_" 219)),(AsPattern (Ident "ms" 217) (ParenPattern (InfixPattern (VariablePattern (Ident "m" 217)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 220)))))]) (SimpleRhs (225,3) (InfixApply (Literal (Char '\n')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "replicate" 0))) (Variable (QualIdent Nothing (Ident "m" 217)))) (Literal (Char ' '))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 217)))) (Variable (QualIdent Nothing (Ident "w" 217)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 217))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 222) 1))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "w" 217))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "m" 217)))))) (Variable (QualIdent Nothing (Ident "ms" 217)))))) [])),(Equation (226,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Open" 0)) [(VariablePattern (Ident "ts" 223))])),(VariablePattern (Ident "w" 223)),(VariablePattern (Ident "p" 223)),(VariablePattern (Ident "r" 223)),(VariablePattern (Ident "ms" 223))]) (SimpleRhs (226,30) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 223)))) (Variable (QualIdent Nothing (Ident "w" 223)))) (Variable (QualIdent Nothing (Ident "p" 223)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 223))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "r" 223)))))) (Paren (Lambda [(VariablePattern (Ident "_" 226)),(VariablePattern (Ident "c" 225))] (Variable (QualIdent Nothing (Ident "c" 225)))))) (Variable (QualIdent Nothing (Ident "r" 223)))) (Variable (QualIdent Nothing (Ident "ms" 223)))) [])),(Equation (227,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 227))])),(VariablePattern (Ident "w" 227)),(VariablePattern (Ident "p" 227)),(VariablePattern (Ident "r" 227)),(VariablePattern (Ident "ms" 227))]) (SimpleRhs (227,31) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 227)))) (Variable (QualIdent Nothing (Ident "w" 227)))) (Variable (QualIdent Nothing (Ident "p" 227)))) (Variable (QualIdent Nothing (Ident "r" 227)))) (Variable (QualIdent Nothing (Ident "ms" 227)))) [])),(Equation (228,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "OpenNest" 0)) [(VariablePattern (Ident "f" 229)),(VariablePattern (Ident "ts" 229))])),(VariablePattern (Ident "w" 229)),(VariablePattern (Ident "p" 229)),(VariablePattern (Ident "r" 229)),(VariablePattern (Ident "ms" 229))]) (SimpleRhs (228,36) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 229)))) (Variable (QualIdent Nothing (Ident "w" 229)))) (Variable (QualIdent Nothing (Ident "p" 229)))) (Variable (QualIdent Nothing (Ident "r" 229)))) (Paren (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 229))) (Variable (QualIdent Nothing (Ident "ms" 229)))) (Variable (QualIdent Nothing (Ident "r" 229)))) (Variable (QualIdent Nothing (Ident "w" 229)))))) [])),(Equation (229,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "CloseNest" 0)) [(VariablePattern (Ident "ts" 231))])),(VariablePattern (Ident "w" 231)),(VariablePattern (Ident "p" 231)),(VariablePattern (Ident "r" 231)),(VariablePattern (Ident "ms" 231))]) (SimpleRhs (229,35) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 231)))) (Variable (QualIdent Nothing (Ident "w" 231)))) (Variable (QualIdent Nothing (Ident "p" 231)))) (Variable (QualIdent Nothing (Ident "r" 231)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ms" 231)))))) []))])
,(TypeSig (231,1) [(Ident "oneGroup" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "EndPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) [])))))))
,(FunctionDecl (232,1) (Ident "oneGroup" 0) [(Equation (232,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Text" 0)) [(VariablePattern (Ident "t" 233)),(VariablePattern (Ident "ts" 233))])),(VariablePattern (Ident "w" 233)),(VariablePattern (Ident "p" 233)),(VariablePattern (Ident "e" 233)),(VariablePattern (Ident "outGrpPre" 233))]) (SimpleRhs (233,3) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneOne" 0))) (Variable (QualIdent Nothing (Ident "ts" 233)))) (Variable (QualIdent Nothing (Ident "w" 233)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 233))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "l" 234)))))) (Variable (QualIdent Nothing (Ident "e" 233)))) (Paren (Lambda [(VariablePattern (Ident "h" 238)),(VariablePattern (Ident "c" 238))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 233))) (Variable (QualIdent Nothing (Ident "h" 238)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "outText" 234))) (Variable (QualIdent Nothing (Ident "c" 238))))))))) [(PatternDecl (235,3) (VariablePattern (Ident "l" 234)) (SimpleRhs (235,7) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "t" 233)))) [])),(FunctionDecl (236,3) (Ident "outText" 234) [(Equation (236,3) (FunLhs (Ident "outText" 234) [(VariablePattern (Ident "c" 236)),(VariablePattern (Ident "r" 236)),(VariablePattern (Ident "ms" 236))]) (SimpleRhs (236,20) (InfixApply (Variable (QualIdent Nothing (Ident "t" 233))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 236))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 236))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "l" 234)))))) (Variable (QualIdent Nothing (Ident "ms" 236))))) []))])])),(Equation (237,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Line" 0)) [(VariablePattern (Ident "s" 239)),(VariablePattern (Ident "ts" 239))])),(VariablePattern (Ident "w" 239)),(VariablePattern (Ident "p" 239)),(VariablePattern (Ident "e" 239)),(VariablePattern (Ident "outGrpPre" 239))]) (SimpleRhs (238,3) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneOne" 0))) (Variable (QualIdent Nothing (Ident "ts" 239)))) (Variable (QualIdent Nothing (Ident "w" 239)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 239))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "lens" 240)))))) (Variable (QualIdent Nothing (Ident "e" 239)))) (Paren (Lambda [(VariablePattern (Ident "h" 245)),(VariablePattern (Ident "c" 245))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 239))) (Variable (QualIdent Nothing (Ident "h" 245)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "outLine" 240))) (Variable (QualIdent Nothing (Ident "h" 245)))) (Variable (QualIdent Nothing (Ident "c" 245))))))))) [(PatternDecl (240,3) (VariablePattern (Ident "lens" 240)) (SimpleRhs (240,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "s" 239)))) [])),(FunctionDecl (241,3) (Ident "outLine" 240) [(Equation (241,3) (FunLhs (Ident "outLine" 240) [(VariablePattern (Ident "h" 242)),(VariablePattern (Ident "c" 242)),(VariablePattern (Ident "r" 242)),(AsPattern (Ident "ms" 242) (ParenPattern (InfixPattern (VariablePattern (Ident "m" 242)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 243)))))]) (SimpleRhs (242,5) (IfThenElse (Variable (QualIdent Nothing (Ident "h" 242))) (InfixApply (Variable (QualIdent Nothing (Ident "s" 239))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 242))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 242))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "lens" 240)))))) (Variable (QualIdent Nothing (Ident "ms" 242))))) (InfixApply (Literal (Char '\n')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "replicate" 0))) (Variable (QualIdent Nothing (Ident "m" 242)))) (Literal (Char ' '))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 242))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "w" 239))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "m" 242)))))) (Variable (QualIdent Nothing (Ident "ms" 242))))))) []))])])),(Equation (243,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Open" 0)) [(VariablePattern (Ident "ts" 246))])),(VariablePattern (Ident "w" 246)),(VariablePattern (Ident "p" 246)),(VariablePattern (Ident "e" 246)),(VariablePattern (Ident "outGrpPre" 246))]) (SimpleRhs (244,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 246)))) (Variable (QualIdent Nothing (Ident "w" 246)))) (Variable (QualIdent Nothing (Ident "p" 246)))) (Variable (QualIdent Nothing (Ident "e" 246)))) (Variable (QualIdent Nothing (Ident "outGrpPre" 246)))) (Variable (QualIdent (Just "Dequeue") (Ident "empty" 0)))) (Variable (QualIdent Nothing (Ident "p" 246)))) (Paren (Lambda [(VariablePattern (Ident "_" 249)),(VariablePattern (Ident "c" 248))] (Variable (QualIdent Nothing (Ident "c" 248)))))) [])),(Equation (245,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 250))])),(VariablePattern (Ident "w" 250)),(VariablePattern (Ident "p" 250)),(VariablePattern (Ident "e" 250)),(VariablePattern (Ident "outGrpPre" 250))]) (SimpleRhs (245,39) (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 250))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 250))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Variable (QualIdent Nothing (Ident "e" 250)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 250)))) (Variable (QualIdent Nothing (Ident "w" 250)))) (Variable (QualIdent Nothing (Ident "p" 250)))))) [])),(Equation (246,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "OpenNest" 0)) [(VariablePattern (Ident "f" 252)),(VariablePattern (Ident "ts" 252))])),(VariablePattern (Ident "w" 252)),(VariablePattern (Ident "p" 252)),(VariablePattern (Ident "e" 252)),(VariablePattern (Ident "outGrpPre" 252))]) (SimpleRhs (247,3) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 252)))) (Variable (QualIdent Nothing (Ident "w" 252)))) (Variable (QualIdent Nothing (Ident "p" 252)))) (Variable (QualIdent Nothing (Ident "e" 252)))) (Paren (Lambda [(VariablePattern (Ident "h" 254)),(VariablePattern (Ident "c" 254))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 252))) (Variable (QualIdent Nothing (Ident "h" 254)))) (Paren (Lambda [(VariablePattern (Ident "r" 255)),(VariablePattern (Ident "ms" 255))] (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 254))) (Variable (QualIdent Nothing (Ident "r" 255)))) (Paren (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 252))) (Variable (QualIdent Nothing (Ident "ms" 255)))) (Variable (QualIdent Nothing (Ident "r" 255)))) (Variable (QualIdent Nothing (Ident "w" 252)))))))))))) [])),(Equation (248,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "CloseNest" 0)) [(VariablePattern (Ident "ts" 256))])),(VariablePattern (Ident "w" 256)),(VariablePattern (Ident "p" 256)),(VariablePattern (Ident "e" 256)),(VariablePattern (Ident "outGrpPre" 256))]) (SimpleRhs (249,3) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 256)))) (Variable (QualIdent Nothing (Ident "w" 256)))) (Variable (QualIdent Nothing (Ident "p" 256)))) (Variable (QualIdent Nothing (Ident "e" 256)))) (Paren (Lambda [(VariablePattern (Ident "h" 258)),(VariablePattern (Ident "c" 258))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 256))) (Variable (QualIdent Nothing (Ident "h" 258)))) (Paren (Lambda [(VariablePattern (Ident "r" 259)),(VariablePattern (Ident "ms" 259))] (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 258))) (Variable (QualIdent Nothing (Ident "r" 259)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ms" 259)))))))))))) []))])
,(TypeSig (251,1) [(Ident "multiGroup" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "EndPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "StartPosition" 0)) []),(ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) [])])]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "StartPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) []))))))))))
,(FunctionDecl (254,1) (Ident "multiGroup" 0) [(Equation (254,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Text" 0)) [(VariablePattern (Ident "t" 260)),(VariablePattern (Ident "ts" 260))])),(VariablePattern (Ident "w" 260)),(VariablePattern (Ident "p" 260)),(VariablePattern (Ident "e" 260)),(VariablePattern (Ident "outGrpPreOuter" 260)),(VariablePattern (Ident "qs" 260)),(VariablePattern (Ident "s" 260)),(VariablePattern (Ident "outGrpPreInner" 260))]) (SimpleRhs (255,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneMulti" 0))) (Variable (QualIdent Nothing (Ident "ts" 260)))) (Variable (QualIdent Nothing (Ident "w" 260)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 260))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "l" 261)))))) (Variable (QualIdent Nothing (Ident "e" 260)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 260)))) (Variable (QualIdent Nothing (Ident "qs" 260)))) (Variable (QualIdent Nothing (Ident "s" 260)))) (Paren (Lambda [(VariablePattern (Ident "h" 265)),(VariablePattern (Ident "c" 265))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 260))) (Variable (QualIdent Nothing (Ident "h" 265)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "outText" 261))) (Variable (QualIdent Nothing (Ident "c" 265))))))))) [(PatternDecl (258,3) (VariablePattern (Ident "l" 261)) (SimpleRhs (258,7) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "t" 260)))) [])),(FunctionDecl (259,3) (Ident "outText" 261) [(Equation (259,3) (FunLhs (Ident "outText" 261) [(VariablePattern (Ident "c" 263)),(VariablePattern (Ident "r" 263)),(VariablePattern (Ident "ms" 263))]) (SimpleRhs (259,20) (InfixApply (Variable (QualIdent Nothing (Ident "t" 260))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 263))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 263))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "l" 261)))))) (Variable (QualIdent Nothing (Ident "ms" 263))))) []))])])),(Equation (260,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Line" 0)) [(VariablePattern (Ident "s" 266)),(VariablePattern (Ident "ts" 266))])),(VariablePattern (Ident "w" 266)),(VariablePattern (Ident "p" 266)),(VariablePattern (Ident "e" 266)),(VariablePattern (Ident "outGrpPreOuter" 266)),(VariablePattern (Ident "qs" 266)),(VariablePattern (Ident "si" 266)),(VariablePattern (Ident "outGrpPreInner" 266))]) (SimpleRhs (261,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneMulti" 0))) (Variable (QualIdent Nothing (Ident "ts" 266)))) (Variable (QualIdent Nothing (Ident "w" 266)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 266))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "lens" 267)))))) (Variable (QualIdent Nothing (Ident "e" 266)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 266)))) (Variable (QualIdent Nothing (Ident "qs" 266)))) (Variable (QualIdent Nothing (Ident "si" 266)))) (Paren (Lambda [(VariablePattern (Ident "h" 272)),(VariablePattern (Ident "c" 272))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 266))) (Variable (QualIdent Nothing (Ident "h" 272)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "outLine" 267))) (Variable (QualIdent Nothing (Ident "h" 272)))) (Variable (QualIdent Nothing (Ident "c" 272))))))))) [(PatternDecl (264,3) (VariablePattern (Ident "lens" 267)) (SimpleRhs (264,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "s" 266)))) [])),(FunctionDecl (265,3) (Ident "outLine" 267) [(Equation (265,3) (FunLhs (Ident "outLine" 267) [(VariablePattern (Ident "h" 269)),(VariablePattern (Ident "c" 269)),(VariablePattern (Ident "r" 269)),(AsPattern (Ident "ms" 269) (ParenPattern (InfixPattern (VariablePattern (Ident "m" 269)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 270)))))]) (SimpleRhs (266,5) (IfThenElse (Variable (QualIdent Nothing (Ident "h" 269))) (InfixApply (Variable (QualIdent Nothing (Ident "s" 266))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 269))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 269))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "lens" 267)))))) (Variable (QualIdent Nothing (Ident "ms" 269))))) (InfixApply (Literal (Char '\n')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "replicate" 0))) (Variable (QualIdent Nothing (Ident "m" 269)))) (Literal (Char ' '))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 269))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "w" 266))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "m" 269)))))) (Variable (QualIdent Nothing (Ident "ms" 269))))))) []))])])),(Equation (267,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Open" 0)) [(VariablePattern (Ident "ts" 273))])),(VariablePattern (Ident "w" 273)),(VariablePattern (Ident "p" 273)),(VariablePattern (Ident "e" 273)),(VariablePattern (Ident "outGrpPreOuter" 273)),(VariablePattern (Ident "qs" 273)),(VariablePattern (Ident "si" 273)),(VariablePattern (Ident "outGrpPreInner" 273))]) (SimpleRhs (268,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 273)))) (Variable (QualIdent Nothing (Ident "w" 273)))) (Variable (QualIdent Nothing (Ident "p" 273)))) (Variable (QualIdent Nothing (Ident "e" 273)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 273)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "cons" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "si" 273))),(Variable (QualIdent Nothing (Ident "outGrpPreInner" 273)))])) (Variable (QualIdent Nothing (Ident "qs" 273)))))) (Variable (QualIdent Nothing (Ident "p" 273)))) (Paren (Lambda [(VariablePattern (Ident "_" 276)),(VariablePattern (Ident "c" 275))] (Variable (QualIdent Nothing (Ident "c" 275)))))) [])),(Equation (269,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 277))])),(VariablePattern (Ident "w" 277)),(VariablePattern (Ident "p" 277)),(VariablePattern (Ident "e" 277)),(VariablePattern (Ident "outGrpPreOuter" 277)),(VariablePattern (Ident "qs" 277)),(VariablePattern (Ident "si" 277)),(VariablePattern (Ident "outGrpPreInner" 277))]) (SimpleRhs (270,3) (Case (Apply (Variable (QualIdent (Just "Dequeue") (Ident "matchHead" 0))) (Variable (QualIdent Nothing (Ident "qs" 277)))) [(Alt (271,5) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []) (SimpleRhs (271,16) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 277)))) (Variable (QualIdent Nothing (Ident "w" 277)))) (Variable (QualIdent Nothing (Ident "p" 277)))) (Variable (QualIdent Nothing (Ident "e" 277)))) (Paren (Lambda [(VariablePattern (Ident "h" 281)),(VariablePattern (Ident "c" 281))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 277))) (Variable (QualIdent Nothing (Ident "h" 281)))) (Paren (Lambda [(VariablePattern (Ident "ri" 282))] (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 277))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "si" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "ri" 282))))))) (Variable (QualIdent Nothing (Ident "c" 281)))) (Variable (QualIdent Nothing (Ident "ri" 282)))))))))) [])),(Alt (274,5) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(TuplePattern [(TuplePattern [(VariablePattern (Ident "s" 283)),(VariablePattern (Ident "outGrpPre" 283))]),(VariablePattern (Ident "qs'" 283))])]) (SimpleRhs (275,7) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 277)))) (Variable (QualIdent Nothing (Ident "w" 277)))) (Variable (QualIdent Nothing (Ident "p" 277)))) (Variable (QualIdent Nothing (Ident "e" 277)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 277)))) (Variable (QualIdent Nothing (Ident "qs'" 283)))) (Variable (QualIdent Nothing (Ident "s" 283)))) (Paren (Lambda [(VariablePattern (Ident "h" 285)),(VariablePattern (Ident "c" 285))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 283))) (Variable (QualIdent Nothing (Ident "h" 285)))) (Paren (Lambda [(VariablePattern (Ident "ri" 286))] (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 277))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "si" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "ri" 286))))))) (Variable (QualIdent Nothing (Ident "c" 285)))) (Variable (QualIdent Nothing (Ident "ri" 286)))))))))) []))]) [])),(Equation (277,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "OpenNest" 0)) [(VariablePattern (Ident "f" 287)),(VariablePattern (Ident "ts" 287))])),(VariablePattern (Ident "w" 287)),(VariablePattern (Ident "p" 287)),(VariablePattern (Ident "e" 287)),(VariablePattern (Ident "outGrpPreOuter" 287)),(VariablePattern (Ident "qs" 287)),(VariablePattern (Ident "si" 287)),(VariablePattern (Ident "outGrpPreInner" 287))]) (SimpleRhs (278,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 287)))) (Variable (QualIdent Nothing (Ident "w" 287)))) (Variable (QualIdent Nothing (Ident "p" 287)))) (Variable (QualIdent Nothing (Ident "e" 287)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 287)))) (Variable (QualIdent Nothing (Ident "qs" 287)))) (Variable (QualIdent Nothing (Ident "si" 287)))) (Paren (Lambda [(VariablePattern (Ident "h" 289)),(VariablePattern (Ident "c" 289))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 287))) (Variable (QualIdent Nothing (Ident "h" 289)))) (Paren (Lambda [(VariablePattern (Ident "r" 290)),(VariablePattern (Ident "ms" 290))] (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 289))) (Variable (QualIdent Nothing (Ident "r" 290)))) (Paren (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 287))) (Variable (QualIdent Nothing (Ident "ms" 290)))) (Variable (QualIdent Nothing (Ident "r" 290)))) (Variable (QualIdent Nothing (Ident "w" 287)))))))))))) [])),(Equation (280,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "CloseNest" 0)) [(VariablePattern (Ident "ts" 291))])),(VariablePattern (Ident "w" 291)),(VariablePattern (Ident "p" 291)),(VariablePattern (Ident "e" 291)),(VariablePattern (Ident "outGrpPreOuter" 291)),(VariablePattern (Ident "qs" 291)),(VariablePattern (Ident "si" 291)),(VariablePattern (Ident "outGrpPreInner" 291))]) (SimpleRhs (281,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 291)))) (Variable (QualIdent Nothing (Ident "w" 291)))) (Variable (QualIdent Nothing (Ident "p" 291)))) (Variable (QualIdent Nothing (Ident "e" 291)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 291)))) (Variable (QualIdent Nothing (Ident "qs" 291)))) (Variable (QualIdent Nothing (Ident "si" 291)))) (Paren (Lambda [(VariablePattern (Ident "h" 293)),(VariablePattern (Ident "c" 293))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 291))) (Variable (QualIdent Nothing (Ident "h" 293)))) (Paren (Lambda [(VariablePattern (Ident "r" 294)),(VariablePattern (Ident "ms" 294))] (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 293))) (Variable (QualIdent Nothing (Ident "r" 294)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ms" 294)))))))))))) []))])
,(TypeSig (285,1) [(Ident "pruneOne" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "EndPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) [])))))))
,(FunctionDecl (286,1) (Ident "pruneOne" 0) [(Equation (286,1) (FunLhs (Ident "pruneOne" 0) [(VariablePattern (Ident "ts" 295)),(VariablePattern (Ident "w" 295)),(VariablePattern (Ident "p" 295)),(VariablePattern (Ident "e" 295)),(VariablePattern (Ident "outGrpPre" 295))]) (SimpleRhs (287,3) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "p" 295))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Variable (QualIdent Nothing (Ident "e" 295)))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 295)))) (Variable (QualIdent Nothing (Ident "w" 295)))) (Variable (QualIdent Nothing (Ident "p" 295)))) (Variable (QualIdent Nothing (Ident "e" 295)))) (Variable (QualIdent Nothing (Ident "outGrpPre" 295)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 295))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 295)))) (Variable (QualIdent Nothing (Ident "w" 295)))) (Variable (QualIdent Nothing (Ident "p" 295))))))) []))])
,(TypeSig (290,1) [(Ident "pruneMulti" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "EndPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "StartPosition" 0)) []),(ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) [])])]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "StartPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) []))))))))))
,(FunctionDecl (293,1) (Ident "pruneMulti" 0) [(Equation (293,1) (FunLhs (Ident "pruneMulti" 0) [(VariablePattern (Ident "ts" 297)),(VariablePattern (Ident "w" 297)),(VariablePattern (Ident "p" 297)),(VariablePattern (Ident "e" 297)),(VariablePattern (Ident "outGrpPreOuter" 297)),(VariablePattern (Ident "qs" 297)),(VariablePattern (Ident "si" 297)),(VariablePattern (Ident "outGrpPreInner" 297))]) (SimpleRhs (294,3) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "p" 297))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Variable (QualIdent Nothing (Ident "e" 297)))) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 297)))) (Variable (QualIdent Nothing (Ident "w" 297)))) (Variable (QualIdent Nothing (Ident "p" 297)))) (Variable (QualIdent Nothing (Ident "e" 297)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 297)))) (Variable (QualIdent Nothing (Ident "qs" 297)))) (Variable (QualIdent Nothing (Ident "si" 297)))) (Variable (QualIdent Nothing (Ident "outGrpPreInner" 297)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 297))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (Lambda [(VariablePattern (Ident "r" 299))] (Apply (Paren (Case (Apply (Variable (QualIdent (Just "Dequeue") (Ident "matchLast" 0))) (Variable (QualIdent Nothing (Ident "qs" 297)))) [(Alt (297,23) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []) (SimpleRhs (297,34) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneOne" 0))) (Variable (QualIdent Nothing (Ident "ts" 297)))) (Variable (QualIdent Nothing (Ident "w" 297)))) (Variable (QualIdent Nothing (Ident "p" 297)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "si" 297))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "r" 299)))))) (Variable (QualIdent Nothing (Ident "outGrpPreInner" 297)))) [])),(Alt (298,23) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(TuplePattern [(TuplePattern [(VariablePattern (Ident "s" 302)),(VariablePattern (Ident "outGrpPre" 302))]),(VariablePattern (Ident "qs'" 302))])]) (SimpleRhs (299,25) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneMulti" 0))) (Variable (QualIdent Nothing (Ident "ts" 297)))) (Variable (QualIdent Nothing (Ident "w" 297)))) (Variable (QualIdent Nothing (Ident "p" 297)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "s" 302))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "r" 299)))))) (Variable (QualIdent Nothing (Ident "outGrpPre" 302)))) (Variable (QualIdent Nothing (Ident "qs'" 302)))) (Variable (QualIdent Nothing (Ident "si" 297)))) (Variable (QualIdent Nothing (Ident "outGrpPreInner" 297)))) []))])) (Variable (QualIdent Nothing (Ident "r" 299)))))))) []))])
]