==================== Typechecker AST ==================== {Bag(Located (HsBind Var)): [({ } (VarBind (NoExtField) {Var: DumpTypecheckedAst.$tcT} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (1374752024144278257) (NoSourceText)})))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (13654949607623281177) (NoSourceText)})))) ({ } (HsVar (NoExtField) ({ } {Var: DumpTypecheckedAst.$trModule}))))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsStringPrim (NoSourceText) "T"))))))))) ({ } (HsLit (NoExtField) {HsInt{64}Prim (1) (SourceText "1")})))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))))) ,({ } (VarBind (NoExtField) {Var: DumpTypecheckedAst.$tc'MkT} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (10715337633704422415) (NoSourceText)})))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (12411373583424111944) (NoSourceText)})))) ({ } (HsVar (NoExtField) ({ } {Var: DumpTypecheckedAst.$trModule}))))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsStringPrim (NoSourceText) "'MkT"))))))))) ({ } (HsLit (NoExtField) {HsInt{64}Prim (3) (SourceText "3")})))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))))) ,({ } (VarBind (NoExtField) {Var: DumpTypecheckedAst.$tcPeano} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (14073232900889011755) (NoSourceText)})))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (2739668351064589274) (NoSourceText)})))) ({ } (HsVar (NoExtField) ({ } {Var: DumpTypecheckedAst.$trModule}))))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsStringPrim (NoSourceText) "Peano"))))))))) ({ } (HsLit (NoExtField) {HsInt{64}Prim (0) (SourceText "0")})))) ({ } (HsVar (NoExtField) ({ } {Var: GHC.Types.krep$*}))))))) ,({ } (VarBind (NoExtField) {Var: DumpTypecheckedAst.$tc'Zero} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (13760111476013868540) (NoSourceText)})))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (12314848029315386153) (NoSourceText)})))) ({ } (HsVar (NoExtField) ({ } {Var: DumpTypecheckedAst.$trModule}))))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsStringPrim (NoSourceText) "'Zero"))))))))) ({ } (HsLit (NoExtField) {HsInt{64}Prim (0) (SourceText "0")})))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))))) ,({ } (VarBind (NoExtField) {Var: DumpTypecheckedAst.$tc'Succ} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (1143980031331647856) (NoSourceText)})))) ({ } (HsLit (NoExtField) {HsWord{64}Prim (14802086722010293686) (NoSourceText)})))) ({ } (HsVar (NoExtField) ({ } {Var: DumpTypecheckedAst.$trModule}))))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsStringPrim (NoSourceText) "'Succ"))))))))) ({ } (HsLit (NoExtField) {HsInt{64}Prim (0) (SourceText "0")})))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsInt (NoExtField) (IL (SourceText "2") (False) (2))))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsInt (NoExtField) (IL (SourceText "1") (False) (1))))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsInt (NoExtField) (IL (SourceText "0") (False) (0))))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))) ({ } (HsVar (NoExtField) ({ } {Var: GHC.Types.krep$*}))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsVar (NoExtField) ({ } {Var: DumpTypecheckedAst.$tcT}))))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (XExpr (WrapExpr (HsWrap (WpTyApp (TyConApp ({abstract:TyCon}) [])) (HsConLikeOut (NoExtField) ({abstract:ConLike})))))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (XExpr (WrapExpr (HsWrap (WpTyApp (TyConApp ({abstract:TyCon}) [])) (HsConLikeOut (NoExtField) ({abstract:ConLike})))))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (XExpr (WrapExpr (HsWrap (WpTyApp (TyConApp ({abstract:TyCon}) [])) (HsConLikeOut (NoExtField) ({abstract:ConLike})))))) ({ } (HsVar (NoExtField) ({ } {Var: $krep}))))) ({ } (XExpr (WrapExpr (HsWrap (WpTyApp (TyConApp ({abstract:TyCon}) [])) (HsConLikeOut (NoExtField) ({abstract:ConLike})))))))))))))))))))))) ,({ } (VarBind (NoExtField) {Var: $krep} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsVar (NoExtField) ({ } {Var: DumpTypecheckedAst.$tcPeano}))))) ({ } (XExpr (WrapExpr (HsWrap (WpTyApp (TyConApp ({abstract:TyCon}) [])) (HsConLikeOut (NoExtField) ({abstract:ConLike})))))))))) ,({ } (VarBind (NoExtField) {Var: DumpTypecheckedAst.$trModule} ({ } (HsApp (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsStringPrim (NoSourceText) "main"))))))))) ({ } (HsPar (NoExtField) ({ } (HsApp (NoExtField) ({ } (HsConLikeOut (NoExtField) ({abstract:ConLike}))) ({ } (HsLit (NoExtField) (HsStringPrim (NoSourceText) "DumpTypecheckedAst"))))))))))) ,({ DumpTypecheckedAst.hs:18:1-23 } (AbsBinds (NoExtField) [] [] [(ABE (NoExtField) {Var: main} {Var: main} (WpHole) (SpecPrags []))] [({abstract:TcEvBinds})] {Bag(Located (HsBind Var)): [({ DumpTypecheckedAst.hs:18:1-23 } (FunBind (WpHole) ({ DumpTypecheckedAst.hs:18:1-4 } {Var: main}) (MG (MatchGroupTc [] (TyConApp ({abstract:TyCon}) [(TyConApp ({abstract:TyCon}) [])])) ({ DumpTypecheckedAst.hs:18:1-23 } [({ DumpTypecheckedAst.hs:18:1-23 } (Match (NoExtField) (FunRhs ({ DumpTypecheckedAst.hs:18:1-4 } {Name: main}) (Prefix) (NoSrcStrict)) [] (GRHSs (NoExtField) [({ DumpTypecheckedAst.hs:18:6-23 } (GRHS (NoExtField) [] ({ DumpTypecheckedAst.hs:18:8-23 } (HsApp (NoExtField) ({ DumpTypecheckedAst.hs:18:8-15 } (HsVar (NoExtField) ({ } {Var: putStrLn}))) ({ DumpTypecheckedAst.hs:18:17-23 } (HsLit (NoExtField) (HsString (SourceText "\"hello\"") {FastString: "hello"})))))))] ({ } (EmptyLocalBinds (NoExtField))))))]) (FromSource)) []))]} (False)))]}