ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 1 1 16 1 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 1 1 1 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 2 1 2 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 2 1 2 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 4 1 4 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 6 1 6 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 7 1 7 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 11 1 11 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 12 1 12 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 14 1 14 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 15 1 15 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 16 1 16 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 16 1 16 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 2 1 2 7 , SrcSpan "tests/examples/UnicodeSyntax.hs" 2 22 2 27 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 2 8 2 21 , srcInfoPoints = [] } "UnicodeSyntax") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 1 1 1 47 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 1 1 1 13 , SrcSpan "tests/examples/UnicodeSyntax.hs" 1 27 1 28 , SrcSpan "tests/examples/UnicodeSyntax.hs" 1 44 1 47 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 1 14 1 27 , srcInfoPoints = [] } "UnicodeSyntax" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 1 29 1 43 , srcInfoPoints = [] } "ExplicitForAll" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 1 4 36 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 4 1 4 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 8 4 26 , srcInfoPoints = [] } "System.Environment" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 27 4 36 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 4 27 4 28 , SrcSpan "tests/examples/UnicodeSyntax.hs" 4 35 4 36 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 28 4 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 28 4 35 , srcInfoPoints = [] } "getArgs") ]) } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 1 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 6 6 6 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 1 6 5 , srcInfoPoints = [] } "main" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 8 6 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 8 6 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 8 6 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 8 6 10 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 12 , SrcSpan "tests/examples/UnicodeSyntax.hs" 6 12 6 13 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 12 , SrcSpan "tests/examples/UnicodeSyntax.hs" 6 12 6 13 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 12 , SrcSpan "tests/examples/UnicodeSyntax.hs" 6 12 6 13 ] })))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 1 9 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 1 7 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 1 7 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 6 9 17 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 7 6 7 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 8 9 17 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 7 8 7 10 , SrcSpan "tests/examples/UnicodeSyntax.hs" 8 3 8 3 , SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 3 , SrcSpan "tests/examples/UnicodeSyntax.hs" 11 1 11 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 3 8 15 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 8 6 8 7 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 3 8 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 3 8 5 , srcInfoPoints = [] } "as")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 8 8 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 8 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 8 8 15 , srcInfoPoints = [] } "getArgs"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 17 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 8 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 9 9 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 9 9 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 9 9 10 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 11 9 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 11 9 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 11 9 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 11 9 15 , srcInfoPoints = [] } "test"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 16 9 17 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 16 9 17 , srcInfoPoints = [] } 0 "0")))) ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 1 11 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 11 6 11 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 1 11 5 , srcInfoPoints = [] } "test" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 8 11 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 11 12 11 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 8 11 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 8 11 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 8 11 11 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 14 11 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 14 11 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 14 11 18 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 1 12 20 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 1 12 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 1 12 5 , srcInfoPoints = [] } "test") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 6 12 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 6 12 7 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 8 12 20 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 12 8 12 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 20 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 11 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 11 12 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 11 12 12 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 11 12 12 , srcInfoPoints = [] } "*"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 12 12 13 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 12 12 13 , srcInfoPoints = [] } 5 "5"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 14 12 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 14 12 16 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 14 12 16 , srcInfoPoints = [] } "=="))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 17 12 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 17 12 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 17 12 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 17 12 18 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 18 12 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 18 12 19 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 18 12 19 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 19 12 20 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 19 12 20 , srcInfoPoints = [] } 8 "8"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 1 14 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 14 5 14 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 1 14 4 , srcInfoPoints = [] } "id1" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 7 14 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 14 7 14 8 , SrcSpan "tests/examples/UnicodeSyntax.hs" 14 11 14 12 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 9 14 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 9 14 10 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 13 14 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 14 15 14 16 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 13 14 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 13 14 14 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 17 14 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 17 14 18 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 1 15 10 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 1 15 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 1 15 4 , srcInfoPoints = [] } "id1") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 5 15 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 5 15 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 7 15 10 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 15 7 15 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 9 15 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 9 15 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 9 15 10 , srcInfoPoints = [] } "x")))) Nothing ] ] , [] )