ParseOk
  ( Module
      SrcSpanInfo
        { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 1 2 1
        , srcInfoPoints =
            [ SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 1
            , SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 1
            , SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 1
            , SrcSpan "tests/examples/EmptyContext.hs" 2 1 2 1
            , SrcSpan "tests/examples/EmptyContext.hs" 2 1 2 1
            ]
        }
      Nothing
      []
      []
      [ TypeSig
          SrcSpanInfo
            { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 23
            , srcInfoPoints =
                [ SrcSpan "tests/examples/EmptyContext.hs" 1 11 1 13 ]
            }
          [ Ident
              SrcSpanInfo
                { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 10
                , srcInfoPoints = []
                }
              "happyThen"
          ]
          (TyForall
             SrcSpanInfo
               { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 14 1 23
               , srcInfoPoints = []
               }
             Nothing
             (Just
                (CxEmpty
                   SrcSpanInfo
                     { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 14 1 19
                     , srcInfoPoints =
                         [ SrcSpan "tests/examples/EmptyContext.hs" 1 14 1 15
                         , SrcSpan "tests/examples/EmptyContext.hs" 1 15 1 16
                         , SrcSpan "tests/examples/EmptyContext.hs" 1 17 1 19
                         ]
                     }))
             (TyApp
                SrcSpanInfo
                  { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 20 1 23
                  , srcInfoPoints = []
                  }
                (TyCon
                   SrcSpanInfo
                     { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 20 1 21
                     , srcInfoPoints = []
                     }
                   (UnQual
                      SrcSpanInfo
                        { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 20 1 21
                        , srcInfoPoints = []
                        }
                      (Ident
                         SrcSpanInfo
                           { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 20 1 21
                           , srcInfoPoints = []
                           }
                         "P")))
                (TyVar
                   SrcSpanInfo
                     { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 22 1 23
                     , srcInfoPoints = []
                     }
                   (Ident
                      SrcSpanInfo
                        { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 22 1 23
                        , srcInfoPoints = []
                        }
                      "a"))))
      ]
  , []
  )