ParseOk
  ( Module
      SrcSpanInfo
        { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 1 1 4 1
        , srcInfoPoints =
            [ SrcSpan "tests/examples/ParenFunBind.hs" 1 1 1 1
            , SrcSpan "tests/examples/ParenFunBind.hs" 1 1 1 1
            , SrcSpan "tests/examples/ParenFunBind.hs" 3 1 3 1
            , SrcSpan "tests/examples/ParenFunBind.hs" 4 1 4 1
            , SrcSpan "tests/examples/ParenFunBind.hs" 4 1 4 1
            ]
        }
      (Just
         (ModuleHead
            SrcSpanInfo
              { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 1 1 1 26
              , srcInfoPoints =
                  [ SrcSpan "tests/examples/ParenFunBind.hs" 1 1 1 7
                  , SrcSpan "tests/examples/ParenFunBind.hs" 1 21 1 26
                  ]
              }
            (ModuleName
               SrcSpanInfo
                 { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 1 8 1 20
                 , srcInfoPoints = []
                 }
               "ParenFunBind")
            Nothing
            Nothing))
      []
      []
      [ FunBind
          SrcSpanInfo
            { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 1 3 18
            , srcInfoPoints = []
            }
          [ Match
              SrcSpanInfo
                { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 1 3 18
                , srcInfoPoints =
                    [ SrcSpan "tests/examples/ParenFunBind.hs" 3 1 3 2
                    , SrcSpan "tests/examples/ParenFunBind.hs" 3 7 3 8
                    ]
                }
              (Ident
                 SrcSpanInfo
                   { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 2 3 5
                   , srcInfoPoints = []
                   }
                 "foo")
              [ PVar
                  SrcSpanInfo
                    { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 6 3 7
                    , srcInfoPoints = []
                    }
                  (Ident
                     SrcSpanInfo
                       { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 6 3 7
                       , srcInfoPoints = []
                       }
                     "x")
              , PVar
                  SrcSpanInfo
                    { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 9 3 10
                    , srcInfoPoints = []
                    }
                  (Ident
                     SrcSpanInfo
                       { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 9 3 10
                       , srcInfoPoints = []
                       }
                     "y")
              ]
              (UnGuardedRhs
                 SrcSpanInfo
                   { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 11 3 18
                   , srcInfoPoints =
                       [ SrcSpan "tests/examples/ParenFunBind.hs" 3 11 3 12 ]
                   }
                 (InfixApp
                    SrcSpanInfo
                      { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 13 3 18
                      , srcInfoPoints = []
                      }
                    (Var
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 13 3 14
                         , srcInfoPoints = []
                         }
                       (UnQual
                          SrcSpanInfo
                            { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 13 3 14
                            , srcInfoPoints = []
                            }
                          (Ident
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 13 3 14
                               , srcInfoPoints = []
                               }
                             "x")))
                    (QVarOp
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 15 3 16
                         , srcInfoPoints = []
                         }
                       (UnQual
                          SrcSpanInfo
                            { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 15 3 16
                            , srcInfoPoints = []
                            }
                          (Symbol
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 15 3 16
                               , srcInfoPoints = []
                               }
                             "+")))
                    (Var
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 17 3 18
                         , srcInfoPoints = []
                         }
                       (UnQual
                          SrcSpanInfo
                            { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 17 3 18
                            , srcInfoPoints = []
                            }
                          (Ident
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 17 3 18
                               , srcInfoPoints = []
                               }
                             "y")))))
              Nothing
          ]
      ]
  , []
  )