ParseOk
  ( Module
      SrcSpanInfo
        { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 1 1 9 1
        , srcInfoPoints =
            [ SrcSpan "tests/examples/LambdaCase.hs" 1 1 1 1
            , SrcSpan "tests/examples/LambdaCase.hs" 2 1 2 1
            , SrcSpan "tests/examples/LambdaCase.hs" 2 1 2 1
            , SrcSpan "tests/examples/LambdaCase.hs" 4 1 4 1
            , SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 1
            , SrcSpan "tests/examples/LambdaCase.hs" 9 1 9 1
            , SrcSpan "tests/examples/LambdaCase.hs" 9 1 9 1
            ]
        }
      (Just
         (ModuleHead
            SrcSpanInfo
              { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 2 1 2 24
              , srcInfoPoints =
                  [ SrcSpan "tests/examples/LambdaCase.hs" 2 1 2 7
                  , SrcSpan "tests/examples/LambdaCase.hs" 2 19 2 24
                  ]
              }
            (ModuleName
               SrcSpanInfo
                 { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 2 8 2 18
                 , srcInfoPoints = []
                 }
               "LambdaCase")
            Nothing
            Nothing))
      [ LanguagePragma
          SrcSpanInfo
            { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 1 1 1 28
            , srcInfoPoints =
                [ SrcSpan "tests/examples/LambdaCase.hs" 1 1 1 13
                , SrcSpan "tests/examples/LambdaCase.hs" 1 25 1 28
                ]
            }
          [ Ident
              SrcSpanInfo
                { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 1 14 1 24
                , srcInfoPoints = []
                }
              "LambdaCase"
          ]
      ]
      []
      [ PatBind
          SrcSpanInfo
            { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 1 6 22
            , srcInfoPoints = []
            }
          (PVar
             SrcSpanInfo
               { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 1 4 4
               , srcInfoPoints = []
               }
             (Ident
                SrcSpanInfo
                  { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 1 4 4
                  , srcInfoPoints = []
                  }
                "foo"))
          (UnGuardedRhs
             SrcSpanInfo
               { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 5 6 22
               , srcInfoPoints =
                   [ SrcSpan "tests/examples/LambdaCase.hs" 4 5 4 6 ]
               }
             (LCase
                SrcSpanInfo
                  { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 7 6 22
                  , srcInfoPoints =
                      [ SrcSpan "tests/examples/LambdaCase.hs" 4 7 4 8
                      , SrcSpan "tests/examples/LambdaCase.hs" 4 8 4 12
                      , SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 9
                      , SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 9
                      , SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 0
                      ]
                  }
                [ Alt
                    SrcSpanInfo
                      { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 22
                      , srcInfoPoints = []
                      }
                    (PApp
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 16
                         , srcInfoPoints = []
                         }
                       (UnQual
                          SrcSpanInfo
                            { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 16
                            , srcInfoPoints = []
                            }
                          (Ident
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 16
                               , srcInfoPoints = []
                               }
                             "Nothing"))
                       [])
                    (UnGuardedRhs
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 17 5 22
                         , srcInfoPoints =
                             [ SrcSpan "tests/examples/LambdaCase.hs" 5 17 5 19 ]
                         }
                       (Var
                          SrcSpanInfo
                            { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 20 5 22
                            , srcInfoPoints = []
                            }
                          (UnQual
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 20 5 22
                               , srcInfoPoints = []
                               }
                             (Ident
                                SrcSpanInfo
                                  { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 20 5 22
                                  , srcInfoPoints = []
                                  }
                                "e1"))))
                    Nothing
                , Alt
                    SrcSpanInfo
                      { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 22
                      , srcInfoPoints = []
                      }
                    (PApp
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 16
                         , srcInfoPoints = []
                         }
                       (UnQual
                          SrcSpanInfo
                            { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 13
                            , srcInfoPoints = []
                            }
                          (Ident
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 13
                               , srcInfoPoints = []
                               }
                             "Just"))
                       [ PVar
                           SrcSpanInfo
                             { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 14 6 16
                             , srcInfoPoints = []
                             }
                           (Ident
                              SrcSpanInfo
                                { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 14 6 16
                                , srcInfoPoints = []
                                }
                              "e2")
                       ])
                    (UnGuardedRhs
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 17 6 22
                         , srcInfoPoints =
                             [ SrcSpan "tests/examples/LambdaCase.hs" 6 17 6 19 ]
                         }
                       (Var
                          SrcSpanInfo
                            { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 20 6 22
                            , srcInfoPoints = []
                            }
                          (UnQual
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 20 6 22
                               , srcInfoPoints = []
                               }
                             (Ident
                                SrcSpanInfo
                                  { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 20 6 22
                                  , srcInfoPoints = []
                                  }
                                "e2"))))
                    Nothing
                ]))
          Nothing
      , PatBind
          SrcSpanInfo
            { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 30
            , srcInfoPoints = []
            }
          (PVar
             SrcSpanInfo
               { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 4
               , srcInfoPoints = []
               }
             (Ident
                SrcSpanInfo
                  { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 4
                  , srcInfoPoints = []
                  }
                "bar"))
          (UnGuardedRhs
             SrcSpanInfo
               { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 5 8 30
               , srcInfoPoints =
                   [ SrcSpan "tests/examples/LambdaCase.hs" 8 5 8 6 ]
               }
             (LCase
                SrcSpanInfo
                  { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 7 8 30
                  , srcInfoPoints =
                      [ SrcSpan "tests/examples/LambdaCase.hs" 8 7 8 8
                      , SrcSpan "tests/examples/LambdaCase.hs" 8 12 8 16
                      , SrcSpan "tests/examples/LambdaCase.hs" 8 17 8 18
                      , SrcSpan "tests/examples/LambdaCase.hs" 8 29 8 30
                      ]
                  }
                [ Alt
                    SrcSpanInfo
                      { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 19 8 28
                      , srcInfoPoints = []
                      }
                    (PWildCard
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 19 8 20
                         , srcInfoPoints = []
                         })
                    (UnGuardedRhs
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 21 8 28
                         , srcInfoPoints =
                             [ SrcSpan "tests/examples/LambdaCase.hs" 8 21 8 23 ]
                         }
                       (Con
                          SrcSpanInfo
                            { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 24 8 28
                            , srcInfoPoints = []
                            }
                          (UnQual
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 24 8 28
                               , srcInfoPoints = []
                               }
                             (Ident
                                SrcSpanInfo
                                  { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 24 8 28
                                  , srcInfoPoints = []
                                  }
                                "True"))))
                    Nothing
                ]))
          Nothing
      ]
  , []
  )