ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 1 1 15 1 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 1 1 1 1 , SrcSpan "tests/examples/RelaxedDo.hs" 2 1 2 1 , SrcSpan "tests/examples/RelaxedDo.hs" 2 1 2 1 , SrcSpan "tests/examples/RelaxedDo.hs" 4 1 4 1 , SrcSpan "tests/examples/RelaxedDo.hs" 6 1 6 1 , SrcSpan "tests/examples/RelaxedDo.hs" 7 1 7 1 , SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 1 , SrcSpan "tests/examples/RelaxedDo.hs" 15 1 15 1 , SrcSpan "tests/examples/RelaxedDo.hs" 15 1 15 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 2 1 2 18 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 2 1 2 7 , SrcSpan "tests/examples/RelaxedDo.hs" 2 13 2 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 2 8 2 12 , srcInfoPoints = [] } "Main") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 1 1 1 42 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 1 1 1 13 , SrcSpan "tests/examples/RelaxedDo.hs" 1 39 1 42 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 1 14 1 38 , srcInfoPoints = [] } "NondecreasingIndentation" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 4 1 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 4 1 4 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 4 8 4 21 , srcInfoPoints = [] } "Control.Monad" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 1 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 6 6 6 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 1 6 5 , srcInfoPoints = [] } "main" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 9 6 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 9 6 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 9 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 9 6 11 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 13 , SrcSpan "tests/examples/RelaxedDo.hs" 6 13 6 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 13 , SrcSpan "tests/examples/RelaxedDo.hs" 6 13 6 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 13 , SrcSpan "tests/examples/RelaxedDo.hs" 6 13 6 14 ] })))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 1 10 15 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 1 7 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 1 7 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 6 10 15 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 7 6 7 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 8 10 15 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 7 8 7 10 , SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 3 , SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 10 15 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 10 15 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 7 , srcInfoPoints = [] } "when"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 8 8 16 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 8 8 8 9 , SrcSpan "tests/examples/RelaxedDo.hs" 8 15 8 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 10 8 15 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 10 8 11 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 10 8 11 , srcInfoPoints = [] } 2 "2")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 12 8 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 12 8 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 12 8 13 , srcInfoPoints = [] } ">"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 14 8 15 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 14 8 15 , srcInfoPoints = [] } 1 "1"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 17 8 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 17 8 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 17 8 18 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 19 10 15 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 8 19 8 21 , SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 3 , SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 3 , SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 3 , SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 15 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 11 , srcInfoPoints = [] } "putStrLn"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 12 9 15 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 12 9 15 , srcInfoPoints = [] } "a" "a"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 15 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 11 , srcInfoPoints = [] } "putStrLn"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 12 10 15 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 12 10 15 , srcInfoPoints = [] } "b" "b"))) ])) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 1 14 58 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 15 , srcInfoPoints = [] } "nestedDoBlocks")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 16 14 58 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 12 16 12 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 18 14 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 18 12 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 18 12 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 18 12 25 , srcInfoPoints = [] } "getChar"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 26 12 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 26 12 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 26 12 29 , srcInfoPoints = [] } ">>="))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 30 14 58 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 12 30 12 31 , SrcSpan "tests/examples/RelaxedDo.hs" 14 57 14 58 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 31 14 57 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 12 31 12 32 , SrcSpan "tests/examples/RelaxedDo.hs" 12 35 12 37 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 32 12 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 32 12 34 , srcInfoPoints = [] } "c1") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 38 14 57 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 12 38 12 40 , SrcSpan "tests/examples/RelaxedDo.hs" 13 18 13 18 , SrcSpan "tests/examples/RelaxedDo.hs" 14 57 14 57 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 14 57 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 14 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 13 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 13 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 13 25 , srcInfoPoints = [] } "getChar"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 26 13 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 26 13 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 26 13 29 , srcInfoPoints = [] } ">>="))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 30 14 57 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 13 30 13 31 , SrcSpan "tests/examples/RelaxedDo.hs" 14 56 14 57 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 31 14 56 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 13 31 13 32 , SrcSpan "tests/examples/RelaxedDo.hs" 13 35 13 37 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 32 13 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 32 13 34 , srcInfoPoints = [] } "c2") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 38 14 56 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 13 38 13 40 , SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 18 , SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 18 , SrcSpan "tests/examples/RelaxedDo.hs" 14 56 14 56 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 56 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 25 , srcInfoPoints = [] } "getChar"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 26 14 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 26 14 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 26 14 29 , srcInfoPoints = [] } ">>="))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 30 14 56 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 14 30 14 31 , SrcSpan "tests/examples/RelaxedDo.hs" 14 55 14 56 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 31 14 55 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 14 31 14 32 , SrcSpan "tests/examples/RelaxedDo.hs" 14 35 14 37 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 32 14 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 32 14 34 , srcInfoPoints = [] } "c3") ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 38 14 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 38 14 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 38 14 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 38 14 44 , srcInfoPoints = [] } "return"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 45 14 55 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 14 45 14 46 , SrcSpan "tests/examples/RelaxedDo.hs" 14 48 14 49 , SrcSpan "tests/examples/RelaxedDo.hs" 14 51 14 52 , SrcSpan "tests/examples/RelaxedDo.hs" 14 54 14 55 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 46 14 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 46 14 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 46 14 48 , srcInfoPoints = [] } "c1")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 49 14 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 49 14 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 49 14 51 , srcInfoPoints = [] } "c2")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 52 14 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 52 14 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 52 14 54 , srcInfoPoints = [] } "c3")) ]))))) ])))) ]))))) Nothing ] , [] )