ParseOk
  ( Module
      SrcSpanInfo
        { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 1 6 1
        , srcInfoPoints =
            [ SrcSpan "tests/examples/Fixity3.hs" 1 1 1 1
            , SrcSpan "tests/examples/Fixity3.hs" 1 1 1 1
            , SrcSpan "tests/examples/Fixity3.hs" 1 1 1 1
            , SrcSpan "tests/examples/Fixity3.hs" 5 1 5 1
            , SrcSpan "tests/examples/Fixity3.hs" 6 1 6 1
            , SrcSpan "tests/examples/Fixity3.hs" 6 1 6 1
            ]
        }
      Nothing
      []
      []
      [ ClassDecl
          SrcSpanInfo
            { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 1 3 15
            , srcInfoPoints =
                [ SrcSpan "tests/examples/Fixity3.hs" 1 1 1 6
                , SrcSpan "tests/examples/Fixity3.hs" 1 13 1 18
                , SrcSpan "tests/examples/Fixity3.hs" 2 3 2 3
                , SrcSpan "tests/examples/Fixity3.hs" 3 3 3 3
                , SrcSpan "tests/examples/Fixity3.hs" 5 1 5 0
                ]
            }
          Nothing
          (DHApp
             SrcSpanInfo
               { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 7 1 12
               , srcInfoPoints = []
               }
             (DHead
                SrcSpanInfo
                  { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 7 1 10
                  , srcInfoPoints = []
                  }
                (Ident
                   SrcSpanInfo
                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 7 1 10
                     , srcInfoPoints = []
                     }
                   "Foo"))
             (UnkindedVar
                SrcSpanInfo
                  { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 11 1 12
                  , srcInfoPoints = []
                  }
                (Ident
                   SrcSpanInfo
                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 11 1 12
                     , srcInfoPoints = []
                     }
                   "f")))
          []
          (Just
             [ ClsDecl
                 SrcSpanInfo
                   { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 3 2 53
                   , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 9 2 11 ]
                   }
                 (TypeSig
                    SrcSpanInfo
                      { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 3 2 53
                      , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 9 2 11 ]
                      }
                    [ Symbol
                        SrcSpanInfo
                          { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 3 2 8
                          , srcInfoPoints =
                              [ SrcSpan "tests/examples/Fixity3.hs" 2 3 2 4
                              , SrcSpan "tests/examples/Fixity3.hs" 2 4 2 7
                              , SrcSpan "tests/examples/Fixity3.hs" 2 7 2 8
                              ]
                          }
                        "<^>"
                    ]
                    (TyForall
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 12 2 53
                         , srcInfoPoints = []
                         }
                       Nothing
                       (Just
                          (CxSingle
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 12 2 28
                               , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 26 2 28 ]
                               }
                             (ClassA
                                SrcSpanInfo
                                  { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 12 2 28
                                  , srcInfoPoints =
                                      [ SrcSpan "tests/examples/Fixity3.hs" 2 26 2 28 ]
                                  }
                                (UnQual
                                   SrcSpanInfo
                                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 12 2 23
                                     , srcInfoPoints = []
                                     }
                                   (Ident
                                      SrcSpanInfo
                                        { srcInfoSpan =
                                            SrcSpan "tests/examples/Fixity3.hs" 2 12 2 23
                                        , srcInfoPoints = []
                                        }
                                      "Applicative"))
                                [ TyVar
                                    SrcSpanInfo
                                      { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 24 2 25
                                      , srcInfoPoints = []
                                      }
                                    (Ident
                                       SrcSpanInfo
                                         { srcInfoSpan =
                                             SrcSpan "tests/examples/Fixity3.hs" 2 24 2 25
                                         , srcInfoPoints = []
                                         }
                                       "f")
                                ])))
                       (TyFun
                          SrcSpanInfo
                            { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 29 2 53
                            , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 33 2 35 ]
                            }
                          (TyApp
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 29 2 32
                               , srcInfoPoints = []
                               }
                             (TyVar
                                SrcSpanInfo
                                  { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 29 2 30
                                  , srcInfoPoints = []
                                  }
                                (Ident
                                   SrcSpanInfo
                                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 29 2 30
                                     , srcInfoPoints = []
                                     }
                                   "f"))
                             (TyVar
                                SrcSpanInfo
                                  { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 31 2 32
                                  , srcInfoPoints = []
                                  }
                                (Ident
                                   SrcSpanInfo
                                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 31 2 32
                                     , srcInfoPoints = []
                                     }
                                   "a")))
                          (TyFun
                             SrcSpanInfo
                               { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 36 2 53
                               , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 47 2 49 ]
                               }
                             (TyApp
                                SrcSpanInfo
                                  { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 36 2 46
                                  , srcInfoPoints = []
                                  }
                                (TyVar
                                   SrcSpanInfo
                                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 36 2 37
                                     , srcInfoPoints = []
                                     }
                                   (Ident
                                      SrcSpanInfo
                                        { srcInfoSpan =
                                            SrcSpan "tests/examples/Fixity3.hs" 2 36 2 37
                                        , srcInfoPoints = []
                                        }
                                      "f"))
                                (TyParen
                                   SrcSpanInfo
                                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 38 2 46
                                     , srcInfoPoints =
                                         [ SrcSpan "tests/examples/Fixity3.hs" 2 38 2 39
                                         , SrcSpan "tests/examples/Fixity3.hs" 2 45 2 46
                                         ]
                                     }
                                   (TyFun
                                      SrcSpanInfo
                                        { srcInfoSpan =
                                            SrcSpan "tests/examples/Fixity3.hs" 2 39 2 45
                                        , srcInfoPoints =
                                            [ SrcSpan "tests/examples/Fixity3.hs" 2 41 2 43 ]
                                        }
                                      (TyVar
                                         SrcSpanInfo
                                           { srcInfoSpan =
                                               SrcSpan "tests/examples/Fixity3.hs" 2 39 2 40
                                           , srcInfoPoints = []
                                           }
                                         (Ident
                                            SrcSpanInfo
                                              { srcInfoSpan =
                                                  SrcSpan "tests/examples/Fixity3.hs" 2 39 2 40
                                              , srcInfoPoints = []
                                              }
                                            "a"))
                                      (TyVar
                                         SrcSpanInfo
                                           { srcInfoSpan =
                                               SrcSpan "tests/examples/Fixity3.hs" 2 44 2 45
                                           , srcInfoPoints = []
                                           }
                                         (Ident
                                            SrcSpanInfo
                                              { srcInfoSpan =
                                                  SrcSpan "tests/examples/Fixity3.hs" 2 44 2 45
                                              , srcInfoPoints = []
                                              }
                                            "b")))))
                             (TyApp
                                SrcSpanInfo
                                  { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 50 2 53
                                  , srcInfoPoints = []
                                  }
                                (TyVar
                                   SrcSpanInfo
                                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 50 2 51
                                     , srcInfoPoints = []
                                     }
                                   (Ident
                                      SrcSpanInfo
                                        { srcInfoSpan =
                                            SrcSpan "tests/examples/Fixity3.hs" 2 50 2 51
                                        , srcInfoPoints = []
                                        }
                                      "f"))
                                (TyVar
                                   SrcSpanInfo
                                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 52 2 53
                                     , srcInfoPoints = []
                                     }
                                   (Ident
                                      SrcSpanInfo
                                        { srcInfoSpan =
                                            SrcSpan "tests/examples/Fixity3.hs" 2 52 2 53
                                        , srcInfoPoints = []
                                        }
                                      "b")))))))
             , ClsDecl
                 SrcSpanInfo
                   { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 3 3 15
                   , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 3 10 3 11 ]
                   }
                 (InfixDecl
                    SrcSpanInfo
                      { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 3 3 15
                      , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 3 10 3 11 ]
                      }
                    (AssocRight
                       SrcSpanInfo
                         { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 3 3 9
                         , srcInfoPoints = []
                         })
                    (Just 4)
                    [ VarOp
                        SrcSpanInfo
                          { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 12 3 15
                          , srcInfoPoints = []
                          }
                        (Symbol
                           SrcSpanInfo
                             { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 12 3 15
                             , srcInfoPoints = []
                             }
                           "<^>")
                    ])
             ])
      , PatBind
          SrcSpanInfo
            { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 1 5 37
            , srcInfoPoints = []
            }
          (PVar
             SrcSpanInfo
               { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 1 5 4
               , srcInfoPoints = []
               }
             (Ident
                SrcSpanInfo
                  { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 1 5 4
                  , srcInfoPoints = []
                  }
                "foo"))
          (UnGuardedRhs
             SrcSpanInfo
               { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 5 5 37
               , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 5 5 5 6 ]
               }
             (InfixApp
                SrcSpanInfo
                  { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 37
                  , srcInfoPoints = []
                  }
                (App
                   SrcSpanInfo
                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 13
                     , srcInfoPoints = []
                     }
                   (Var
                      SrcSpanInfo
                        { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 11
                        , srcInfoPoints = []
                        }
                      (UnQual
                         SrcSpanInfo
                           { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 11
                           , srcInfoPoints = []
                           }
                         (Ident
                            SrcSpanInfo
                              { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 11
                              , srcInfoPoints = []
                              }
                            "pure")))
                   (Lit
                      SrcSpanInfo
                        { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 12 5 13
                        , srcInfoPoints = []
                        }
                      (Int
                         SrcSpanInfo
                           { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 12 5 13
                           , srcInfoPoints = []
                           }
                         1
                         "1")))
                (QVarOp
                   SrcSpanInfo
                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 14 5 17
                     , srcInfoPoints = []
                     }
                   (UnQual
                      SrcSpanInfo
                        { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 14 5 17
                        , srcInfoPoints = []
                        }
                      (Symbol
                         SrcSpanInfo
                           { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 14 5 17
                           , srcInfoPoints = []
                           }
                         "<^>")))
                (InfixApp
                   SrcSpanInfo
                     { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 37
                     , srcInfoPoints = []
                     }
                   (App
                      SrcSpanInfo
                        { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 24
                        , srcInfoPoints = []
                        }
                      (Var
                         SrcSpanInfo
                           { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 22
                           , srcInfoPoints = []
                           }
                         (UnQual
                            SrcSpanInfo
                              { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 22
                              , srcInfoPoints = []
                              }
                            (Ident
                               SrcSpanInfo
                                 { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 22
                                 , srcInfoPoints = []
                                 }
                               "pure")))
                      (Lit
                         SrcSpanInfo
                           { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 23 5 24
                           , srcInfoPoints = []
                           }
                         (Int
                            SrcSpanInfo
                              { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 23 5 24
                              , srcInfoPoints = []
                              }
                            2
                            "2")))
                   (QVarOp
                      SrcSpanInfo
                        { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 25 5 28
                        , srcInfoPoints = []
                        }
                      (UnQual
                         SrcSpanInfo
                           { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 25 5 28
                           , srcInfoPoints = []
                           }
                         (Symbol
                            SrcSpanInfo
                              { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 25 5 28
                              , srcInfoPoints = []
                              }
                            "<^>")))
                   (App
                      SrcSpanInfo
                        { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 29 5 37
                        , srcInfoPoints = []
                        }
                      (Var
                         SrcSpanInfo
                           { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 29 5 33
                           , srcInfoPoints = []
                           }
                         (UnQual
                            SrcSpanInfo
                              { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 29 5 33
                              , srcInfoPoints = []
                              }
                            (Ident
                               SrcSpanInfo
                                 { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 29 5 33
                                 , srcInfoPoints = []
                                 }
                               "pure")))
                      (Var
                         SrcSpanInfo
                           { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 34 5 37
                           , srcInfoPoints =
                               [ SrcSpan "tests/examples/Fixity3.hs" 5 34 5 35
                               , SrcSpan "tests/examples/Fixity3.hs" 5 35 5 36
                               , SrcSpan "tests/examples/Fixity3.hs" 5 36 5 37
                               ]
                           }
                         (UnQual
                            SrcSpanInfo
                              { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 34 5 37
                              , srcInfoPoints =
                                  [ SrcSpan "tests/examples/Fixity3.hs" 5 34 5 35
                                  , SrcSpan "tests/examples/Fixity3.hs" 5 35 5 36
                                  , SrcSpan "tests/examples/Fixity3.hs" 5 36 5 37
                                  ]
                              }
                            (Symbol
                               SrcSpanInfo
                                 { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 35 5 36
                                 , srcInfoPoints = []
                                 }
                               "+")))))))
          Nothing
      ]
  , []
  )