ParseOk
  ( Module
      SrcSpanInfo
        { srcInfoSpan =
            SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 7 1
        , srcInfoPoints =
            [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 1
            , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 1
            , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 1
            , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 1
            , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 7 1 7 1
            , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 7 1 7 1
            ]
        }
      Nothing
      []
      []
      [ PatBind
          SrcSpanInfo
            { srcInfoSpan =
                SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 2 21
            , srcInfoPoints =
                [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 9 1 14 ]
            }
          (PVar
             SrcSpanInfo
               { srcInfoSpan =
                   SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 4
               , srcInfoPoints = []
               }
             (Ident
                SrcSpanInfo
                  { srcInfoSpan =
                      SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 4
                  , srcInfoPoints = []
                  }
                "foo"))
          (UnGuardedRhs
             SrcSpanInfo
               { srcInfoSpan =
                   SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 5 1 8
               , srcInfoPoints =
                   [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 5 1 6 ]
               }
             (Var
                SrcSpanInfo
                  { srcInfoSpan =
                      SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 7 1 8
                  , srcInfoPoints = []
                  }
                (UnQual
                   SrcSpanInfo
                     { srcInfoSpan =
                         SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 7 1 8
                     , srcInfoPoints = []
                     }
                   (Ident
                      SrcSpanInfo
                        { srcInfoSpan =
                            SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 7 1 8
                        , srcInfoPoints = []
                        }
                      "x"))))
          (Just
             (BDecls
                SrcSpanInfo
                  { srcInfoSpan =
                      SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 2 21
                  , srcInfoPoints =
                      [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 1 15
                      , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 15 2 15
                      , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 0
                      ]
                  }
                [ PatBind
                    SrcSpanInfo
                      { srcInfoSpan =
                          SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 1 20
                      , srcInfoPoints = []
                      }
                    (PVar
                       SrcSpanInfo
                         { srcInfoSpan =
                             SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 1 16
                         , srcInfoPoints = []
                         }
                       (Ident
                          SrcSpanInfo
                            { srcInfoSpan =
                                SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 1 16
                            , srcInfoPoints = []
                            }
                          "x"))
                    (UnGuardedRhs
                       SrcSpanInfo
                         { srcInfoSpan =
                             SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 17 1 20
                         , srcInfoPoints =
                             [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 17 1 18 ]
                         }
                       (Lit
                          SrcSpanInfo
                            { srcInfoSpan =
                                SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 19 1 20
                            , srcInfoPoints = []
                            }
                          (Int
                             SrcSpanInfo
                               { srcInfoSpan =
                                   SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 19 1 20
                               , srcInfoPoints = []
                               }
                             1
                             "1")))
                    Nothing
                , PatBind
                    SrcSpanInfo
                      { srcInfoSpan =
                          SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 15 2 21
                      , srcInfoPoints = []
                      }
                    (PVar
                       SrcSpanInfo
                         { srcInfoSpan =
                             SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 15 2 16
                         , srcInfoPoints = []
                         }
                       (Ident
                          SrcSpanInfo
                            { srcInfoSpan =
                                SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 15 2 16
                            , srcInfoPoints = []
                            }
                          "z"))
                    (UnGuardedRhs
                       SrcSpanInfo
                         { srcInfoSpan =
                             SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 17 2 21
                         , srcInfoPoints =
                             [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 17 2 18 ]
                         }
                       (Lit
                          SrcSpanInfo
                            { srcInfoSpan =
                                SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 19 2 21
                            , srcInfoPoints = []
                            }
                          (Int
                             SrcSpanInfo
                               { srcInfoSpan =
                                   SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 19 2 21
                               , srcInfoPoints = []
                               }
                             19
                             "19")))
                    Nothing
                ]))
      , PatBind
          SrcSpanInfo
            { srcInfoSpan =
                SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 6
            , srcInfoPoints = []
            }
          (PVar
             SrcSpanInfo
               { srcInfoSpan =
                   SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 2
               , srcInfoPoints = []
               }
             (Ident
                SrcSpanInfo
                  { srcInfoSpan =
                      SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 2
                  , srcInfoPoints = []
                  }
                "y"))
          (UnGuardedRhs
             SrcSpanInfo
               { srcInfoSpan =
                   SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 3 5 6
               , srcInfoPoints =
                   [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 3 5 4 ]
               }
             (Lit
                SrcSpanInfo
                  { srcInfoSpan =
                      SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 5 5 6
                  , srcInfoPoints = []
                  }
                (Int
                   SrcSpanInfo
                     { srcInfoSpan =
                         SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 5 5 6
                     , srcInfoPoints = []
                     }
                   2
                   "2")))
          Nothing
      ]
  , []
  )