ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 1 46 1 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 1 1 1 1 , SrcSpan "tests/examples/RCategory.hs" 2 1 2 1 , SrcSpan "tests/examples/RCategory.hs" 2 1 2 1 , SrcSpan "tests/examples/RCategory.hs" 5 1 5 1 , SrcSpan "tests/examples/RCategory.hs" 7 1 7 1 , SrcSpan "tests/examples/RCategory.hs" 9 1 9 1 , SrcSpan "tests/examples/RCategory.hs" 10 1 10 1 , SrcSpan "tests/examples/RCategory.hs" 14 1 14 1 , SrcSpan "tests/examples/RCategory.hs" 25 1 25 1 , SrcSpan "tests/examples/RCategory.hs" 32 1 32 1 , SrcSpan "tests/examples/RCategory.hs" 38 1 38 1 , SrcSpan "tests/examples/RCategory.hs" 40 1 40 1 , SrcSpan "tests/examples/RCategory.hs" 43 1 43 1 , SrcSpan "tests/examples/RCategory.hs" 45 1 45 1 , SrcSpan "tests/examples/RCategory.hs" 46 1 46 1 , SrcSpan "tests/examples/RCategory.hs" 46 1 46 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 2 1 2 31 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 2 1 2 7 , SrcSpan "tests/examples/RCategory.hs" 2 26 2 31 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 2 8 2 25 , srcInfoPoints = [] } "Control.RCategory") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 1 1 70 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 1 1 1 13 , SrcSpan "tests/examples/RCategory.hs" 1 26 1 27 , SrcSpan "tests/examples/RCategory.hs" 1 43 1 44 , SrcSpan "tests/examples/RCategory.hs" 1 67 1 70 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 28 1 43 , srcInfoPoints = [] } "ConstraintKinds" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 45 1 66 , srcInfoPoints = [] } "MultiParamTypeClasses" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 5 1 5 25 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 5 1 5 7 , SrcSpan "tests/examples/RCategory.hs" 5 8 5 17 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 5 18 5 25 , srcInfoPoints = [] } "Prelude" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 7 1 7 16 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 7 1 7 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 7 8 7 16 , srcInfoPoints = [] } "GHC.Prim" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 9 1 9 11 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 9 8 9 9 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 9 1 9 7 , srcInfoPoints = [] }) (Just 9) [ VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 9 10 9 11 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 9 10 9 11 , srcInfoPoints = [] } ".") ] , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 1 10 18 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 10 8 10 9 , SrcSpan "tests/examples/RCategory.hs" 10 13 10 14 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 1 10 7 , srcInfoPoints = [] }) (Just 1) [ VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 10 10 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 10 10 13 , srcInfoPoints = [] } ">>>") , VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 15 10 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 15 10 18 , srcInfoPoints = [] } "<<<") ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 1 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 14 1 14 6 , SrcSpan "tests/examples/RCategory.hs" 14 21 14 26 , SrcSpan "tests/examples/RCategory.hs" 15 3 15 3 , SrcSpan "tests/examples/RCategory.hs" 18 3 18 3 , SrcSpan "tests/examples/RCategory.hs" 22 3 22 3 , SrcSpan "tests/examples/RCategory.hs" 25 1 25 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 7 14 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 7 14 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 7 14 16 , srcInfoPoints = [] } "RCategory")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 17 14 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 17 14 20 , srcInfoPoints = [] } "cat"))) [] (Just [ ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 3 15 43 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 15 3 15 7 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 29 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 27 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 25 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 21 , srcInfoPoints = [] } "RCategoryCtxt")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 22 15 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 22 15 25 , srcInfoPoints = [] } "cat"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 26 15 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 26 15 27 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 28 15 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 28 15 29 , srcInfoPoints = [] } "b"))) (Just (KindSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 30 15 43 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 15 30 15 32 ] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 33 15 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 33 15 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 33 15 43 , srcInfoPoints = [] } "Constraint"))))) Nothing , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 3 19 16 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 18 6 18 8 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 3 19 16 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 18 6 18 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 3 18 5 , srcInfoPoints = [] } "id" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 19 16 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 19 8 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 19 6 19 8 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 19 8 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 19 6 19 8 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 18 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 18 22 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 23 18 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 23 18 26 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 27 18 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 27 18 28 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 29 18 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 29 18 30 , srcInfoPoints = [] } "a") ]))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 9 19 16 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 9 19 14 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 9 19 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 9 19 12 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 13 19 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 13 19 14 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 15 19 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 15 19 16 , srcInfoPoints = [] } "a"))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 3 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 22 7 22 9 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 3 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 22 7 22 9 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 3 22 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 22 3 22 4 , SrcSpan "tests/examples/RCategory.hs" 22 4 22 5 , SrcSpan "tests/examples/RCategory.hs" 22 5 22 6 ] } "." ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 10 23 39 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 10 23 9 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 22 10 22 11 , SrcSpan "tests/examples/RCategory.hs" 22 32 22 33 , SrcSpan "tests/examples/RCategory.hs" 22 55 22 56 , SrcSpan "tests/examples/RCategory.hs" 22 78 22 79 , SrcSpan "tests/examples/RCategory.hs" 23 7 23 9 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 11 22 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 11 22 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 11 22 24 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 25 22 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 25 22 28 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 29 22 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 29 22 30 , srcInfoPoints = [] } "b") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 31 22 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 31 22 32 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 34 22 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 34 22 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 34 22 47 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 48 22 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 48 22 51 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 52 22 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 52 22 53 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 54 22 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 54 22 55 , srcInfoPoints = [] } "b") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 57 22 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 57 22 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 57 22 70 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 71 22 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 71 22 74 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 75 22 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 75 22 76 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 77 22 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 77 22 78 , srcInfoPoints = [] } "c") ] ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 23 18 23 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 17 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 15 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 13 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 14 23 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 14 23 15 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 16 23 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 16 23 17 , srcInfoPoints = [] } "c"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 23 29 23 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 26 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 24 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 25 23 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 25 23 26 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 27 23 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 27 23 28 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 32 23 39 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 32 23 37 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 32 23 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 32 23 35 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 36 23 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 36 23 37 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 38 23 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 38 23 39 , srcInfoPoints = [] } "c"))))))) ]) , RulePragmaDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 25 1 30 5 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 25 1 25 10 , SrcSpan "tests/examples/RCategory.hs" 30 2 30 5 ] } [ Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 26 1 27 27 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 26 1 26 16 , SrcSpan "tests/examples/RCategory.hs" 26 17 26 23 , SrcSpan "tests/examples/RCategory.hs" 26 26 26 27 , SrcSpan "tests/examples/RCategory.hs" 27 24 27 25 ] } "identity/left" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 26 24 26 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 26 24 26 25 , srcInfoPoints = [] } "p") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 17 27 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 17 27 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 17 27 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 17 27 19 , srcInfoPoints = [] } "id"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 20 27 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 20 27 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 20 27 21 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 22 27 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 22 27 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 22 27 23 , srcInfoPoints = [] } "p")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 26 27 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 26 27 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 26 27 27 , srcInfoPoints = [] } "p"))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 28 1 29 27 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 28 1 28 17 , SrcSpan "tests/examples/RCategory.hs" 28 25 28 31 , SrcSpan "tests/examples/RCategory.hs" 28 34 28 35 , SrcSpan "tests/examples/RCategory.hs" 29 24 29 25 ] } "identity/right" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 28 32 28 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 28 32 28 33 , srcInfoPoints = [] } "p") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 17 29 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 17 29 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 17 29 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 17 29 18 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 19 29 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 19 29 20 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 19 29 20 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 21 29 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 21 29 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 21 29 23 , srcInfoPoints = [] } "id")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 26 29 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 26 29 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 26 29 27 , srcInfoPoints = [] } "p"))) ] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 1 38 0 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 32 1 32 9 , SrcSpan "tests/examples/RCategory.hs" 32 25 32 30 , SrcSpan "tests/examples/RCategory.hs" 33 3 33 3 , SrcSpan "tests/examples/RCategory.hs" 34 3 34 3 , SrcSpan "tests/examples/RCategory.hs" 35 3 35 3 , SrcSpan "tests/examples/RCategory.hs" 38 1 38 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 19 , srcInfoPoints = [] } "RCategory"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 20 32 24 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 32 20 32 21 , SrcSpan "tests/examples/RCategory.hs" 32 21 32 23 , SrcSpan "tests/examples/RCategory.hs" 32 23 32 24 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 20 32 24 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 32 20 32 21 , SrcSpan "tests/examples/RCategory.hs" 32 21 32 23 , SrcSpan "tests/examples/RCategory.hs" 32 23 32 24 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 20 32 24 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 32 20 32 21 , SrcSpan "tests/examples/RCategory.hs" 32 21 32 23 , SrcSpan "tests/examples/RCategory.hs" 32 23 32 24 ] }))))) (Just [ InsType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 3 33 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 3 33 7 , SrcSpan "tests/examples/RCategory.hs" 33 31 33 32 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 30 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 21 , srcInfoPoints = [] } "RCategoryCtxt"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 22 33 26 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 22 33 23 , SrcSpan "tests/examples/RCategory.hs" 33 23 33 25 , SrcSpan "tests/examples/RCategory.hs" 33 25 33 26 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 22 33 26 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 22 33 23 , SrcSpan "tests/examples/RCategory.hs" 33 23 33 25 , SrcSpan "tests/examples/RCategory.hs" 33 25 33 26 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 22 33 26 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 22 33 23 , SrcSpan "tests/examples/RCategory.hs" 33 23 33 25 , SrcSpan "tests/examples/RCategory.hs" 33 25 33 26 ] })))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 27 33 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 27 33 28 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 29 33 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 29 33 30 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 33 33 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 33 33 34 , SrcSpan "tests/examples/RCategory.hs" 33 34 33 35 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 33 33 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 33 33 34 , SrcSpan "tests/examples/RCategory.hs" 33 34 33 35 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 33 33 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 33 33 34 , SrcSpan "tests/examples/RCategory.hs" 33 34 33 35 ] }))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 3 34 18 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 3 34 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 3 34 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 3 34 5 , srcInfoPoints = [] } "id")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 6 34 18 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 34 6 34 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 8 34 18 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 8 34 18 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 8 34 18 , srcInfoPoints = [] } "Prelude") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 8 34 18 , srcInfoPoints = [] } "id")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 3 35 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 3 35 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 3 35 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 35 3 35 4 , SrcSpan "tests/examples/RCategory.hs" 35 4 35 5 , SrcSpan "tests/examples/RCategory.hs" 35 5 35 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 4 35 5 , srcInfoPoints = [] } ".")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 7 35 20 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 35 7 35 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 9 35 20 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 35 9 35 10 , SrcSpan "tests/examples/RCategory.hs" 35 10 35 19 , SrcSpan "tests/examples/RCategory.hs" 35 19 35 20 ] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 9 35 20 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 35 9 35 10 , SrcSpan "tests/examples/RCategory.hs" 35 10 35 19 , SrcSpan "tests/examples/RCategory.hs" 35 19 35 20 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 10 35 19 , srcInfoPoints = [] } "Prelude") (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 10 35 19 , srcInfoPoints = [] } ".")))) Nothing) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 1 39 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 38 7 38 9 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 1 38 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 38 1 38 2 , SrcSpan "tests/examples/RCategory.hs" 38 2 38 5 , SrcSpan "tests/examples/RCategory.hs" 38 5 38 6 ] } "<<<" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 10 39 39 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 10 39 9 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 38 10 38 11 , SrcSpan "tests/examples/RCategory.hs" 38 32 38 33 , SrcSpan "tests/examples/RCategory.hs" 38 55 38 56 , SrcSpan "tests/examples/RCategory.hs" 38 78 38 79 , SrcSpan "tests/examples/RCategory.hs" 38 93 38 94 , SrcSpan "tests/examples/RCategory.hs" 39 7 39 9 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 11 38 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 11 38 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 11 38 24 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 25 38 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 25 38 28 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 29 38 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 29 38 30 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 31 38 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 31 38 32 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 34 38 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 34 38 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 34 38 47 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 48 38 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 48 38 51 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 52 38 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 52 38 53 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 54 38 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 54 38 55 , srcInfoPoints = [] } "b") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 57 38 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 57 38 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 57 38 70 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 71 38 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 71 38 74 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 75 38 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 75 38 76 , srcInfoPoints = [] } "b") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 77 38 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 77 38 78 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 80 38 93 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 80 38 89 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 80 38 89 , srcInfoPoints = [] } "RCategory")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 90 38 93 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 90 38 93 , srcInfoPoints = [] } "cat") ] ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 39 18 39 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 17 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 15 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 13 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 14 39 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 14 39 15 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 16 39 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 16 39 17 , srcInfoPoints = [] } "c"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 39 29 39 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 26 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 24 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 25 39 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 25 39 26 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 27 39 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 27 39 28 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 32 39 39 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 32 39 37 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 32 39 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 32 39 35 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 36 39 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 36 39 37 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 38 39 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 38 39 39 , srcInfoPoints = [] } "c")))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 1 40 12 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 1 40 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 40 1 40 2 , SrcSpan "tests/examples/RCategory.hs" 40 2 40 5 , SrcSpan "tests/examples/RCategory.hs" 40 5 40 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 2 40 5 , srcInfoPoints = [] } "<<<")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 7 40 12 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 40 7 40 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 9 40 12 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 40 9 40 10 , SrcSpan "tests/examples/RCategory.hs" 40 10 40 11 , SrcSpan "tests/examples/RCategory.hs" 40 11 40 12 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 9 40 12 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 40 9 40 10 , SrcSpan "tests/examples/RCategory.hs" 40 10 40 11 , SrcSpan "tests/examples/RCategory.hs" 40 11 40 12 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 10 40 11 , srcInfoPoints = [] } ".")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 1 44 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 43 7 43 9 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 1 43 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 43 1 43 2 , SrcSpan "tests/examples/RCategory.hs" 43 2 43 5 , SrcSpan "tests/examples/RCategory.hs" 43 5 43 6 ] } ">>>" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 10 44 39 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 10 44 9 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 43 10 43 11 , SrcSpan "tests/examples/RCategory.hs" 43 32 43 33 , SrcSpan "tests/examples/RCategory.hs" 43 55 43 56 , SrcSpan "tests/examples/RCategory.hs" 43 78 43 79 , SrcSpan "tests/examples/RCategory.hs" 43 93 43 94 , SrcSpan "tests/examples/RCategory.hs" 44 7 44 9 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 11 43 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 11 43 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 11 43 24 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 25 43 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 25 43 28 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 29 43 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 29 43 30 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 31 43 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 31 43 32 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 34 43 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 34 43 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 34 43 47 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 48 43 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 48 43 51 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 52 43 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 52 43 53 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 54 43 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 54 43 55 , srcInfoPoints = [] } "b") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 57 43 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 57 43 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 57 43 70 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 71 43 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 71 43 74 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 75 43 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 75 43 76 , srcInfoPoints = [] } "b") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 77 43 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 77 43 78 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 80 43 93 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 80 43 89 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 80 43 89 , srcInfoPoints = [] } "RCategory")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 90 43 93 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 90 43 93 , srcInfoPoints = [] } "cat") ] ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 44 18 44 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 17 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 15 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 13 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 14 44 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 14 44 15 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 16 44 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 16 44 17 , srcInfoPoints = [] } "b"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 44 29 44 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 26 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 24 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 25 44 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 25 44 26 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 27 44 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 27 44 28 , srcInfoPoints = [] } "c"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 32 44 39 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 32 44 37 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 32 44 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 32 44 35 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 36 44 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 36 44 37 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 38 44 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 38 44 39 , srcInfoPoints = [] } "c")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 1 45 16 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 1 45 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 1 45 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 1 45 2 , srcInfoPoints = [] } "f")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 3 45 6 , srcInfoPoints = [] } ">>>") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 7 45 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 7 45 8 , srcInfoPoints = [] } "g") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 9 45 16 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 45 9 45 10 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 11 45 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 11 45 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 11 45 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 11 45 12 , srcInfoPoints = [] } "g"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 13 45 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 13 45 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 13 45 14 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 15 45 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 15 45 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 15 45 16 , srcInfoPoints = [] } "f"))))) Nothing ] ] , [ Comment False (SrcSpan "tests/examples/RCategory.hs" 12 1 12 29) " | A class for categories." , Comment False (SrcSpan "tests/examples/RCategory.hs" 13 1 13 36) " id and (.) must form a monoid." , Comment False (SrcSpan "tests/examples/RCategory.hs" 17 3 17 29) " | the identity morphism" , Comment False (SrcSpan "tests/examples/RCategory.hs" 21 3 21 28) " | morphism composition" , Comment False (SrcSpan "tests/examples/RCategory.hs" 37 1 37 31) " | Right-to-left composition" , Comment False (SrcSpan "tests/examples/RCategory.hs" 42 1 42 31) " | Left-to-right composition" ] )