ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 1 1 460 1 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 1 1 1 1 , SrcSpan "tests/examples/DerivingVia.hs" 2 1 2 1 , SrcSpan "tests/examples/DerivingVia.hs" 3 1 3 1 , SrcSpan "tests/examples/DerivingVia.hs" 4 1 4 1 , SrcSpan "tests/examples/DerivingVia.hs" 5 1 5 1 , SrcSpan "tests/examples/DerivingVia.hs" 6 1 6 1 , SrcSpan "tests/examples/DerivingVia.hs" 7 1 7 1 , SrcSpan "tests/examples/DerivingVia.hs" 8 1 8 1 , SrcSpan "tests/examples/DerivingVia.hs" 9 1 9 1 , SrcSpan "tests/examples/DerivingVia.hs" 10 1 10 1 , SrcSpan "tests/examples/DerivingVia.hs" 11 1 11 1 , SrcSpan "tests/examples/DerivingVia.hs" 12 1 12 1 , SrcSpan "tests/examples/DerivingVia.hs" 13 1 13 1 , SrcSpan "tests/examples/DerivingVia.hs" 14 1 14 1 , SrcSpan "tests/examples/DerivingVia.hs" 15 1 15 1 , SrcSpan "tests/examples/DerivingVia.hs" 16 1 16 1 , SrcSpan "tests/examples/DerivingVia.hs" 17 1 17 1 , SrcSpan "tests/examples/DerivingVia.hs" 18 1 18 1 , SrcSpan "tests/examples/DerivingVia.hs" 19 1 19 1 , SrcSpan "tests/examples/DerivingVia.hs" 20 1 20 1 , SrcSpan "tests/examples/DerivingVia.hs" 20 1 20 1 , SrcSpan "tests/examples/DerivingVia.hs" 22 1 22 1 , SrcSpan "tests/examples/DerivingVia.hs" 23 1 23 1 , SrcSpan "tests/examples/DerivingVia.hs" 24 1 24 1 , SrcSpan "tests/examples/DerivingVia.hs" 25 1 25 1 , SrcSpan "tests/examples/DerivingVia.hs" 26 1 26 1 , SrcSpan "tests/examples/DerivingVia.hs" 27 1 27 1 , SrcSpan "tests/examples/DerivingVia.hs" 28 1 28 1 , SrcSpan "tests/examples/DerivingVia.hs" 29 1 29 1 , SrcSpan "tests/examples/DerivingVia.hs" 30 1 30 1 , SrcSpan "tests/examples/DerivingVia.hs" 32 1 32 1 , SrcSpan "tests/examples/DerivingVia.hs" 33 1 33 1 , SrcSpan "tests/examples/DerivingVia.hs" 34 1 34 1 , SrcSpan "tests/examples/DerivingVia.hs" 36 1 36 1 , SrcSpan "tests/examples/DerivingVia.hs" 42 1 42 1 , SrcSpan "tests/examples/DerivingVia.hs" 50 1 50 1 , SrcSpan "tests/examples/DerivingVia.hs" 52 1 52 1 , SrcSpan "tests/examples/DerivingVia.hs" 55 1 55 1 , SrcSpan "tests/examples/DerivingVia.hs" 58 1 58 1 , SrcSpan "tests/examples/DerivingVia.hs" 66 1 66 1 , SrcSpan "tests/examples/DerivingVia.hs" 69 1 69 1 , SrcSpan "tests/examples/DerivingVia.hs" 72 1 72 1 , SrcSpan "tests/examples/DerivingVia.hs" 74 1 74 1 , SrcSpan "tests/examples/DerivingVia.hs" 75 1 75 1 , SrcSpan "tests/examples/DerivingVia.hs" 76 1 76 1 , SrcSpan "tests/examples/DerivingVia.hs" 84 1 84 1 , SrcSpan "tests/examples/DerivingVia.hs" 87 1 87 1 , SrcSpan "tests/examples/DerivingVia.hs" 91 1 91 1 , SrcSpan "tests/examples/DerivingVia.hs" 95 1 95 1 , SrcSpan "tests/examples/DerivingVia.hs" 99 1 99 1 , SrcSpan "tests/examples/DerivingVia.hs" 112 1 112 1 , SrcSpan "tests/examples/DerivingVia.hs" 115 1 115 1 , SrcSpan "tests/examples/DerivingVia.hs" 119 1 119 1 , SrcSpan "tests/examples/DerivingVia.hs" 123 1 123 1 , SrcSpan "tests/examples/DerivingVia.hs" 127 1 127 1 , SrcSpan "tests/examples/DerivingVia.hs" 128 1 128 1 , SrcSpan "tests/examples/DerivingVia.hs" 132 1 132 1 , SrcSpan "tests/examples/DerivingVia.hs" 137 1 137 1 , SrcSpan "tests/examples/DerivingVia.hs" 146 1 146 1 , SrcSpan "tests/examples/DerivingVia.hs" 157 1 157 1 , SrcSpan "tests/examples/DerivingVia.hs" 160 1 160 1 , SrcSpan "tests/examples/DerivingVia.hs" 162 1 162 1 , SrcSpan "tests/examples/DerivingVia.hs" 165 1 165 1 , SrcSpan "tests/examples/DerivingVia.hs" 171 1 171 1 , SrcSpan "tests/examples/DerivingVia.hs" 172 1 172 1 , SrcSpan "tests/examples/DerivingVia.hs" 173 1 173 1 , SrcSpan "tests/examples/DerivingVia.hs" 174 1 174 1 , SrcSpan "tests/examples/DerivingVia.hs" 175 1 175 1 , SrcSpan "tests/examples/DerivingVia.hs" 176 1 176 1 , SrcSpan "tests/examples/DerivingVia.hs" 177 1 177 1 , SrcSpan "tests/examples/DerivingVia.hs" 178 1 178 1 , SrcSpan "tests/examples/DerivingVia.hs" 179 1 179 1 , SrcSpan "tests/examples/DerivingVia.hs" 181 1 181 1 , SrcSpan "tests/examples/DerivingVia.hs" 190 1 190 1 , SrcSpan "tests/examples/DerivingVia.hs" 193 1 193 1 , SrcSpan "tests/examples/DerivingVia.hs" 201 1 201 1 , SrcSpan "tests/examples/DerivingVia.hs" 205 1 205 1 , SrcSpan "tests/examples/DerivingVia.hs" 221 1 221 1 , SrcSpan "tests/examples/DerivingVia.hs" 224 1 224 1 , SrcSpan "tests/examples/DerivingVia.hs" 230 1 230 1 , SrcSpan "tests/examples/DerivingVia.hs" 233 1 233 1 , SrcSpan "tests/examples/DerivingVia.hs" 236 1 236 1 , SrcSpan "tests/examples/DerivingVia.hs" 239 1 239 1 , SrcSpan "tests/examples/DerivingVia.hs" 244 1 244 1 , SrcSpan "tests/examples/DerivingVia.hs" 251 1 251 1 , SrcSpan "tests/examples/DerivingVia.hs" 258 1 258 1 , SrcSpan "tests/examples/DerivingVia.hs" 265 1 265 1 , SrcSpan "tests/examples/DerivingVia.hs" 268 1 268 1 , SrcSpan "tests/examples/DerivingVia.hs" 269 1 269 1 , SrcSpan "tests/examples/DerivingVia.hs" 270 1 270 1 , SrcSpan "tests/examples/DerivingVia.hs" 272 1 272 1 , SrcSpan "tests/examples/DerivingVia.hs" 276 1 276 1 , SrcSpan "tests/examples/DerivingVia.hs" 280 1 280 1 , SrcSpan "tests/examples/DerivingVia.hs" 284 1 284 1 , SrcSpan "tests/examples/DerivingVia.hs" 288 1 288 1 , SrcSpan "tests/examples/DerivingVia.hs" 293 1 293 1 , SrcSpan "tests/examples/DerivingVia.hs" 303 1 303 1 , SrcSpan "tests/examples/DerivingVia.hs" 309 1 309 1 , SrcSpan "tests/examples/DerivingVia.hs" 312 1 312 1 , SrcSpan "tests/examples/DerivingVia.hs" 321 1 321 1 , SrcSpan "tests/examples/DerivingVia.hs" 327 1 327 1 , SrcSpan "tests/examples/DerivingVia.hs" 330 1 330 1 , SrcSpan "tests/examples/DerivingVia.hs" 332 1 332 1 , SrcSpan "tests/examples/DerivingVia.hs" 336 1 336 1 , SrcSpan "tests/examples/DerivingVia.hs" 337 1 337 1 , SrcSpan "tests/examples/DerivingVia.hs" 338 1 338 1 , SrcSpan "tests/examples/DerivingVia.hs" 345 1 345 1 , SrcSpan "tests/examples/DerivingVia.hs" 350 1 350 1 , SrcSpan "tests/examples/DerivingVia.hs" 353 1 353 1 , SrcSpan "tests/examples/DerivingVia.hs" 358 1 358 1 , SrcSpan "tests/examples/DerivingVia.hs" 359 1 359 1 , SrcSpan "tests/examples/DerivingVia.hs" 361 1 361 1 , SrcSpan "tests/examples/DerivingVia.hs" 363 1 363 1 , SrcSpan "tests/examples/DerivingVia.hs" 365 1 365 1 , SrcSpan "tests/examples/DerivingVia.hs" 367 1 367 1 , SrcSpan "tests/examples/DerivingVia.hs" 369 1 369 1 , SrcSpan "tests/examples/DerivingVia.hs" 371 1 371 1 , SrcSpan "tests/examples/DerivingVia.hs" 373 1 373 1 , SrcSpan "tests/examples/DerivingVia.hs" 380 1 380 1 , SrcSpan "tests/examples/DerivingVia.hs" 388 1 388 1 , SrcSpan "tests/examples/DerivingVia.hs" 395 1 395 1 , SrcSpan "tests/examples/DerivingVia.hs" 401 1 401 1 , SrcSpan "tests/examples/DerivingVia.hs" 405 1 405 1 , SrcSpan "tests/examples/DerivingVia.hs" 406 1 406 1 , SrcSpan "tests/examples/DerivingVia.hs" 407 1 407 1 , SrcSpan "tests/examples/DerivingVia.hs" 409 1 409 1 , SrcSpan "tests/examples/DerivingVia.hs" 413 1 413 1 , SrcSpan "tests/examples/DerivingVia.hs" 425 1 425 1 , SrcSpan "tests/examples/DerivingVia.hs" 427 1 427 1 , SrcSpan "tests/examples/DerivingVia.hs" 435 1 435 1 , SrcSpan "tests/examples/DerivingVia.hs" 437 1 437 1 , SrcSpan "tests/examples/DerivingVia.hs" 439 1 439 1 , SrcSpan "tests/examples/DerivingVia.hs" 441 1 441 1 , SrcSpan "tests/examples/DerivingVia.hs" 443 1 443 1 , SrcSpan "tests/examples/DerivingVia.hs" 445 1 445 1 , SrcSpan "tests/examples/DerivingVia.hs" 451 1 451 1 , SrcSpan "tests/examples/DerivingVia.hs" 454 1 454 1 , SrcSpan "tests/examples/DerivingVia.hs" 457 1 457 1 , SrcSpan "tests/examples/DerivingVia.hs" 460 1 460 1 , SrcSpan "tests/examples/DerivingVia.hs" 460 1 460 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 20 1 20 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 20 1 20 7 , SrcSpan "tests/examples/DerivingVia.hs" 20 20 20 25 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 20 8 20 19 , srcInfoPoints = [] } "DerivingVia") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 1 1 1 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 1 1 1 13 , SrcSpan "tests/examples/DerivingVia.hs" 1 33 1 36 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 1 14 1 32 , srcInfoPoints = [] } "DerivingStrategies" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 2 1 2 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 2 1 2 13 , SrcSpan "tests/examples/DerivingVia.hs" 2 26 2 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 2 14 2 25 , srcInfoPoints = [] } "DerivingVia" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 3 1 3 44 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 3 1 3 13 , SrcSpan "tests/examples/DerivingVia.hs" 3 41 3 44 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 3 14 3 40 , srcInfoPoints = [] } "GeneralizedNewtypeDeriving" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 4 1 4 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 4 1 4 13 , SrcSpan "tests/examples/DerivingVia.hs" 4 29 4 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 4 14 4 28 , srcInfoPoints = [] } "KindSignatures" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 5 1 5 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 5 1 5 13 , SrcSpan "tests/examples/DerivingVia.hs" 5 25 5 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 5 14 5 24 , srcInfoPoints = [] } "RankNTypes" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 6 1 6 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 6 1 6 13 , SrcSpan "tests/examples/DerivingVia.hs" 6 33 6 36 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 6 14 6 32 , srcInfoPoints = [] } "StandaloneDeriving" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 7 1 7 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 7 1 7 13 , SrcSpan "tests/examples/DerivingVia.hs" 7 27 7 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 7 14 7 26 , srcInfoPoints = [] } "InstanceSigs" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 8 1 8 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 8 1 8 13 , SrcSpan "tests/examples/DerivingVia.hs" 8 25 8 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 8 14 8 24 , srcInfoPoints = [] } "TypeInType" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 9 1 9 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 9 1 9 13 , SrcSpan "tests/examples/DerivingVia.hs" 9 20 9 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 9 14 9 19 , srcInfoPoints = [] } "GADTs" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 10 1 10 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 10 1 10 13 , SrcSpan "tests/examples/DerivingVia.hs" 10 31 10 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 10 14 10 30 , srcInfoPoints = [] } "TypeApplications" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 11 1 11 33 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 11 1 11 13 , SrcSpan "tests/examples/DerivingVia.hs" 11 30 11 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 11 14 11 29 , srcInfoPoints = [] } "ConstraintKinds" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 12 1 12 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 12 1 12 13 , SrcSpan "tests/examples/DerivingVia.hs" 12 36 12 39 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 12 14 12 35 , srcInfoPoints = [] } "MultiParamTypeClasses" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 13 1 13 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 13 1 13 13 , SrcSpan "tests/examples/DerivingVia.hs" 13 25 13 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 13 14 13 24 , srcInfoPoints = [] } "MultiWayIf" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 14 1 14 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 14 1 14 13 , SrcSpan "tests/examples/DerivingVia.hs" 14 28 14 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 14 14 14 27 , srcInfoPoints = [] } "TypeOperators" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 15 1 15 37 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 15 1 15 13 , SrcSpan "tests/examples/DerivingVia.hs" 15 34 15 37 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 15 14 15 33 , srcInfoPoints = [] } "ScopedTypeVariables" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 16 1 16 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 16 1 16 13 , SrcSpan "tests/examples/DerivingVia.hs" 16 32 16 35 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 16 14 16 31 , srcInfoPoints = [] } "FlexibleInstances" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 17 1 17 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 17 1 17 13 , SrcSpan "tests/examples/DerivingVia.hs" 17 27 17 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 17 14 17 26 , srcInfoPoints = [] } "TypeFamilies" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 18 1 18 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 18 1 18 13 , SrcSpan "tests/examples/DerivingVia.hs" 18 31 18 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 18 14 18 30 , srcInfoPoints = [] } "FlexibleContexts" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 19 1 19 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 19 1 19 13 , SrcSpan "tests/examples/DerivingVia.hs" 19 35 19 38 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 19 14 19 34 , srcInfoPoints = [] } "UndecidableInstances" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 22 1 22 17 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 22 1 22 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 22 8 22 17 , srcInfoPoints = [] } "Data.Void" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 23 1 23 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 23 1 23 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 23 8 23 20 , srcInfoPoints = [] } "Data.Complex" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 24 1 24 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 24 1 24 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 24 8 24 26 , srcInfoPoints = [] } "Data.Functor.Const" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 25 1 25 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 25 1 25 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 25 8 25 29 , srcInfoPoints = [] } "Data.Functor.Identity" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 26 1 26 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 26 1 26 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 26 8 26 18 , srcInfoPoints = [] } "Data.Ratio" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 27 1 27 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 27 1 27 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 27 8 27 28 , srcInfoPoints = [] } "Control.Monad.Reader" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 28 1 28 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 28 1 28 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 28 8 28 27 , srcInfoPoints = [] } "Control.Monad.State" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 29 1 29 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 29 1 29 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 29 8 29 28 , srcInfoPoints = [] } "Control.Monad.Writer" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 30 1 30 53 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 30 1 30 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 30 8 30 27 , srcInfoPoints = [] } "Control.Applicative" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 30 28 30 53 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 30 28 30 34 , SrcSpan "tests/examples/DerivingVia.hs" 30 35 30 36 , SrcSpan "tests/examples/DerivingVia.hs" 30 52 30 53 ] } True [ IThingAll SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 30 36 30 52 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 30 48 30 49 , SrcSpan "tests/examples/DerivingVia.hs" 30 49 30 51 , SrcSpan "tests/examples/DerivingVia.hs" 30 51 30 52 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 30 36 30 48 , srcInfoPoints = [] } "WrappedMonad") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 32 1 32 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 32 1 32 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 32 8 32 22 , srcInfoPoints = [] } "Data.Bifunctor" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 33 1 33 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 33 1 33 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 33 8 33 19 , srcInfoPoints = [] } "Data.Monoid" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 34 1 34 17 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 34 1 34 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 34 8 34 17 , srcInfoPoints = [] } "Data.Kind" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 1 36 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 36 1 36 5 , SrcSpan "tests/examples/DerivingVia.hs" 36 13 36 14 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 6 36 12 , srcInfoPoints = [] } (DHInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 6 36 12 , srcInfoPoints = [] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 6 36 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 6 36 7 , srcInfoPoints = [] } "f")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 8 36 10 , srcInfoPoints = [] } "~>")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 11 36 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 11 36 12 , srcInfoPoints = [] } "g"))) (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 15 36 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 36 15 36 21 , SrcSpan "tests/examples/DerivingVia.hs" 36 24 36 25 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 22 36 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 22 36 24 , srcInfoPoints = [] } "xx") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 26 36 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 36 31 36 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 26 36 30 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 26 36 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 26 36 27 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 28 36 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 28 36 30 , srcInfoPoints = [] } "xx"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 34 36 38 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 34 36 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 34 36 35 , srcInfoPoints = [] } "g")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 36 36 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 36 36 36 38 , srcInfoPoints = [] } "xx"))))) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 1 43 16 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 42 12 42 13 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 1 42 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 6 42 11 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 6 42 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 6 42 9 , srcInfoPoints = [] } "Foo")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 10 42 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 10 42 11 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 14 42 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 14 42 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 14 42 19 , srcInfoPoints = [] } "MkFoo") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 20 42 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 20 42 21 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 22 42 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 42 22 42 23 , srcInfoPoints = [] } "a") ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 43 3 43 16 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 43 3 43 11 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 8 44 11 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 12 44 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 44 12 44 13 , SrcSpan "tests/examples/DerivingVia.hs" 44 29 44 30 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 13 44 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 13 44 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 13 44 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 13 44 21 , srcInfoPoints = [] } "Identity"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 22 44 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 44 22 44 23 , SrcSpan "tests/examples/DerivingVia.hs" 44 28 44 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 23 44 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 23 44 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 23 44 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 23 44 26 , srcInfoPoints = [] } "Foo"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 27 44 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 44 27 44 28 , srcInfoPoints = [] } "a")))))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 43 12 43 16 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 43 12 43 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 43 12 43 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 43 12 43 16 , srcInfoPoints = [] } "Show"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 1 50 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 50 20 50 21 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 1 50 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 9 50 19 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 9 50 17 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 9 50 15 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 9 50 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 9 50 13 , srcInfoPoints = [] } "Flip")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 14 50 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 14 50 15 , srcInfoPoints = [] } "p"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 16 50 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 16 50 17 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 18 50 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 18 50 19 , srcInfoPoints = [] } "b"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 22 50 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 50 27 50 28 , SrcSpan "tests/examples/DerivingVia.hs" 50 46 50 47 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 22 50 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 50 27 50 28 , SrcSpan "tests/examples/DerivingVia.hs" 50 46 50 47 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 22 50 26 , srcInfoPoints = [] } "Flip") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 29 50 45 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 50 37 50 39 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 29 50 36 , srcInfoPoints = [] } "runFlip" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 40 50 45 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 40 50 43 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 40 50 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 40 50 41 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 42 50 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 42 50 43 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 44 50 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 50 44 50 45 , srcInfoPoints = [] } "a"))) ]) ] [] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 1 55 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 52 1 52 9 , SrcSpan "tests/examples/DerivingVia.hs" 52 44 52 49 , SrcSpan "tests/examples/DerivingVia.hs" 53 3 53 3 , SrcSpan "tests/examples/DerivingVia.hs" 55 1 55 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 10 52 43 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 10 52 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 52 22 52 24 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 10 52 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 52 22 52 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 10 52 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 52 22 52 24 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 10 52 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 52 22 52 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 10 52 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 10 52 19 , srcInfoPoints = [] } "Bifunctor"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 20 52 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 20 52 21 , srcInfoPoints = [] } "p")))))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 25 52 43 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 25 52 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 25 52 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 25 52 34 , srcInfoPoints = [] } "Bifunctor"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 35 52 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 52 35 52 36 , SrcSpan "tests/examples/DerivingVia.hs" 52 42 52 43 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 36 52 42 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 36 52 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 36 52 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 36 52 40 , srcInfoPoints = [] } "Flip"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 41 52 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 52 41 52 42 , srcInfoPoints = [] } "p")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 3 53 41 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 3 53 41 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 3 53 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 3 53 8 , srcInfoPoints = [] } "bimap") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 9 53 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 9 53 10 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 11 53 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 11 53 12 , srcInfoPoints = [] } "g") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 13 53 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 53 13 53 14 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 15 53 41 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 15 53 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 15 53 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 15 53 19 , srcInfoPoints = [] } "Flip"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 20 53 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 20 53 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 20 53 21 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 22 53 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 22 53 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 22 53 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 22 53 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 22 53 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 22 53 27 , srcInfoPoints = [] } "bimap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 28 53 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 28 53 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 28 53 29 , srcInfoPoints = [] } "g")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 30 53 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 30 53 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 30 53 31 , srcInfoPoints = [] } "f")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 32 53 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 32 53 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 32 53 33 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 34 53 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 34 53 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 53 34 53 41 , srcInfoPoints = [] } "runFlip")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 1 58 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 55 1 55 9 , SrcSpan "tests/examples/DerivingVia.hs" 55 44 55 49 , SrcSpan "tests/examples/DerivingVia.hs" 56 3 56 3 , SrcSpan "tests/examples/DerivingVia.hs" 58 1 58 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 10 55 43 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 10 55 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 55 22 55 24 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 10 55 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 55 22 55 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 10 55 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 55 22 55 24 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 10 55 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 55 22 55 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 10 55 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 10 55 19 , srcInfoPoints = [] } "Bifunctor"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 20 55 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 20 55 21 , srcInfoPoints = [] } "p")))))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 25 55 43 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 25 55 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 25 55 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 25 55 32 , srcInfoPoints = [] } "Functor"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 33 55 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 55 33 55 34 , SrcSpan "tests/examples/DerivingVia.hs" 55 42 55 43 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 34 55 42 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 34 55 40 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 34 55 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 34 55 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 34 55 38 , srcInfoPoints = [] } "Flip"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 39 55 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 39 55 40 , srcInfoPoints = [] } "p"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 41 55 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 55 41 55 42 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 3 56 36 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 3 56 36 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 3 56 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 3 56 7 , srcInfoPoints = [] } "fmap") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 8 56 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 8 56 9 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 10 56 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 56 10 56 11 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 12 56 36 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 12 56 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 12 56 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 12 56 16 , srcInfoPoints = [] } "Flip"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 17 56 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 17 56 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 17 56 18 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 19 56 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 19 56 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 19 56 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 19 56 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 19 56 24 , srcInfoPoints = [] } "first"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 25 56 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 25 56 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 25 56 26 , srcInfoPoints = [] } "f")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 27 56 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 27 56 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 27 56 28 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 29 56 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 29 56 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 56 29 56 36 , srcInfoPoints = [] } "runFlip")))))) Nothing ]) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 1 59 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 58 15 58 16 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 1 58 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 9 58 14 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 9 58 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 9 58 12 , srcInfoPoints = [] } "Bar")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 13 58 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 13 58 14 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 17 58 37 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 17 58 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 17 58 22 , srcInfoPoints = [] } "MkBar") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 23 58 37 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 58 23 58 24 , SrcSpan "tests/examples/DerivingVia.hs" 58 36 58 37 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 24 58 36 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 24 58 32 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 24 58 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 24 58 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 24 58 30 , srcInfoPoints = [] } "Either"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 31 58 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 31 58 32 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 33 58 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 33 58 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 58 33 58 36 , srcInfoPoints = [] } "Int")))) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 59 3 59 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 59 3 59 11 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 8 60 11 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 12 60 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 60 12 60 13 , SrcSpan "tests/examples/DerivingVia.hs" 60 28 60 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 13 60 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 13 60 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 13 60 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 13 60 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 13 60 17 , srcInfoPoints = [] } "Flip"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 18 60 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 18 60 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 18 60 24 , srcInfoPoints = [] } "Either")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 25 60 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 25 60 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 60 25 60 28 , srcInfoPoints = [] } "Int"))))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 59 12 59 19 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 59 12 59 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 59 12 59 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 59 12 59 19 , srcInfoPoints = [] } "Functor"))) ] ] , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 1 66 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 66 1 66 5 , SrcSpan "tests/examples/DerivingVia.hs" 66 13 66 14 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 6 66 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 6 66 12 , srcInfoPoints = [] } "MTrans")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 15 66 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 66 30 66 32 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 15 66 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 66 15 66 16 , SrcSpan "tests/examples/DerivingVia.hs" 66 28 66 29 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 16 66 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 66 21 66 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 16 66 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 16 66 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 16 66 20 , srcInfoPoints = [] } "Type"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 24 66 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 24 66 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 24 66 28 , srcInfoPoints = [] } "Type"))))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 33 66 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 66 33 66 34 , SrcSpan "tests/examples/DerivingVia.hs" 66 46 66 47 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 34 66 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 66 39 66 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 34 66 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 34 66 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 34 66 38 , srcInfoPoints = [] } "Type"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 42 66 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 42 66 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 66 42 66 46 , srcInfoPoints = [] } "Type")))))) , GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 69 1 72 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 69 13 69 18 , SrcSpan "tests/examples/DerivingVia.hs" 70 3 70 3 , SrcSpan "tests/examples/DerivingVia.hs" 72 1 72 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 69 1 69 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 69 6 69 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 69 6 69 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 69 6 69 10 , srcInfoPoints = [] } "Dict")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 69 11 69 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 69 11 69 12 , srcInfoPoints = [] } "c"))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 3 70 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 70 8 70 10 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 3 70 7 , srcInfoPoints = [] } "Dict") Nothing Nothing Nothing (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 11 70 22 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 11 70 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 70 13 70 15 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 11 70 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 70 13 70 15 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 11 70 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 70 13 70 15 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 11 70 12 , srcInfoPoints = [] } "c"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 16 70 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 16 70 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 16 70 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 16 70 20 , srcInfoPoints = [] } "Dict"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 21 70 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 70 21 70 22 , srcInfoPoints = [] } "c")))) ] [] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 1 72 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 72 16 72 17 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 1 72 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 9 72 15 , srcInfoPoints = [] } (DHInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 9 72 15 , srcInfoPoints = [] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 9 72 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 9 72 10 , srcInfoPoints = [] } "a")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 11 72 13 , srcInfoPoints = [] } ":-")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 14 72 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 14 72 15 , srcInfoPoints = [] } "b"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 18 72 35 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 18 72 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 18 72 21 , srcInfoPoints = [] } "Sub") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 22 72 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 72 22 72 23 , SrcSpan "tests/examples/DerivingVia.hs" 72 34 72 35 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 23 72 34 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 23 72 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 72 25 72 27 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 23 72 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 72 25 72 27 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 23 72 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 72 25 72 27 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 23 72 24 , srcInfoPoints = [] } "a"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 28 72 34 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 28 72 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 28 72 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 28 72 32 , srcInfoPoints = [] } "Dict"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 33 72 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 72 33 72 34 , srcInfoPoints = [] } "b")))) ]) ] [] , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 74 1 74 12 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 74 8 74 9 ] } (AssocLeft SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 74 1 74 7 , srcInfoPoints = [] }) (Just 1) [ VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 74 10 74 12 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 74 10 74 12 , srcInfoPoints = [] } "\\\\") ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 1 75 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 6 75 8 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 1 75 5 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 1 75 2 , SrcSpan "tests/examples/DerivingVia.hs" 75 2 75 4 , SrcSpan "tests/examples/DerivingVia.hs" 75 4 75 5 ] } "\\\\" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 9 75 39 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 9 75 13 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 11 75 13 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 9 75 13 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 11 75 13 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 9 75 13 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 11 75 13 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 9 75 10 , srcInfoPoints = [] } "a"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 14 75 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 23 75 25 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 14 75 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 14 75 15 , SrcSpan "tests/examples/DerivingVia.hs" 75 21 75 22 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 15 75 21 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 15 75 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 17 75 19 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 15 75 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 17 75 19 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 15 75 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 17 75 19 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 15 75 16 , srcInfoPoints = [] } "b"))))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 20 75 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 20 75 21 , srcInfoPoints = [] } "r")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 26 75 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 35 75 37 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 26 75 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 75 26 75 27 , SrcSpan "tests/examples/DerivingVia.hs" 75 33 75 34 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 27 75 33 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 27 75 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 27 75 28 , srcInfoPoints = [] } "a")) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 29 75 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 29 75 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 29 75 31 , srcInfoPoints = [] } ":-"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 32 75 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 32 75 33 , srcInfoPoints = [] } "b")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 38 75 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 75 38 75 39 , srcInfoPoints = [] } "r"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 1 76 18 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 1 76 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 1 76 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 1 76 2 , srcInfoPoints = [] } "r")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 3 76 5 , srcInfoPoints = [] } "\\\\") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 6 76 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 6 76 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 6 76 9 , srcInfoPoints = [] } "Sub")) [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 10 76 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 10 76 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 10 76 14 , srcInfoPoints = [] } "Dict")) [] ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 15 76 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 76 15 76 16 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 17 76 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 17 76 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 76 17 76 18 , srcInfoPoints = [] } "r")))) Nothing ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 84 1 85 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 84 1 84 6 , SrcSpan "tests/examples/DerivingVia.hs" 84 38 84 43 , SrcSpan "tests/examples/DerivingVia.hs" 85 3 85 3 , SrcSpan "tests/examples/DerivingVia.hs" 87 1 87 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 84 7 84 37 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 84 7 84 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 84 7 84 19 , srcInfoPoints = [] } "LiftingMonad")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 84 20 84 37 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 84 20 84 21 , SrcSpan "tests/examples/DerivingVia.hs" 84 27 84 29 , SrcSpan "tests/examples/DerivingVia.hs" 84 36 84 37 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 84 21 84 26 , srcInfoPoints = [] } "trans") (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 84 30 84 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 84 30 84 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 84 30 84 36 , srcInfoPoints = [] } "MTrans"))))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 3 85 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 85 9 85 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 3 85 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 85 9 85 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 3 85 8 , srcInfoPoints = [] } "proof" ] (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 12 85 38 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 12 85 19 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 12 85 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 12 85 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 12 85 17 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 18 85 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 18 85 19 , srcInfoPoints = [] } "m"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 20 85 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 20 85 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 20 85 22 , srcInfoPoints = [] } ":-"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 23 85 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 23 85 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 23 85 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 23 85 28 , srcInfoPoints = [] } "Monad"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 29 85 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 85 29 85 30 , SrcSpan "tests/examples/DerivingVia.hs" 85 37 85 38 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 30 85 37 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 30 85 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 30 85 35 , srcInfoPoints = [] } "trans")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 36 85 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 85 36 85 37 , srcInfoPoints = [] } "m"))))))) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 1 91 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 87 1 87 9 , SrcSpan "tests/examples/DerivingVia.hs" 87 44 87 49 , SrcSpan "tests/examples/DerivingVia.hs" 88 3 88 3 , SrcSpan "tests/examples/DerivingVia.hs" 89 3 89 3 , SrcSpan "tests/examples/DerivingVia.hs" 91 1 91 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 10 87 43 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 10 87 43 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 10 87 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 10 87 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 10 87 22 , srcInfoPoints = [] } "LiftingMonad"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 23 87 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 87 23 87 24 , SrcSpan "tests/examples/DerivingVia.hs" 87 33 87 35 , SrcSpan "tests/examples/DerivingVia.hs" 87 42 87 43 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 24 87 32 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 24 87 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 24 87 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 24 87 30 , srcInfoPoints = [] } "StateT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 31 87 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 31 87 32 , srcInfoPoints = [] } "s"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 36 87 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 36 87 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 87 36 87 42 , srcInfoPoints = [] } "MTrans")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 3 88 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 88 9 88 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 3 88 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 88 9 88 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 3 88 8 , srcInfoPoints = [] } "proof" ] (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 12 88 41 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 12 88 19 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 12 88 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 12 88 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 12 88 17 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 18 88 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 18 88 19 , srcInfoPoints = [] } "m"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 20 88 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 20 88 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 20 88 22 , srcInfoPoints = [] } ":-"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 23 88 41 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 23 88 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 23 88 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 23 88 28 , srcInfoPoints = [] } "Monad"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 29 88 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 88 29 88 30 , SrcSpan "tests/examples/DerivingVia.hs" 88 40 88 41 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 30 88 40 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 30 88 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 30 88 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 30 88 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 30 88 36 , srcInfoPoints = [] } "StateT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 37 88 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 37 88 38 , srcInfoPoints = [] } "s"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 39 88 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 88 39 88 40 , srcInfoPoints = [] } "m"))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 3 89 19 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 3 89 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 3 89 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 3 89 8 , srcInfoPoints = [] } "proof")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 9 89 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 89 9 89 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 11 89 19 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 11 89 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 11 89 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 11 89 14 , srcInfoPoints = [] } "Sub"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 15 89 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 15 89 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 89 15 89 19 , srcInfoPoints = [] } "Dict"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 1 95 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 91 1 91 9 , SrcSpan "tests/examples/DerivingVia.hs" 91 57 91 62 , SrcSpan "tests/examples/DerivingVia.hs" 92 3 92 3 , SrcSpan "tests/examples/DerivingVia.hs" 93 3 93 3 , SrcSpan "tests/examples/DerivingVia.hs" 95 1 95 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 10 91 56 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 10 91 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 91 19 91 21 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 10 91 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 91 19 91 21 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 10 91 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 91 19 91 21 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 10 91 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 91 19 91 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 10 91 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 10 91 16 , srcInfoPoints = [] } "Monoid"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 17 91 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 17 91 18 , srcInfoPoints = [] } "w")))))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 22 91 56 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 22 91 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 22 91 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 22 91 34 , srcInfoPoints = [] } "LiftingMonad"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 35 91 56 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 91 35 91 36 , SrcSpan "tests/examples/DerivingVia.hs" 91 46 91 48 , SrcSpan "tests/examples/DerivingVia.hs" 91 55 91 56 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 36 91 45 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 36 91 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 36 91 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 36 91 43 , srcInfoPoints = [] } "WriterT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 44 91 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 44 91 45 , srcInfoPoints = [] } "w"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 49 91 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 49 91 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 91 49 91 55 , srcInfoPoints = [] } "MTrans")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 3 92 42 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 92 9 92 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 3 92 42 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 92 9 92 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 3 92 8 , srcInfoPoints = [] } "proof" ] (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 12 92 42 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 12 92 19 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 12 92 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 12 92 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 12 92 17 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 18 92 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 18 92 19 , srcInfoPoints = [] } "m"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 20 92 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 20 92 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 20 92 22 , srcInfoPoints = [] } ":-"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 23 92 42 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 23 92 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 23 92 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 23 92 28 , srcInfoPoints = [] } "Monad"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 29 92 42 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 92 29 92 30 , SrcSpan "tests/examples/DerivingVia.hs" 92 41 92 42 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 30 92 41 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 30 92 39 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 30 92 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 30 92 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 30 92 37 , srcInfoPoints = [] } "WriterT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 38 92 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 38 92 39 , srcInfoPoints = [] } "w"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 40 92 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 92 40 92 41 , srcInfoPoints = [] } "m"))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 3 93 19 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 3 93 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 3 93 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 3 93 8 , srcInfoPoints = [] } "proof")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 9 93 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 93 9 93 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 11 93 19 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 11 93 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 11 93 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 11 93 14 , srcInfoPoints = [] } "Sub"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 15 93 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 15 93 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 93 15 93 19 , srcInfoPoints = [] } "Dict"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 1 99 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 95 1 95 9 , SrcSpan "tests/examples/DerivingVia.hs" 95 102 95 107 , SrcSpan "tests/examples/DerivingVia.hs" 96 3 96 3 , SrcSpan "tests/examples/DerivingVia.hs" 97 3 97 3 , SrcSpan "tests/examples/DerivingVia.hs" 99 1 99 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 10 95 101 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 10 95 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 95 10 95 11 , SrcSpan "tests/examples/DerivingVia.hs" 95 29 95 30 , SrcSpan "tests/examples/DerivingVia.hs" 95 50 95 51 , SrcSpan "tests/examples/DerivingVia.hs" 95 52 95 54 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 11 95 29 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 11 95 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 11 95 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 11 95 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 11 95 23 , srcInfoPoints = [] } "LiftingMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 24 95 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 24 95 29 , srcInfoPoints = [] } "trans"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 31 95 50 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 31 95 50 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 31 95 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 31 95 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 31 95 43 , srcInfoPoints = [] } "LiftingMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 44 95 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 44 95 50 , srcInfoPoints = [] } "trans'"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 55 95 101 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 55 95 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 55 95 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 55 95 67 , srcInfoPoints = [] } "LiftingMonad"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 68 95 101 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 95 68 95 69 , SrcSpan "tests/examples/DerivingVia.hs" 95 91 95 93 , SrcSpan "tests/examples/DerivingVia.hs" 95 100 95 101 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 69 95 90 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 69 95 83 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 69 95 77 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 69 95 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 69 95 77 , srcInfoPoints = [] } "ComposeT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 78 95 83 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 78 95 83 , srcInfoPoints = [] } "trans"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 84 95 90 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 84 95 90 , srcInfoPoints = [] } "trans'"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 94 95 100 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 94 95 100 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 95 94 95 100 , srcInfoPoints = [] } "MTrans")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 3 96 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 96 9 96 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 3 96 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 96 9 96 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 3 96 8 , srcInfoPoints = [] } "proof" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 12 96 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 96 12 96 18 , SrcSpan "tests/examples/DerivingVia.hs" 96 20 96 21 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 19 96 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 19 96 20 , srcInfoPoints = [] } "m") ]) Nothing (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 22 96 64 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 22 96 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 22 96 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 22 96 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 22 96 27 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 28 96 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 28 96 29 , srcInfoPoints = [] } "m"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 30 96 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 30 96 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 30 96 32 , srcInfoPoints = [] } ":-"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 33 96 64 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 33 96 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 33 96 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 33 96 38 , srcInfoPoints = [] } "Monad"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 39 96 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 96 39 96 40 , SrcSpan "tests/examples/DerivingVia.hs" 96 63 96 64 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 40 96 63 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 40 96 61 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 40 96 54 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 40 96 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 40 96 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 40 96 48 , srcInfoPoints = [] } "ComposeT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 49 96 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 49 96 54 , srcInfoPoints = [] } "trans"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 55 96 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 55 96 61 , srcInfoPoints = [] } "trans'"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 62 96 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 96 62 96 63 , srcInfoPoints = [] } "m")))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 3 97 69 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 3 97 69 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 3 97 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 3 97 8 , srcInfoPoints = [] } "proof")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 9 97 69 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 97 9 97 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 11 97 69 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 11 97 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 11 97 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 11 97 14 , srcInfoPoints = [] } "Sub"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 15 97 69 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 97 15 97 16 , SrcSpan "tests/examples/DerivingVia.hs" 97 68 97 69 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 16 97 68 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 16 97 48 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 16 97 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 16 97 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 16 97 20 , srcInfoPoints = [] } "Dict"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 21 97 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 21 97 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 21 97 23 , srcInfoPoints = [] } "\\\\"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 24 97 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 24 97 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 24 97 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 24 97 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 24 97 29 , srcInfoPoints = [] } "proof"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 30 97 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 97 30 97 31 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 31 97 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 31 97 36 , srcInfoPoints = [] } "trans")))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 37 97 48 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 97 37 97 38 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 38 97 48 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 97 38 97 39 , SrcSpan "tests/examples/DerivingVia.hs" 97 47 97 48 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 39 97 47 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 39 97 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 39 97 45 , srcInfoPoints = [] } "trans'")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 46 97 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 46 97 47 , srcInfoPoints = [] } "m"))))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 49 97 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 49 97 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 49 97 51 , srcInfoPoints = [] } "\\\\"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 52 97 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 52 97 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 52 97 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 52 97 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 52 97 57 , srcInfoPoints = [] } "proof"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 58 97 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 97 58 97 59 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 59 97 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 59 97 65 , srcInfoPoints = [] } "trans'")))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 66 97 68 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 97 66 97 67 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 67 97 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 97 67 97 68 , srcInfoPoints = [] } "m")))))))) Nothing) ]) , GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 99 1 109 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 99 15 99 17 , SrcSpan "tests/examples/DerivingVia.hs" 99 25 99 30 , SrcSpan "tests/examples/DerivingVia.hs" 100 3 100 3 , SrcSpan "tests/examples/DerivingVia.hs" 101 3 101 3 , SrcSpan "tests/examples/DerivingVia.hs" 101 3 101 3 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 99 1 99 8 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 99 9 99 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 99 9 99 14 , srcInfoPoints = [] } "Stack")) (Just (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 99 18 99 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 99 18 99 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 99 18 99 24 , srcInfoPoints = [] } "MTrans")))) [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 3 100 71 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 100 9 100 11 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 3 100 8 , srcInfoPoints = [] } "Stack") Nothing Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 12 100 71 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 100 59 100 61 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 12 100 58 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 12 100 56 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 12 100 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 12 100 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 12 100 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 12 100 19 , srcInfoPoints = [] } "ReaderT"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 20 100 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 20 100 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 20 100 23 , srcInfoPoints = [] } "Int")))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 24 100 56 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 100 24 100 25 , SrcSpan "tests/examples/DerivingVia.hs" 100 55 100 56 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 25 100 55 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 25 100 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 25 100 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 25 100 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 25 100 31 , srcInfoPoints = [] } "StateT"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 32 100 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 32 100 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 32 100 36 , srcInfoPoints = [] } "Bool")))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 37 100 55 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 100 37 100 38 , SrcSpan "tests/examples/DerivingVia.hs" 100 54 100 55 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 38 100 54 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 38 100 52 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 38 100 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 38 100 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 38 100 45 , srcInfoPoints = [] } "WriterT"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 46 100 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 46 100 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 46 100 52 , srcInfoPoints = [] } "String")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 53 100 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 53 100 54 , srcInfoPoints = [] } "m"))))))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 57 100 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 57 100 58 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 62 100 71 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 62 100 69 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 62 100 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 62 100 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 62 100 67 , srcInfoPoints = [] } "Stack"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 68 100 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 68 100 69 , srcInfoPoints = [] } "m"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 70 100 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 100 70 100 71 , srcInfoPoints = [] } "a")))) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 101 3 108 6 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 101 3 101 11 , SrcSpan "tests/examples/DerivingVia.hs" 102 5 102 6 , SrcSpan "tests/examples/DerivingVia.hs" 103 5 103 6 , SrcSpan "tests/examples/DerivingVia.hs" 104 5 104 6 , SrcSpan "tests/examples/DerivingVia.hs" 105 5 105 6 , SrcSpan "tests/examples/DerivingVia.hs" 106 5 106 6 , SrcSpan "tests/examples/DerivingVia.hs" 107 5 107 6 , SrcSpan "tests/examples/DerivingVia.hs" 108 5 108 6 ] } (Just (DerivNewtype SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 101 12 101 19 , srcInfoPoints = [] })) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 102 7 102 14 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 102 7 102 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 102 7 102 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 102 7 102 14 , srcInfoPoints = [] } "Functor"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 103 7 103 18 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 103 7 103 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 103 7 103 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 103 7 103 18 , srcInfoPoints = [] } "Applicative"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 104 7 104 12 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 104 7 104 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 104 7 104 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 104 7 104 12 , srcInfoPoints = [] } "Monad"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 105 7 105 22 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 105 7 105 22 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 105 7 105 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 105 7 105 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 105 7 105 18 , srcInfoPoints = [] } "MonadReader"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 105 19 105 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 105 19 105 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 105 19 105 22 , srcInfoPoints = [] } "Int")))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 106 7 106 22 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 106 7 106 22 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 106 7 106 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 106 7 106 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 106 7 106 17 , srcInfoPoints = [] } "MonadState"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 106 18 106 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 106 18 106 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 106 18 106 22 , srcInfoPoints = [] } "Bool")))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 107 7 107 25 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 107 7 107 25 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 107 7 107 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 107 7 107 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 107 7 107 18 , srcInfoPoints = [] } "MonadWriter"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 107 19 107 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 107 19 107 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 107 19 107 25 , srcInfoPoints = [] } "String")))) ] , Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 109 3 109 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 109 3 109 11 , SrcSpan "tests/examples/DerivingVia.hs" 109 12 109 13 , SrcSpan "tests/examples/DerivingVia.hs" 109 23 109 24 , SrcSpan "tests/examples/DerivingVia.hs" 109 33 109 34 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 8 110 11 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 12 110 74 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 110 12 110 13 , SrcSpan "tests/examples/DerivingVia.hs" 110 73 110 74 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 13 110 73 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 13 110 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 13 110 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 13 110 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 13 110 20 , srcInfoPoints = [] } "ReaderT"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 21 110 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 21 110 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 21 110 24 , srcInfoPoints = [] } "Int")))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 25 110 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 110 25 110 26 , SrcSpan "tests/examples/DerivingVia.hs" 110 26 110 34 , SrcSpan "tests/examples/DerivingVia.hs" 110 34 110 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 25 110 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 110 25 110 26 , SrcSpan "tests/examples/DerivingVia.hs" 110 26 110 34 , SrcSpan "tests/examples/DerivingVia.hs" 110 34 110 35 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 26 110 34 , srcInfoPoints = [] } "ComposeT"))) (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 36 110 73 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 36 110 47 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 36 110 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 36 110 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 36 110 42 , srcInfoPoints = [] } "StateT"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 43 110 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 43 110 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 43 110 47 , srcInfoPoints = [] } "Bool")))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 48 110 58 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 110 48 110 49 , SrcSpan "tests/examples/DerivingVia.hs" 110 49 110 57 , SrcSpan "tests/examples/DerivingVia.hs" 110 57 110 58 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 48 110 58 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 110 48 110 49 , SrcSpan "tests/examples/DerivingVia.hs" 110 49 110 57 , SrcSpan "tests/examples/DerivingVia.hs" 110 57 110 58 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 49 110 57 , srcInfoPoints = [] } "ComposeT"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 59 110 73 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 59 110 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 59 110 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 59 110 66 , srcInfoPoints = [] } "WriterT"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 67 110 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 67 110 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 110 67 110 73 , srcInfoPoints = [] } "String"))))))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 109 13 109 23 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 109 13 109 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 109 13 109 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 109 13 109 23 , srcInfoPoints = [] } "MonadTrans"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 109 25 109 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 109 25 109 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 109 25 109 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 109 25 109 33 , srcInfoPoints = [] } "MFunctor"))) ] ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 112 1 113 57 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 112 1 112 6 , SrcSpan "tests/examples/DerivingVia.hs" 112 34 112 39 , SrcSpan "tests/examples/DerivingVia.hs" 113 3 113 3 , SrcSpan "tests/examples/DerivingVia.hs" 115 1 115 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 112 7 112 33 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 112 7 112 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 112 7 112 15 , srcInfoPoints = [] } "MFunctor")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 112 16 112 33 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 112 16 112 17 , SrcSpan "tests/examples/DerivingVia.hs" 112 23 112 25 , SrcSpan "tests/examples/DerivingVia.hs" 112 32 112 33 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 112 17 112 22 , srcInfoPoints = [] } "trans") (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 112 26 112 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 112 26 112 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 112 26 112 32 , srcInfoPoints = [] } "MTrans"))))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 3 113 57 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 113 9 113 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 3 113 57 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 113 9 113 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 3 113 8 , srcInfoPoints = [] } "hoist" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 12 113 57 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 12 113 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 113 20 113 22 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 12 113 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 113 20 113 22 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 12 113 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 113 20 113 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 12 113 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 113 20 113 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 12 113 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 12 113 17 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 18 113 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 18 113 19 , srcInfoPoints = [] } "m")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 23 113 57 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 113 33 113 35 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 23 113 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 113 23 113 24 , SrcSpan "tests/examples/DerivingVia.hs" 113 31 113 32 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 24 113 31 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 24 113 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 24 113 25 , srcInfoPoints = [] } "m")) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 26 113 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 26 113 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 26 113 28 , srcInfoPoints = [] } "~>"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 29 113 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 29 113 31 , srcInfoPoints = [] } "m'")))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 36 113 57 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 113 36 113 37 , SrcSpan "tests/examples/DerivingVia.hs" 113 56 113 57 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 37 113 56 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 37 113 44 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 37 113 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 37 113 42 , srcInfoPoints = [] } "trans")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 43 113 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 43 113 44 , srcInfoPoints = [] } "m"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 45 113 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 45 113 47 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 45 113 47 , srcInfoPoints = [] } "~>"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 48 113 56 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 48 113 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 48 113 53 , srcInfoPoints = [] } "trans")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 54 113 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 113 54 113 56 , srcInfoPoints = [] } "m'")))))))) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 1 119 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 115 1 115 9 , SrcSpan "tests/examples/DerivingVia.hs" 115 41 115 46 , SrcSpan "tests/examples/DerivingVia.hs" 116 3 116 3 , SrcSpan "tests/examples/DerivingVia.hs" 117 3 117 3 , SrcSpan "tests/examples/DerivingVia.hs" 119 1 119 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 10 115 40 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 10 115 40 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 10 115 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 10 115 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 10 115 18 , srcInfoPoints = [] } "MFunctor"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 19 115 40 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 115 19 115 20 , SrcSpan "tests/examples/DerivingVia.hs" 115 30 115 32 , SrcSpan "tests/examples/DerivingVia.hs" 115 39 115 40 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 20 115 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 20 115 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 20 115 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 20 115 27 , srcInfoPoints = [] } "ReaderT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 28 115 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 28 115 29 , srcInfoPoints = [] } "r"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 33 115 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 33 115 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 115 33 115 39 , srcInfoPoints = [] } "MTrans")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 3 116 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 116 9 116 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 3 116 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 116 9 116 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 3 116 8 , srcInfoPoints = [] } "hoist" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 12 116 65 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 12 116 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 116 20 116 22 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 12 116 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 116 20 116 22 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 12 116 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 116 20 116 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 12 116 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 116 20 116 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 12 116 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 12 116 17 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 18 116 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 18 116 19 , srcInfoPoints = [] } "m")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 23 116 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 116 33 116 35 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 23 116 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 116 23 116 24 , SrcSpan "tests/examples/DerivingVia.hs" 116 31 116 32 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 24 116 31 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 24 116 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 24 116 25 , srcInfoPoints = [] } "m")) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 26 116 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 26 116 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 26 116 28 , srcInfoPoints = [] } "~>"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 29 116 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 29 116 31 , srcInfoPoints = [] } "m'")))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 36 116 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 116 36 116 37 , SrcSpan "tests/examples/DerivingVia.hs" 116 64 116 65 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 37 116 64 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 37 116 48 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 37 116 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 37 116 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 37 116 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 37 116 44 , srcInfoPoints = [] } "ReaderT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 45 116 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 45 116 46 , srcInfoPoints = [] } "r"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 47 116 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 47 116 48 , srcInfoPoints = [] } "m"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 49 116 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 49 116 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 49 116 51 , srcInfoPoints = [] } "~>"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 52 116 64 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 52 116 61 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 52 116 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 52 116 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 52 116 59 , srcInfoPoints = [] } "ReaderT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 60 116 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 60 116 61 , srcInfoPoints = [] } "r"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 62 116 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 116 62 116 64 , srcInfoPoints = [] } "m'")))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 3 117 46 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 3 117 46 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 3 117 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 3 117 8 , srcInfoPoints = [] } "hoist") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 9 117 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 9 117 12 , srcInfoPoints = [] } "nat") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 13 117 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 117 13 117 14 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 15 117 46 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 15 117 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 15 117 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 15 117 22 , srcInfoPoints = [] } "ReaderT"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 23 117 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 23 117 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 23 117 24 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 25 117 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 25 117 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 25 117 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 25 117 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 25 117 29 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 30 117 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 30 117 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 30 117 33 , srcInfoPoints = [] } "nat")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 34 117 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 34 117 35 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 34 117 35 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 36 117 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 36 117 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 117 36 117 46 , srcInfoPoints = [] } "runReaderT")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 1 123 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 119 1 119 9 , SrcSpan "tests/examples/DerivingVia.hs" 119 40 119 45 , SrcSpan "tests/examples/DerivingVia.hs" 120 3 120 3 , SrcSpan "tests/examples/DerivingVia.hs" 121 3 121 3 , SrcSpan "tests/examples/DerivingVia.hs" 123 1 123 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 10 119 39 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 10 119 39 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 10 119 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 10 119 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 10 119 18 , srcInfoPoints = [] } "MFunctor"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 19 119 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 119 19 119 20 , SrcSpan "tests/examples/DerivingVia.hs" 119 29 119 31 , SrcSpan "tests/examples/DerivingVia.hs" 119 38 119 39 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 20 119 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 20 119 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 20 119 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 20 119 26 , srcInfoPoints = [] } "StateT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 27 119 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 27 119 28 , srcInfoPoints = [] } "s"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 32 119 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 32 119 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 119 32 119 38 , srcInfoPoints = [] } "MTrans")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 3 120 63 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 120 9 120 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 3 120 63 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 120 9 120 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 3 120 8 , srcInfoPoints = [] } "hoist" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 12 120 63 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 12 120 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 120 20 120 22 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 12 120 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 120 20 120 22 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 12 120 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 120 20 120 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 12 120 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 120 20 120 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 12 120 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 12 120 17 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 18 120 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 18 120 19 , srcInfoPoints = [] } "m")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 23 120 63 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 120 33 120 35 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 23 120 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 120 23 120 24 , SrcSpan "tests/examples/DerivingVia.hs" 120 31 120 32 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 24 120 31 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 24 120 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 24 120 25 , srcInfoPoints = [] } "m")) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 26 120 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 26 120 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 26 120 28 , srcInfoPoints = [] } "~>"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 29 120 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 29 120 31 , srcInfoPoints = [] } "m'")))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 36 120 63 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 120 36 120 37 , SrcSpan "tests/examples/DerivingVia.hs" 120 62 120 63 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 37 120 62 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 37 120 47 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 37 120 45 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 37 120 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 37 120 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 37 120 43 , srcInfoPoints = [] } "StateT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 44 120 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 44 120 45 , srcInfoPoints = [] } "s"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 46 120 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 46 120 47 , srcInfoPoints = [] } "m"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 48 120 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 48 120 50 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 48 120 50 , srcInfoPoints = [] } "~>"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 51 120 62 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 51 120 59 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 51 120 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 51 120 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 51 120 57 , srcInfoPoints = [] } "StateT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 58 120 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 58 120 59 , srcInfoPoints = [] } "s"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 60 120 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 120 60 120 62 , srcInfoPoints = [] } "m'")))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 3 121 44 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 3 121 44 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 3 121 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 3 121 8 , srcInfoPoints = [] } "hoist") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 9 121 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 9 121 12 , srcInfoPoints = [] } "nat") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 13 121 44 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 121 13 121 14 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 15 121 44 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 15 121 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 15 121 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 15 121 21 , srcInfoPoints = [] } "StateT"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 22 121 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 22 121 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 22 121 23 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 24 121 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 24 121 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 24 121 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 24 121 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 24 121 28 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 29 121 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 29 121 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 29 121 32 , srcInfoPoints = [] } "nat")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 33 121 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 33 121 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 33 121 34 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 35 121 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 35 121 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 121 35 121 44 , srcInfoPoints = [] } "runStateT")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 1 127 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 123 1 123 9 , SrcSpan "tests/examples/DerivingVia.hs" 123 41 123 46 , SrcSpan "tests/examples/DerivingVia.hs" 124 3 124 3 , SrcSpan "tests/examples/DerivingVia.hs" 125 3 125 3 , SrcSpan "tests/examples/DerivingVia.hs" 127 1 127 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 10 123 40 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 10 123 40 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 10 123 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 10 123 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 10 123 18 , srcInfoPoints = [] } "MFunctor"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 19 123 40 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 123 19 123 20 , SrcSpan "tests/examples/DerivingVia.hs" 123 30 123 32 , SrcSpan "tests/examples/DerivingVia.hs" 123 39 123 40 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 20 123 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 20 123 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 20 123 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 20 123 27 , srcInfoPoints = [] } "WriterT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 28 123 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 28 123 29 , srcInfoPoints = [] } "w"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 33 123 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 33 123 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 123 33 123 39 , srcInfoPoints = [] } "MTrans")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 3 124 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 124 9 124 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 3 124 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 124 9 124 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 3 124 8 , srcInfoPoints = [] } "hoist" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 12 124 65 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 12 124 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 124 20 124 22 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 12 124 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 124 20 124 22 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 12 124 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 124 20 124 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 12 124 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 124 20 124 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 12 124 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 12 124 17 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 18 124 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 18 124 19 , srcInfoPoints = [] } "m")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 23 124 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 124 33 124 35 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 23 124 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 124 23 124 24 , SrcSpan "tests/examples/DerivingVia.hs" 124 31 124 32 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 24 124 31 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 24 124 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 24 124 25 , srcInfoPoints = [] } "m")) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 26 124 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 26 124 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 26 124 28 , srcInfoPoints = [] } "~>"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 29 124 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 29 124 31 , srcInfoPoints = [] } "m'")))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 36 124 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 124 36 124 37 , SrcSpan "tests/examples/DerivingVia.hs" 124 64 124 65 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 37 124 64 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 37 124 48 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 37 124 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 37 124 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 37 124 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 37 124 44 , srcInfoPoints = [] } "WriterT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 45 124 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 45 124 46 , srcInfoPoints = [] } "w"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 47 124 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 47 124 48 , srcInfoPoints = [] } "m"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 49 124 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 49 124 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 49 124 51 , srcInfoPoints = [] } "~>"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 52 124 64 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 52 124 61 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 52 124 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 52 124 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 52 124 59 , srcInfoPoints = [] } "WriterT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 60 124 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 60 124 61 , srcInfoPoints = [] } "w"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 62 124 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 124 62 124 64 , srcInfoPoints = [] } "m'")))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 3 125 41 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 3 125 41 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 3 125 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 3 125 8 , srcInfoPoints = [] } "hoist") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 9 125 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 9 125 12 , srcInfoPoints = [] } "nat") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 13 125 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 125 13 125 14 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 15 125 41 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 15 125 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 15 125 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 15 125 22 , srcInfoPoints = [] } "WriterT"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 23 125 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 23 125 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 23 125 24 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 25 125 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 25 125 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 25 125 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 25 125 28 , srcInfoPoints = [] } "nat"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 29 125 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 29 125 30 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 29 125 30 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 31 125 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 31 125 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 125 31 125 41 , srcInfoPoints = [] } "runWriterT")))))) Nothing ]) ]) , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 127 1 127 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 127 8 127 9 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 127 1 127 7 , srcInfoPoints = [] }) (Just 9) [ ConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 127 10 127 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 127 10 127 11 , SrcSpan "tests/examples/DerivingVia.hs" 127 11 127 19 , SrcSpan "tests/examples/DerivingVia.hs" 127 19 127 20 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 127 10 127 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 127 10 127 11 , SrcSpan "tests/examples/DerivingVia.hs" 127 11 127 19 , SrcSpan "tests/examples/DerivingVia.hs" 127 19 127 20 ] } "ComposeT") ] , GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 1 130 49 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 128 18 128 20 , SrcSpan "tests/examples/DerivingVia.hs" 128 48 128 53 , SrcSpan "tests/examples/DerivingVia.hs" 129 3 129 3 , SrcSpan "tests/examples/DerivingVia.hs" 130 3 130 3 , SrcSpan "tests/examples/DerivingVia.hs" 130 3 130 3 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 1 128 8 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 9 128 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 9 128 17 , srcInfoPoints = [] } "ComposeT")) (Just (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 21 128 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 128 28 128 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 21 128 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 21 128 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 21 128 27 , srcInfoPoints = [] } "MTrans"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 31 128 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 128 38 128 40 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 31 128 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 31 128 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 31 128 37 , srcInfoPoints = [] } "MTrans"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 41 128 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 41 128 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 128 41 128 47 , srcInfoPoints = [] } "MTrans")))))) [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 3 129 63 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 129 12 129 14 , SrcSpan "tests/examples/DerivingVia.hs" 129 15 129 16 , SrcSpan "tests/examples/DerivingVia.hs" 129 42 129 43 , SrcSpan "tests/examples/DerivingVia.hs" 129 44 129 46 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 3 129 11 , srcInfoPoints = [] } "ComposeT") Nothing Nothing (Just [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 17 129 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 129 29 129 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 17 129 28 , srcInfoPoints = [] } "getComposeT" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 32 129 41 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 32 129 39 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 32 129 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 32 129 33 , srcInfoPoints = [] } "f")) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 34 129 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 129 34 129 35 , SrcSpan "tests/examples/DerivingVia.hs" 129 38 129 39 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 35 129 38 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 35 129 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 35 129 36 , srcInfoPoints = [] } "g")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 37 129 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 37 129 38 , srcInfoPoints = [] } "m"))))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 40 129 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 40 129 41 , srcInfoPoints = [] } "a"))) ]) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 47 129 63 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 47 129 61 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 47 129 59 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 47 129 57 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 47 129 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 47 129 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 47 129 55 , srcInfoPoints = [] } "ComposeT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 56 129 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 56 129 57 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 58 129 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 58 129 59 , srcInfoPoints = [] } "g"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 60 129 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 60 129 61 , srcInfoPoints = [] } "m"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 62 129 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 129 62 129 63 , srcInfoPoints = [] } "a"))) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 3 130 49 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 130 3 130 11 , SrcSpan "tests/examples/DerivingVia.hs" 130 20 130 21 , SrcSpan "tests/examples/DerivingVia.hs" 130 28 130 29 , SrcSpan "tests/examples/DerivingVia.hs" 130 41 130 42 , SrcSpan "tests/examples/DerivingVia.hs" 130 48 130 49 ] } (Just (DerivNewtype SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 12 130 19 , srcInfoPoints = [] })) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 21 130 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 21 130 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 21 130 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 21 130 28 , srcInfoPoints = [] } "Functor"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 30 130 41 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 30 130 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 30 130 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 30 130 41 , srcInfoPoints = [] } "Applicative"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 43 130 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 43 130 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 43 130 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 130 43 130 48 , srcInfoPoints = [] } "Monad"))) ] ] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 1 137 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 132 1 132 9 , SrcSpan "tests/examples/DerivingVia.hs" 132 84 132 89 , SrcSpan "tests/examples/DerivingVia.hs" 133 3 133 3 , SrcSpan "tests/examples/DerivingVia.hs" 134 3 134 3 , SrcSpan "tests/examples/DerivingVia.hs" 137 1 137 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 10 132 83 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 10 132 57 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 132 10 132 11 , SrcSpan "tests/examples/DerivingVia.hs" 132 23 132 24 , SrcSpan "tests/examples/DerivingVia.hs" 132 37 132 38 , SrcSpan "tests/examples/DerivingVia.hs" 132 53 132 54 , SrcSpan "tests/examples/DerivingVia.hs" 132 55 132 57 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 11 132 23 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 11 132 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 11 132 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 11 132 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 11 132 21 , srcInfoPoints = [] } "MonadTrans"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 22 132 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 22 132 23 , srcInfoPoints = [] } "f"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 25 132 37 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 25 132 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 25 132 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 25 132 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 25 132 35 , srcInfoPoints = [] } "MonadTrans"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 36 132 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 36 132 37 , srcInfoPoints = [] } "g"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 39 132 53 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 39 132 53 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 39 132 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 39 132 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 39 132 51 , srcInfoPoints = [] } "LiftingMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 52 132 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 52 132 53 , srcInfoPoints = [] } "g"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 58 132 83 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 58 132 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 58 132 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 58 132 68 , srcInfoPoints = [] } "MonadTrans"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 69 132 83 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 132 69 132 70 , SrcSpan "tests/examples/DerivingVia.hs" 132 82 132 83 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 70 132 82 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 70 132 80 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 70 132 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 70 132 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 70 132 78 , srcInfoPoints = [] } "ComposeT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 79 132 80 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 79 132 80 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 81 132 82 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 132 81 132 82 , srcInfoPoints = [] } "g")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 3 133 51 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 133 8 133 10 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 3 133 51 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 133 8 133 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 3 133 7 , srcInfoPoints = [] } "lift" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 11 133 51 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 133 11 133 17 , SrcSpan "tests/examples/DerivingVia.hs" 133 19 133 20 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 18 133 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 18 133 19 , srcInfoPoints = [] } "m") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 21 133 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 133 29 133 31 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 21 133 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 133 29 133 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 21 133 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 133 29 133 31 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 21 133 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 133 29 133 31 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 21 133 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 21 133 26 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 27 133 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 27 133 28 , srcInfoPoints = [] } "m")))))) (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 32 133 51 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 32 133 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 32 133 33 , srcInfoPoints = [] } "m")) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 34 133 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 34 133 36 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 34 133 36 , srcInfoPoints = [] } "~>"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 37 133 51 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 37 133 49 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 37 133 47 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 37 133 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 37 133 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 37 133 45 , srcInfoPoints = [] } "ComposeT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 46 133 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 46 133 47 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 48 133 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 48 133 49 , srcInfoPoints = [] } "g"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 50 133 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 133 50 133 51 , srcInfoPoints = [] } "m")))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 3 135 19 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 3 135 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 3 134 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 3 134 7 , srcInfoPoints = [] } "lift")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 8 135 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 134 8 134 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 10 135 19 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 10 134 32 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 10 134 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 10 134 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 10 134 18 , srcInfoPoints = [] } "ComposeT"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 19 134 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 19 134 20 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 19 134 20 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 21 134 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 21 134 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 21 134 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 21 134 25 , srcInfoPoints = [] } "lift"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 26 134 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 26 134 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 26 134 27 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 28 134 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 28 134 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 134 28 134 32 , srcInfoPoints = [] } "lift"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 5 135 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 5 135 7 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 5 135 7 , srcInfoPoints = [] } "\\\\"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 8 135 19 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 8 135 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 8 135 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 8 135 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 8 135 13 , srcInfoPoints = [] } "proof"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 14 135 16 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 135 14 135 15 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 15 135 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 15 135 16 , srcInfoPoints = [] } "g")))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 17 135 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 135 17 135 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 18 135 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 135 18 135 19 , srcInfoPoints = [] } "m")))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 1 146 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 137 1 137 9 , SrcSpan "tests/examples/DerivingVia.hs" 137 78 137 83 , SrcSpan "tests/examples/DerivingVia.hs" 138 3 138 3 , SrcSpan "tests/examples/DerivingVia.hs" 139 3 139 3 , SrcSpan "tests/examples/DerivingVia.hs" 146 1 146 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 10 137 77 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 10 137 53 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 137 10 137 11 , SrcSpan "tests/examples/DerivingVia.hs" 137 21 137 22 , SrcSpan "tests/examples/DerivingVia.hs" 137 33 137 34 , SrcSpan "tests/examples/DerivingVia.hs" 137 49 137 50 , SrcSpan "tests/examples/DerivingVia.hs" 137 51 137 53 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 11 137 21 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 11 137 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 11 137 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 11 137 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 11 137 19 , srcInfoPoints = [] } "MFunctor"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 20 137 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 20 137 21 , srcInfoPoints = [] } "f"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 23 137 33 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 23 137 33 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 23 137 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 23 137 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 23 137 31 , srcInfoPoints = [] } "MFunctor"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 32 137 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 32 137 33 , srcInfoPoints = [] } "g"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 35 137 49 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 35 137 49 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 35 137 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 35 137 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 35 137 47 , srcInfoPoints = [] } "LiftingMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 48 137 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 48 137 49 , srcInfoPoints = [] } "g"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 54 137 77 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 54 137 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 54 137 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 54 137 62 , srcInfoPoints = [] } "MFunctor"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 63 137 77 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 137 63 137 64 , SrcSpan "tests/examples/DerivingVia.hs" 137 76 137 77 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 64 137 76 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 64 137 74 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 64 137 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 64 137 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 64 137 72 , srcInfoPoints = [] } "ComposeT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 73 137 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 73 137 74 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 75 137 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 137 75 137 76 , srcInfoPoints = [] } "g")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 3 138 84 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 9 138 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 3 138 84 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 9 138 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 3 138 8 , srcInfoPoints = [] } "hoist" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 12 138 84 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 12 138 18 , SrcSpan "tests/examples/DerivingVia.hs" 138 23 138 24 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 19 138 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 19 138 20 , srcInfoPoints = [] } "m") , UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 21 138 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 21 138 23 , srcInfoPoints = [] } "m'") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 25 138 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 33 138 35 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 25 138 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 33 138 35 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 25 138 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 33 138 35 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 25 138 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 33 138 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 25 138 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 25 138 30 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 31 138 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 31 138 32 , srcInfoPoints = [] } "m")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 36 138 84 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 46 138 48 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 36 138 45 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 36 138 37 , SrcSpan "tests/examples/DerivingVia.hs" 138 44 138 45 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 37 138 44 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 37 138 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 37 138 38 , srcInfoPoints = [] } "m")) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 39 138 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 39 138 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 39 138 41 , srcInfoPoints = [] } "~>"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 42 138 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 42 138 44 , srcInfoPoints = [] } "m'")))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 49 138 84 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 138 49 138 50 , SrcSpan "tests/examples/DerivingVia.hs" 138 83 138 84 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 50 138 83 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 50 138 64 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 50 138 62 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 50 138 60 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 50 138 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 50 138 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 50 138 58 , srcInfoPoints = [] } "ComposeT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 59 138 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 59 138 60 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 61 138 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 61 138 62 , srcInfoPoints = [] } "g"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 63 138 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 63 138 64 , srcInfoPoints = [] } "m"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 65 138 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 65 138 67 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 65 138 67 , srcInfoPoints = [] } "~>"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 68 138 83 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 68 138 80 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 68 138 78 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 68 138 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 68 138 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 68 138 76 , srcInfoPoints = [] } "ComposeT"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 77 138 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 77 138 78 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 79 138 80 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 79 138 80 , srcInfoPoints = [] } "g"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 81 138 83 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 138 81 138 83 , srcInfoPoints = [] } "m'")))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 3 140 19 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 3 140 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 3 140 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 3 139 8 , srcInfoPoints = [] } "hoist") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 9 139 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 9 139 10 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 11 140 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 139 11 139 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 13 140 19 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 13 139 53 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 13 139 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 13 139 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 13 139 21 , srcInfoPoints = [] } "ComposeT"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 22 139 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 22 139 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 22 139 23 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 24 139 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 24 139 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 24 139 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 24 139 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 24 139 29 , srcInfoPoints = [] } "hoist"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 30 139 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 139 30 139 31 , SrcSpan "tests/examples/DerivingVia.hs" 139 38 139 39 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 31 139 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 31 139 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 31 139 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 31 139 36 , srcInfoPoints = [] } "hoist"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 37 139 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 37 139 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 37 139 38 , srcInfoPoints = [] } "f")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 40 139 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 40 139 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 40 139 41 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 42 139 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 42 139 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 139 42 139 53 , srcInfoPoints = [] } "getComposeT"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 5 140 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 5 140 7 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 5 140 7 , srcInfoPoints = [] } "\\\\"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 8 140 19 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 8 140 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 8 140 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 8 140 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 8 140 13 , srcInfoPoints = [] } "proof"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 14 140 16 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 140 14 140 15 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 15 140 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 15 140 16 , srcInfoPoints = [] } "g")))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 17 140 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 140 17 140 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 18 140 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 140 18 140 19 , srcInfoPoints = [] } "m")))))) Nothing ]) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 1 150 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 146 13 146 14 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 1 146 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 9 146 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 9 146 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 9 146 10 , srcInfoPoints = [] } "X")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 11 146 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 11 146 12 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 15 146 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 15 146 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 15 146 16 , srcInfoPoints = [] } "X") [ TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 17 146 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 146 17 146 18 , SrcSpan "tests/examples/DerivingVia.hs" 146 19 146 20 , SrcSpan "tests/examples/DerivingVia.hs" 146 22 146 23 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 18 146 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 18 146 19 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 21 146 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 146 21 146 22 , srcInfoPoints = [] } "a") ] ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 147 3 147 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 147 3 147 11 , SrcSpan "tests/examples/DerivingVia.hs" 147 12 147 13 , SrcSpan "tests/examples/DerivingVia.hs" 147 22 147 23 , SrcSpan "tests/examples/DerivingVia.hs" 147 30 147 31 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 8 148 11 , srcInfoPoints = [] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 12 148 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 148 12 148 13 , SrcSpan "tests/examples/DerivingVia.hs" 148 22 148 23 , SrcSpan "tests/examples/DerivingVia.hs" 148 29 148 30 ] } Boxed [ TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 13 148 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 13 148 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 13 148 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 13 148 20 , srcInfoPoints = [] } "Product"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 21 148 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 21 148 22 , srcInfoPoints = [] } "a")) , TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 24 148 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 24 148 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 24 148 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 24 148 27 , srcInfoPoints = [] } "Sum"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 28 148 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 148 28 148 29 , srcInfoPoints = [] } "a")) ]))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 147 13 147 22 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 147 13 147 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 147 13 147 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 147 13 147 22 , srcInfoPoints = [] } "Semigroup"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 147 24 147 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 147 24 147 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 147 24 147 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 147 24 147 30 , srcInfoPoints = [] } "Monoid"))) ] , Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 150 3 150 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 150 3 150 11 , SrcSpan "tests/examples/DerivingVia.hs" 150 12 150 13 , SrcSpan "tests/examples/DerivingVia.hs" 150 17 150 18 , SrcSpan "tests/examples/DerivingVia.hs" 150 21 150 22 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 151 8 151 11 , srcInfoPoints = [] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 151 12 151 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 151 12 151 13 , SrcSpan "tests/examples/DerivingVia.hs" 151 14 151 15 , SrcSpan "tests/examples/DerivingVia.hs" 151 17 151 18 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 151 13 151 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 151 13 151 14 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 151 16 151 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 151 16 151 17 , srcInfoPoints = [] } "a") ]))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 150 13 150 17 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 150 13 150 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 150 13 150 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 150 13 150 17 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 150 19 150 21 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 150 19 150 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 150 19 150 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 150 19 150 21 , srcInfoPoints = [] } "Eq"))) ] ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 157 1 158 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 157 1 157 6 , SrcSpan "tests/examples/DerivingVia.hs" 157 11 157 16 , SrcSpan "tests/examples/DerivingVia.hs" 158 3 158 3 , SrcSpan "tests/examples/DerivingVia.hs" 160 1 160 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 157 7 157 10 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 157 7 157 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 157 7 157 8 , srcInfoPoints = [] } "C")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 157 9 157 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 157 9 157 10 , srcInfoPoints = [] } "f"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 3 158 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 158 5 158 7 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 3 158 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 158 5 158 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 3 158 4 , srcInfoPoints = [] } "c" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 8 158 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 158 12 158 14 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 8 158 11 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 8 158 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 8 158 9 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 10 158 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 10 158 11 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 15 158 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 15 158 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 158 15 158 18 , srcInfoPoints = [] } "Int"))))) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 1 160 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 160 16 160 17 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 1 160 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 9 160 15 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 9 160 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 9 160 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 9 160 11 , srcInfoPoints = [] } "X2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 12 160 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 12 160 13 , srcInfoPoints = [] } "f"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 14 160 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 14 160 15 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 18 160 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 18 160 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 18 160 20 , srcInfoPoints = [] } "X2") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 21 160 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 160 21 160 22 , SrcSpan "tests/examples/DerivingVia.hs" 160 25 160 26 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 22 160 25 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 22 160 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 22 160 23 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 24 160 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 160 24 160 25 , srcInfoPoints = [] } "a"))) ]) ] [] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 1 165 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 162 1 162 9 , SrcSpan "tests/examples/DerivingVia.hs" 162 19 162 24 , SrcSpan "tests/examples/DerivingVia.hs" 163 3 163 3 , SrcSpan "tests/examples/DerivingVia.hs" 165 1 165 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 10 162 18 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 10 162 18 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 10 162 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 10 162 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 10 162 11 , srcInfoPoints = [] } "C"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 12 162 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 162 12 162 13 , SrcSpan "tests/examples/DerivingVia.hs" 162 17 162 18 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 13 162 17 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 13 162 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 13 162 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 13 162 15 , srcInfoPoints = [] } "X2"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 16 162 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 162 16 162 17 , srcInfoPoints = [] } "f")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 3 163 14 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 3 163 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 3 163 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 3 163 4 , srcInfoPoints = [] } "c")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 5 163 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 163 5 163 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 7 163 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 7 163 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 7 163 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 7 163 12 , srcInfoPoints = [] } "const"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 13 163 14 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 163 13 163 14 , srcInfoPoints = [] } 0 "0")))) Nothing) ]) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 1 165 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 165 1 165 9 , SrcSpan "tests/examples/DerivingVia.hs" 165 22 165 30 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 10 165 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 14 165 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 165 14 165 15 , SrcSpan "tests/examples/DerivingVia.hs" 165 20 165 21 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 15 165 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 15 165 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 15 165 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 15 165 17 , srcInfoPoints = [] } "X2"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 18 165 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 18 165 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 18 165 20 , srcInfoPoints = [] } "IO"))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 31 165 35 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 31 165 35 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 31 165 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 31 165 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 31 165 32 , srcInfoPoints = [] } "C"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 33 165 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 33 165 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 165 33 165 35 , srcInfoPoints = [] } "IO"))))) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 1 171 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 171 14 171 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 1 171 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 9 171 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 9 171 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 9 171 11 , srcInfoPoints = [] } "P0")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 12 171 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 12 171 13 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 16 171 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 16 171 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 16 171 18 , srcInfoPoints = [] } "P0") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 19 171 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 19 171 20 , srcInfoPoints = [] } "a") ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 33 171 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 171 33 171 41 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 47 171 50 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 51 171 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 51 171 52 , srcInfoPoints = [] } "a")))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 42 171 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 42 171 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 42 171 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 171 42 171 46 , srcInfoPoints = [] } "Show"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 1 172 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 172 14 172 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 1 172 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 9 172 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 9 172 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 9 172 11 , srcInfoPoints = [] } "P1")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 12 172 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 12 172 13 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 16 172 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 16 172 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 16 172 18 , srcInfoPoints = [] } "P1") [ TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 19 172 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 172 19 172 20 , SrcSpan "tests/examples/DerivingVia.hs" 172 21 172 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 20 172 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 20 172 21 , srcInfoPoints = [] } "a")) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 33 172 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 172 33 172 41 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 47 172 50 , srcInfoPoints = [] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 51 172 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 172 51 172 52 , SrcSpan "tests/examples/DerivingVia.hs" 172 53 172 54 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 52 172 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 52 172 53 , srcInfoPoints = [] } "a"))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 42 172 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 42 172 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 42 172 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 172 42 172 46 , srcInfoPoints = [] } "Show"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 1 173 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 173 14 173 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 1 173 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 9 173 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 9 173 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 9 173 11 , srcInfoPoints = [] } "P2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 12 173 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 12 173 13 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 16 173 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 16 173 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 16 173 18 , srcInfoPoints = [] } "P2") [ TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 19 173 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 173 19 173 20 , SrcSpan "tests/examples/DerivingVia.hs" 173 21 173 22 , SrcSpan "tests/examples/DerivingVia.hs" 173 24 173 25 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 20 173 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 20 173 21 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 23 173 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 23 173 24 , srcInfoPoints = [] } "a") ] ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 33 173 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 173 33 173 41 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 47 173 50 , srcInfoPoints = [] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 51 173 57 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 173 51 173 52 , SrcSpan "tests/examples/DerivingVia.hs" 173 53 173 54 , SrcSpan "tests/examples/DerivingVia.hs" 173 56 173 57 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 52 173 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 52 173 53 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 55 173 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 55 173 56 , srcInfoPoints = [] } "a") ]))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 42 173 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 42 173 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 42 173 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 173 42 173 46 , srcInfoPoints = [] } "Show"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 1 174 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 174 14 174 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 1 174 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 9 174 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 9 174 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 9 174 11 , srcInfoPoints = [] } "P3")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 12 174 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 12 174 13 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 16 174 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 16 174 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 16 174 18 , srcInfoPoints = [] } "P3") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 19 174 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 174 19 174 20 , SrcSpan "tests/examples/DerivingVia.hs" 174 27 174 28 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 20 174 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 20 174 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 20 174 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 20 174 25 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 26 174 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 26 174 27 , srcInfoPoints = [] } "a"))) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 33 174 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 174 33 174 41 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 47 174 50 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 51 174 60 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 174 51 174 52 , SrcSpan "tests/examples/DerivingVia.hs" 174 59 174 60 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 52 174 59 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 52 174 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 52 174 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 52 174 57 , srcInfoPoints = [] } "First"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 58 174 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 58 174 59 , srcInfoPoints = [] } "a")))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 42 174 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 42 174 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 42 174 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 174 42 174 46 , srcInfoPoints = [] } "Show"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 1 175 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 175 14 175 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 1 175 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 9 175 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 9 175 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 9 175 11 , srcInfoPoints = [] } "P4")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 12 175 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 12 175 13 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 16 175 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 16 175 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 16 175 18 , srcInfoPoints = [] } "P4") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 19 175 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 175 19 175 20 , SrcSpan "tests/examples/DerivingVia.hs" 175 27 175 28 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 20 175 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 20 175 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 20 175 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 20 175 25 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 26 175 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 26 175 27 , srcInfoPoints = [] } "a"))) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 33 175 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 175 33 175 41 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 47 175 50 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 51 175 62 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 175 51 175 52 , SrcSpan "tests/examples/DerivingVia.hs" 175 61 175 62 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 52 175 61 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 52 175 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 52 175 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 52 175 57 , srcInfoPoints = [] } "First"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 58 175 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 58 175 59 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 58 175 59 , srcInfoPoints = [] } "$"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 60 175 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 60 175 61 , srcInfoPoints = [] } "a")))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 42 175 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 42 175 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 42 175 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 175 42 175 46 , srcInfoPoints = [] } "Show"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 1 176 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 176 14 176 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 1 176 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 9 176 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 9 176 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 9 176 11 , srcInfoPoints = [] } "P5")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 12 176 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 12 176 13 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 16 176 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 16 176 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 16 176 18 , srcInfoPoints = [] } "P5") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 19 176 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 19 176 20 , srcInfoPoints = [] } "a") ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 33 176 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 176 33 176 41 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 47 176 50 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 51 176 65 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 176 51 176 52 , SrcSpan "tests/examples/DerivingVia.hs" 176 64 176 65 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 52 176 64 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 52 176 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 52 176 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 52 176 60 , srcInfoPoints = [] } "Identity"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 61 176 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 61 176 62 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 61 176 62 , srcInfoPoints = [] } "$"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 63 176 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 63 176 64 , srcInfoPoints = [] } "a")))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 42 176 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 42 176 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 42 176 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 176 42 176 46 , srcInfoPoints = [] } "Show"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 1 177 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 177 14 177 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 1 177 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 9 177 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 9 177 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 9 177 11 , srcInfoPoints = [] } "P6")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 12 177 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 12 177 13 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 16 177 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 16 177 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 16 177 18 , srcInfoPoints = [] } "P6") [ TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 19 177 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 177 19 177 20 , SrcSpan "tests/examples/DerivingVia.hs" 177 21 177 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 20 177 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 20 177 21 , srcInfoPoints = [] } "a")) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 33 177 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 177 33 177 41 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 47 177 50 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 51 177 59 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 177 51 177 52 , SrcSpan "tests/examples/DerivingVia.hs" 177 58 177 59 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 52 177 58 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 52 177 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 177 52 177 53 , SrcSpan "tests/examples/DerivingVia.hs" 177 53 177 54 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 52 177 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 177 52 177 53 , SrcSpan "tests/examples/DerivingVia.hs" 177 53 177 54 ] } (ListCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 52 177 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 177 52 177 53 , SrcSpan "tests/examples/DerivingVia.hs" 177 53 177 54 ] }))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 55 177 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 55 177 56 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 55 177 56 , srcInfoPoints = [] } "$"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 57 177 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 57 177 58 , srcInfoPoints = [] } "a")))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 42 177 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 42 177 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 42 177 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 177 42 177 46 , srcInfoPoints = [] } "Show"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 1 178 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 178 14 178 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 1 178 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 9 178 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 9 178 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 9 178 11 , srcInfoPoints = [] } "P7")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 12 178 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 12 178 13 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 16 178 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 16 178 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 16 178 18 , srcInfoPoints = [] } "P7") [ TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 19 178 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 178 19 178 20 , SrcSpan "tests/examples/DerivingVia.hs" 178 21 178 22 , SrcSpan "tests/examples/DerivingVia.hs" 178 24 178 25 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 20 178 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 20 178 21 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 23 178 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 23 178 24 , srcInfoPoints = [] } "a") ] ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 33 178 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 178 33 178 41 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 47 178 50 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 51 178 70 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 178 51 178 52 , SrcSpan "tests/examples/DerivingVia.hs" 178 69 178 70 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 52 178 69 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 52 178 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 52 178 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 52 178 60 , srcInfoPoints = [] } "Identity"))) (UnpromotedName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 61 178 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 61 178 62 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 61 178 62 , srcInfoPoints = [] } "$"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 63 178 69 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 178 63 178 64 , SrcSpan "tests/examples/DerivingVia.hs" 178 65 178 66 , SrcSpan "tests/examples/DerivingVia.hs" 178 68 178 69 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 64 178 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 64 178 65 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 67 178 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 67 178 68 , srcInfoPoints = [] } "a") ]))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 42 178 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 42 178 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 42 178 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 178 42 178 46 , srcInfoPoints = [] } "Show"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 1 179 49 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 14 179 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 1 179 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 9 179 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 9 179 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 9 179 11 , srcInfoPoints = [] } "P8")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 12 179 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 12 179 13 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 16 179 32 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 16 179 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 16 179 18 , srcInfoPoints = [] } "P8") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 19 179 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 19 179 20 , SrcSpan "tests/examples/DerivingVia.hs" 179 31 179 32 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 20 179 31 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 20 179 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 20 179 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 20 179 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 20 179 26 , srcInfoPoints = [] } "Either"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 27 179 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 27 179 28 , SrcSpan "tests/examples/DerivingVia.hs" 179 28 179 29 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 27 179 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 27 179 28 , SrcSpan "tests/examples/DerivingVia.hs" 179 28 179 29 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 27 179 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 27 179 28 , SrcSpan "tests/examples/DerivingVia.hs" 179 28 179 29 ] })))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 30 179 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 30 179 31 , srcInfoPoints = [] } "a"))) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 33 179 49 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 33 179 41 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 50 179 53 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 54 179 71 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 54 179 55 , SrcSpan "tests/examples/DerivingVia.hs" 179 70 179 71 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 55 179 70 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 55 179 58 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 55 179 56 , SrcSpan "tests/examples/DerivingVia.hs" 179 56 179 57 , SrcSpan "tests/examples/DerivingVia.hs" 179 57 179 58 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 55 179 58 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 55 179 56 , SrcSpan "tests/examples/DerivingVia.hs" 179 56 179 57 , SrcSpan "tests/examples/DerivingVia.hs" 179 57 179 58 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 56 179 57 , srcInfoPoints = [] } "$"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 59 179 70 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 59 179 60 , SrcSpan "tests/examples/DerivingVia.hs" 179 69 179 70 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 60 179 69 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 60 179 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 60 179 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 60 179 66 , srcInfoPoints = [] } "Either"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 67 179 69 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 67 179 68 , SrcSpan "tests/examples/DerivingVia.hs" 179 68 179 69 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 67 179 69 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 67 179 68 , SrcSpan "tests/examples/DerivingVia.hs" 179 68 179 69 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 67 179 69 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 179 67 179 68 , SrcSpan "tests/examples/DerivingVia.hs" 179 68 179 69 ] }))))))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 42 179 49 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 42 179 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 42 179 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 179 42 179 49 , srcInfoPoints = [] } "Functor"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 1 181 73 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 181 15 181 16 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 1 181 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 9 181 14 , srcInfoPoints = [] } (DHInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 9 181 14 , srcInfoPoints = [] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 9 181 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 9 181 10 , srcInfoPoints = [] } "f")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 11 181 12 , srcInfoPoints = [] } "$")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 13 181 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 13 181 14 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 17 181 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 17 181 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 17 181 20 , srcInfoPoints = [] } "APP") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 21 181 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 181 21 181 22 , SrcSpan "tests/examples/DerivingVia.hs" 181 25 181 26 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 22 181 25 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 22 181 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 22 181 23 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 24 181 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 24 181 25 , srcInfoPoints = [] } "a"))) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 27 181 48 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 181 27 181 35 ] } (Just (DerivNewtype SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 36 181 43 , srcInfoPoints = [] })) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 44 181 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 44 181 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 44 181 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 44 181 48 , srcInfoPoints = [] } "Show"))) ] , Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 49 181 73 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 181 49 181 57 ] } (Just (DerivNewtype SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 58 181 65 , srcInfoPoints = [] })) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 66 181 73 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 66 181 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 66 181 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 181 66 181 73 , srcInfoPoints = [] } "Functor"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 1 191 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 190 29 190 30 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 1 190 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 9 190 28 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 9 190 26 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 9 190 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 9 190 24 , srcInfoPoints = [] } "WrapApplicative")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 25 190 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 25 190 26 , srcInfoPoints = [] } "f"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 27 190 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 27 190 28 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 31 190 55 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 31 190 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 31 190 49 , srcInfoPoints = [] } "WrappedApplicative") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 50 190 55 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 190 50 190 51 , SrcSpan "tests/examples/DerivingVia.hs" 190 54 190 55 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 51 190 54 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 51 190 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 51 190 52 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 53 190 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 190 53 190 54 , srcInfoPoints = [] } "a"))) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 191 3 191 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 191 3 191 11 , SrcSpan "tests/examples/DerivingVia.hs" 191 12 191 13 , SrcSpan "tests/examples/DerivingVia.hs" 191 20 191 21 , SrcSpan "tests/examples/DerivingVia.hs" 191 33 191 34 ] } Nothing [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 191 13 191 20 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 191 13 191 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 191 13 191 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 191 13 191 20 , srcInfoPoints = [] } "Functor"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 191 22 191 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 191 22 191 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 191 22 191 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 191 22 191 33 , srcInfoPoints = [] } "Applicative"))) ] ] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 1 201 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 193 1 193 9 , SrcSpan "tests/examples/DerivingVia.hs" 193 62 193 67 , SrcSpan "tests/examples/DerivingVia.hs" 194 3 194 3 , SrcSpan "tests/examples/DerivingVia.hs" 195 3 195 3 , SrcSpan "tests/examples/DerivingVia.hs" 196 3 196 3 , SrcSpan "tests/examples/DerivingVia.hs" 197 3 197 3 , SrcSpan "tests/examples/DerivingVia.hs" 198 3 198 3 , SrcSpan "tests/examples/DerivingVia.hs" 199 3 199 3 , SrcSpan "tests/examples/DerivingVia.hs" 201 1 201 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 10 193 61 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 10 193 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 193 10 193 11 , SrcSpan "tests/examples/DerivingVia.hs" 193 24 193 25 , SrcSpan "tests/examples/DerivingVia.hs" 193 31 193 32 , SrcSpan "tests/examples/DerivingVia.hs" 193 33 193 35 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 11 193 24 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 11 193 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 11 193 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 11 193 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 11 193 22 , srcInfoPoints = [] } "Applicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 23 193 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 23 193 24 , srcInfoPoints = [] } "f"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 26 193 31 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 26 193 31 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 26 193 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 26 193 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 26 193 29 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 30 193 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 30 193 31 , srcInfoPoints = [] } "a"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 36 193 61 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 36 193 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 36 193 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 36 193 39 , srcInfoPoints = [] } "Num"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 40 193 61 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 193 40 193 41 , SrcSpan "tests/examples/DerivingVia.hs" 193 60 193 61 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 41 193 60 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 41 193 58 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 41 193 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 41 193 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 41 193 56 , srcInfoPoints = [] } "WrapApplicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 57 193 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 57 193 58 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 59 193 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 193 59 193 60 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 3 194 27 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 3 194 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 3 194 6 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 194 3 194 4 , SrcSpan "tests/examples/DerivingVia.hs" 194 4 194 5 , SrcSpan "tests/examples/DerivingVia.hs" 194 5 194 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 4 194 5 , srcInfoPoints = [] } "+")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 15 194 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 194 15 194 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 17 194 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 17 194 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 17 194 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 17 194 23 , srcInfoPoints = [] } "liftA2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 24 194 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 194 24 194 25 , SrcSpan "tests/examples/DerivingVia.hs" 194 25 194 26 , SrcSpan "tests/examples/DerivingVia.hs" 194 26 194 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 24 194 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 194 24 194 25 , SrcSpan "tests/examples/DerivingVia.hs" 194 25 194 26 , SrcSpan "tests/examples/DerivingVia.hs" 194 26 194 27 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 194 25 194 26 , srcInfoPoints = [] } "+"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 3 195 27 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 3 195 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 3 195 6 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 195 3 195 4 , SrcSpan "tests/examples/DerivingVia.hs" 195 4 195 5 , SrcSpan "tests/examples/DerivingVia.hs" 195 5 195 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 4 195 5 , srcInfoPoints = [] } "*")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 15 195 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 195 15 195 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 17 195 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 17 195 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 17 195 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 17 195 23 , srcInfoPoints = [] } "liftA2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 24 195 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 195 24 195 25 , SrcSpan "tests/examples/DerivingVia.hs" 195 25 195 26 , SrcSpan "tests/examples/DerivingVia.hs" 195 26 195 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 24 195 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 195 24 195 25 , SrcSpan "tests/examples/DerivingVia.hs" 195 25 195 26 , SrcSpan "tests/examples/DerivingVia.hs" 195 26 195 27 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 195 25 195 26 , srcInfoPoints = [] } "*"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 3 196 28 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 3 196 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 3 196 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 3 196 9 , srcInfoPoints = [] } "negate")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 15 196 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 196 15 196 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 17 196 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 17 196 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 17 196 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 17 196 21 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 22 196 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 22 196 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 196 22 196 28 , srcInfoPoints = [] } "negate"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 3 197 35 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 3 197 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 3 197 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 3 197 14 , srcInfoPoints = [] } "fromInteger")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 15 197 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 197 15 197 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 17 197 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 17 197 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 17 197 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 17 197 21 , srcInfoPoints = [] } "pure"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 22 197 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 22 197 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 22 197 23 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 24 197 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 24 197 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 197 24 197 35 , srcInfoPoints = [] } "fromInteger"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 3 198 25 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 3 198 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 3 198 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 3 198 6 , srcInfoPoints = [] } "abs")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 15 198 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 198 15 198 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 17 198 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 17 198 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 17 198 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 17 198 21 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 22 198 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 22 198 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 198 22 198 25 , srcInfoPoints = [] } "abs"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 3 199 28 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 3 199 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 3 199 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 3 199 9 , srcInfoPoints = [] } "signum")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 15 199 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 199 15 199 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 17 199 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 17 199 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 17 199 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 17 199 21 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 22 199 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 22 199 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 199 22 199 28 , srcInfoPoints = [] } "signum"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 1 205 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 201 1 201 9 , SrcSpan "tests/examples/DerivingVia.hs" 201 76 201 81 , SrcSpan "tests/examples/DerivingVia.hs" 202 3 202 3 , SrcSpan "tests/examples/DerivingVia.hs" 203 3 203 3 , SrcSpan "tests/examples/DerivingVia.hs" 205 1 205 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 10 201 75 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 10 201 42 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 201 10 201 11 , SrcSpan "tests/examples/DerivingVia.hs" 201 24 201 25 , SrcSpan "tests/examples/DerivingVia.hs" 201 38 201 39 , SrcSpan "tests/examples/DerivingVia.hs" 201 40 201 42 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 11 201 24 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 11 201 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 11 201 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 11 201 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 11 201 22 , srcInfoPoints = [] } "Applicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 23 201 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 23 201 24 , srcInfoPoints = [] } "f"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 26 201 38 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 26 201 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 26 201 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 26 201 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 26 201 36 , srcInfoPoints = [] } "Fractional"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 37 201 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 37 201 38 , srcInfoPoints = [] } "a"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 43 201 75 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 43 201 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 43 201 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 43 201 53 , srcInfoPoints = [] } "Fractional"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 54 201 75 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 201 54 201 55 , SrcSpan "tests/examples/DerivingVia.hs" 201 74 201 75 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 55 201 74 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 55 201 72 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 55 201 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 55 201 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 55 201 70 , srcInfoPoints = [] } "WrapApplicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 71 201 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 71 201 72 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 73 201 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 201 73 201 74 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 3 202 28 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 3 202 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 3 202 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 3 202 8 , srcInfoPoints = [] } "recip")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 16 202 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 202 16 202 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 18 202 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 18 202 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 18 202 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 18 202 22 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 23 202 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 23 202 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 202 23 202 28 , srcInfoPoints = [] } "recip"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 3 203 37 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 3 203 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 3 203 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 3 203 15 , srcInfoPoints = [] } "fromRational")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 16 203 37 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 203 16 203 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 18 203 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 18 203 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 18 203 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 18 203 22 , srcInfoPoints = [] } "pure"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 23 203 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 23 203 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 23 203 24 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 25 203 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 25 203 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 203 25 203 37 , srcInfoPoints = [] } "fromRational"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 1 221 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 205 1 205 9 , SrcSpan "tests/examples/DerivingVia.hs" 205 72 205 77 , SrcSpan "tests/examples/DerivingVia.hs" 206 3 206 3 , SrcSpan "tests/examples/DerivingVia.hs" 207 3 207 3 , SrcSpan "tests/examples/DerivingVia.hs" 208 3 208 3 , SrcSpan "tests/examples/DerivingVia.hs" 209 3 209 3 , SrcSpan "tests/examples/DerivingVia.hs" 210 3 210 3 , SrcSpan "tests/examples/DerivingVia.hs" 211 3 211 3 , SrcSpan "tests/examples/DerivingVia.hs" 212 3 212 3 , SrcSpan "tests/examples/DerivingVia.hs" 213 3 213 3 , SrcSpan "tests/examples/DerivingVia.hs" 214 3 214 3 , SrcSpan "tests/examples/DerivingVia.hs" 215 3 215 3 , SrcSpan "tests/examples/DerivingVia.hs" 216 3 216 3 , SrcSpan "tests/examples/DerivingVia.hs" 217 3 217 3 , SrcSpan "tests/examples/DerivingVia.hs" 218 3 218 3 , SrcSpan "tests/examples/DerivingVia.hs" 219 3 219 3 , SrcSpan "tests/examples/DerivingVia.hs" 221 1 221 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 10 205 71 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 10 205 40 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 205 10 205 11 , SrcSpan "tests/examples/DerivingVia.hs" 205 24 205 25 , SrcSpan "tests/examples/DerivingVia.hs" 205 36 205 37 , SrcSpan "tests/examples/DerivingVia.hs" 205 38 205 40 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 11 205 24 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 11 205 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 11 205 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 11 205 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 11 205 22 , srcInfoPoints = [] } "Applicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 23 205 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 23 205 24 , srcInfoPoints = [] } "f"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 26 205 36 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 26 205 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 26 205 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 26 205 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 26 205 34 , srcInfoPoints = [] } "Floating"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 35 205 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 35 205 36 , srcInfoPoints = [] } "a"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 41 205 71 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 41 205 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 41 205 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 41 205 49 , srcInfoPoints = [] } "Floating"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 50 205 71 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 205 50 205 51 , SrcSpan "tests/examples/DerivingVia.hs" 205 70 205 71 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 51 205 70 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 51 205 68 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 51 205 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 51 205 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 51 205 66 , srcInfoPoints = [] } "WrapApplicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 67 205 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 67 205 68 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 69 205 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 205 69 205 70 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 3 206 18 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 3 206 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 3 206 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 3 206 5 , srcInfoPoints = [] } "pi")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 9 206 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 206 9 206 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 11 206 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 11 206 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 11 206 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 11 206 15 , srcInfoPoints = [] } "pure"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 16 206 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 16 206 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 206 16 206 18 , srcInfoPoints = [] } "pi"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 3 207 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 3 207 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 3 207 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 3 207 7 , srcInfoPoints = [] } "sqrt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 9 207 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 207 9 207 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 11 207 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 11 207 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 11 207 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 11 207 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 16 207 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 16 207 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 207 16 207 20 , srcInfoPoints = [] } "sqrt"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 3 208 19 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 3 208 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 3 208 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 3 208 6 , srcInfoPoints = [] } "exp")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 9 208 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 208 9 208 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 11 208 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 11 208 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 11 208 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 11 208 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 16 208 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 16 208 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 208 16 208 19 , srcInfoPoints = [] } "exp"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 3 209 19 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 3 209 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 3 209 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 3 209 6 , srcInfoPoints = [] } "log")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 9 209 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 209 9 209 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 11 209 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 11 209 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 11 209 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 11 209 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 16 209 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 16 209 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 209 16 209 19 , srcInfoPoints = [] } "log"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 3 210 19 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 3 210 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 3 210 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 3 210 6 , srcInfoPoints = [] } "sin")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 9 210 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 210 9 210 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 11 210 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 11 210 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 11 210 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 11 210 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 16 210 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 16 210 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 210 16 210 19 , srcInfoPoints = [] } "sin"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 3 211 19 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 3 211 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 3 211 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 3 211 6 , srcInfoPoints = [] } "cos")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 9 211 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 211 9 211 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 11 211 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 11 211 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 11 211 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 11 211 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 16 211 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 16 211 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 211 16 211 19 , srcInfoPoints = [] } "cos"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 3 212 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 3 212 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 3 212 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 3 212 7 , srcInfoPoints = [] } "asin")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 9 212 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 212 9 212 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 11 212 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 11 212 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 11 212 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 11 212 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 16 212 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 16 212 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 212 16 212 20 , srcInfoPoints = [] } "asin"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 3 213 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 3 213 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 3 213 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 3 213 7 , srcInfoPoints = [] } "atan")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 9 213 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 213 9 213 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 11 213 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 11 213 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 11 213 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 11 213 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 16 213 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 16 213 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 213 16 213 20 , srcInfoPoints = [] } "atan"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 3 214 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 3 214 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 3 214 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 3 214 7 , srcInfoPoints = [] } "acos")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 9 214 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 214 9 214 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 11 214 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 11 214 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 11 214 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 11 214 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 16 214 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 16 214 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 214 16 214 20 , srcInfoPoints = [] } "acos"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 3 215 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 3 215 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 3 215 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 3 215 7 , srcInfoPoints = [] } "sinh")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 9 215 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 215 9 215 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 11 215 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 11 215 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 11 215 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 11 215 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 16 215 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 16 215 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 215 16 215 20 , srcInfoPoints = [] } "sinh"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 3 216 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 3 216 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 3 216 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 3 216 7 , srcInfoPoints = [] } "cosh")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 9 216 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 216 9 216 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 11 216 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 11 216 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 11 216 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 11 216 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 16 216 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 16 216 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 216 16 216 20 , srcInfoPoints = [] } "cosh"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 3 217 21 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 3 217 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 3 217 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 3 217 8 , srcInfoPoints = [] } "asinh")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 9 217 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 217 9 217 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 11 217 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 11 217 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 11 217 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 11 217 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 16 217 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 16 217 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 217 16 217 21 , srcInfoPoints = [] } "asinh"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 3 218 21 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 3 218 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 3 218 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 3 218 8 , srcInfoPoints = [] } "atanh")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 9 218 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 218 9 218 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 11 218 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 11 218 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 11 218 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 11 218 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 16 218 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 16 218 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 218 16 218 21 , srcInfoPoints = [] } "atanh"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 3 219 21 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 3 219 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 3 219 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 3 219 8 , srcInfoPoints = [] } "acosh")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 9 219 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 219 9 219 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 11 219 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 11 219 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 11 219 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 11 219 15 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 16 219 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 16 219 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 219 16 219 21 , srcInfoPoints = [] } "acosh"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 1 224 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 221 1 221 9 , SrcSpan "tests/examples/DerivingVia.hs" 221 74 221 79 , SrcSpan "tests/examples/DerivingVia.hs" 222 3 222 3 , SrcSpan "tests/examples/DerivingVia.hs" 224 1 224 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 10 221 73 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 10 221 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 221 10 221 11 , SrcSpan "tests/examples/DerivingVia.hs" 221 24 221 25 , SrcSpan "tests/examples/DerivingVia.hs" 221 37 221 38 , SrcSpan "tests/examples/DerivingVia.hs" 221 39 221 41 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 11 221 24 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 11 221 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 11 221 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 11 221 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 11 221 22 , srcInfoPoints = [] } "Applicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 23 221 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 23 221 24 , srcInfoPoints = [] } "f"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 26 221 37 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 26 221 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 26 221 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 26 221 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 26 221 35 , srcInfoPoints = [] } "Semigroup"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 36 221 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 36 221 37 , srcInfoPoints = [] } "s"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 42 221 73 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 42 221 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 42 221 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 42 221 51 , srcInfoPoints = [] } "Semigroup"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 52 221 73 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 221 52 221 53 , SrcSpan "tests/examples/DerivingVia.hs" 221 72 221 73 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 53 221 72 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 53 221 70 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 53 221 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 53 221 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 53 221 68 , srcInfoPoints = [] } "WrapApplicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 69 221 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 69 221 70 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 71 221 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 221 71 221 72 , srcInfoPoints = [] } "s")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 3 222 21 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 3 222 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 3 222 7 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 222 3 222 4 , SrcSpan "tests/examples/DerivingVia.hs" 222 4 222 6 , SrcSpan "tests/examples/DerivingVia.hs" 222 6 222 7 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 4 222 6 , srcInfoPoints = [] } "<>")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 8 222 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 222 8 222 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 10 222 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 10 222 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 10 222 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 10 222 16 , srcInfoPoints = [] } "liftA2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 17 222 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 222 17 222 18 , SrcSpan "tests/examples/DerivingVia.hs" 222 18 222 20 , SrcSpan "tests/examples/DerivingVia.hs" 222 20 222 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 17 222 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 222 17 222 18 , SrcSpan "tests/examples/DerivingVia.hs" 222 18 222 20 , SrcSpan "tests/examples/DerivingVia.hs" 222 20 222 21 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 222 18 222 20 , srcInfoPoints = [] } "<>"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 1 230 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 224 1 224 9 , SrcSpan "tests/examples/DerivingVia.hs" 224 68 224 73 , SrcSpan "tests/examples/DerivingVia.hs" 225 3 225 3 , SrcSpan "tests/examples/DerivingVia.hs" 230 1 230 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 10 224 67 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 10 224 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 224 10 224 11 , SrcSpan "tests/examples/DerivingVia.hs" 224 24 224 25 , SrcSpan "tests/examples/DerivingVia.hs" 224 34 224 35 , SrcSpan "tests/examples/DerivingVia.hs" 224 36 224 38 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 11 224 24 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 11 224 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 11 224 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 11 224 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 11 224 22 , srcInfoPoints = [] } "Applicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 23 224 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 23 224 24 , srcInfoPoints = [] } "f"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 26 224 34 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 26 224 34 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 26 224 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 26 224 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 26 224 32 , srcInfoPoints = [] } "Monoid"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 33 224 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 33 224 34 , srcInfoPoints = [] } "m"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 39 224 67 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 39 224 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 39 224 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 39 224 45 , srcInfoPoints = [] } "Monoid"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 46 224 67 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 224 46 224 47 , SrcSpan "tests/examples/DerivingVia.hs" 224 66 224 67 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 47 224 66 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 47 224 64 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 47 224 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 47 224 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 47 224 62 , srcInfoPoints = [] } "WrapApplicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 63 224 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 63 224 64 , srcInfoPoints = [] } "f"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 65 224 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 224 65 224 66 , srcInfoPoints = [] } "m")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 3 225 23 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 3 225 23 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 3 225 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 3 225 9 , srcInfoPoints = [] } "mempty")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 10 225 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 225 10 225 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 12 225 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 12 225 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 12 225 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 12 225 16 , srcInfoPoints = [] } "pure"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 17 225 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 17 225 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 225 17 225 23 , srcInfoPoints = [] } "mempty"))))) Nothing) ]) , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 230 1 231 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 230 1 230 6 , SrcSpan "tests/examples/DerivingVia.hs" 230 17 230 22 , SrcSpan "tests/examples/DerivingVia.hs" 231 3 231 3 , SrcSpan "tests/examples/DerivingVia.hs" 233 1 233 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 230 7 230 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 230 7 230 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 230 7 230 14 , srcInfoPoints = [] } "Pointed")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 230 15 230 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 230 15 230 16 , srcInfoPoints = [] } "p"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 3 231 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 231 11 231 13 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 3 231 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 231 11 231 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 3 231 10 , srcInfoPoints = [] } "pointed" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 14 231 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 231 16 231 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 14 231 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 14 231 15 , srcInfoPoints = [] } "a")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 19 231 22 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 19 231 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 19 231 20 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 21 231 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 231 21 231 22 , srcInfoPoints = [] } "a"))))) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 1 234 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 233 23 233 24 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 1 233 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 9 233 22 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 9 233 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 9 233 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 9 233 18 , srcInfoPoints = [] } "WrapMonad")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 19 233 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 19 233 20 , srcInfoPoints = [] } "f"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 21 233 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 21 233 22 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 25 233 43 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 25 233 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 25 233 37 , srcInfoPoints = [] } "WrappedMonad") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 38 233 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 233 38 233 39 , SrcSpan "tests/examples/DerivingVia.hs" 233 42 233 43 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 39 233 42 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 39 233 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 39 233 40 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 41 233 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 233 41 233 42 , srcInfoPoints = [] } "a"))) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 3 234 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 234 3 234 11 , SrcSpan "tests/examples/DerivingVia.hs" 234 20 234 21 , SrcSpan "tests/examples/DerivingVia.hs" 234 28 234 29 , SrcSpan "tests/examples/DerivingVia.hs" 234 35 234 36 ] } (Just (DerivNewtype SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 12 234 19 , srcInfoPoints = [] })) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 21 234 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 21 234 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 21 234 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 21 234 28 , srcInfoPoints = [] } "Pointed"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 30 234 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 30 234 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 30 234 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 234 30 234 35 , srcInfoPoints = [] } "Monad"))) ] ] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 1 239 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 236 1 236 9 , SrcSpan "tests/examples/DerivingVia.hs" 236 56 236 61 , SrcSpan "tests/examples/DerivingVia.hs" 237 3 237 3 , SrcSpan "tests/examples/DerivingVia.hs" 239 1 239 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 10 236 55 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 10 236 33 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 236 10 236 11 , SrcSpan "tests/examples/DerivingVia.hs" 236 18 236 19 , SrcSpan "tests/examples/DerivingVia.hs" 236 29 236 30 , SrcSpan "tests/examples/DerivingVia.hs" 236 31 236 33 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 11 236 18 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 11 236 18 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 11 236 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 11 236 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 11 236 16 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 17 236 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 17 236 18 , srcInfoPoints = [] } "m"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 20 236 29 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 20 236 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 20 236 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 20 236 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 20 236 27 , srcInfoPoints = [] } "Pointed"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 28 236 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 28 236 29 , srcInfoPoints = [] } "m"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 34 236 55 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 34 236 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 34 236 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 34 236 41 , srcInfoPoints = [] } "Functor"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 42 236 55 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 236 42 236 43 , SrcSpan "tests/examples/DerivingVia.hs" 236 54 236 55 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 43 236 54 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 43 236 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 43 236 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 43 236 52 , srcInfoPoints = [] } "WrapMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 53 236 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 236 53 236 54 , srcInfoPoints = [] } "m")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 237 3 237 15 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 237 3 237 15 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 237 3 237 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 237 3 237 7 , srcInfoPoints = [] } "fmap")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 237 8 237 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 237 8 237 9 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 237 10 237 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 237 10 237 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 237 10 237 15 , srcInfoPoints = [] } "liftM")))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 1 244 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 239 1 239 9 , SrcSpan "tests/examples/DerivingVia.hs" 239 60 239 65 , SrcSpan "tests/examples/DerivingVia.hs" 240 3 240 3 , SrcSpan "tests/examples/DerivingVia.hs" 241 3 241 3 , SrcSpan "tests/examples/DerivingVia.hs" 244 1 244 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 10 239 59 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 10 239 33 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 239 10 239 11 , SrcSpan "tests/examples/DerivingVia.hs" 239 18 239 19 , SrcSpan "tests/examples/DerivingVia.hs" 239 29 239 30 , SrcSpan "tests/examples/DerivingVia.hs" 239 31 239 33 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 11 239 18 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 11 239 18 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 11 239 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 11 239 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 11 239 16 , srcInfoPoints = [] } "Monad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 17 239 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 17 239 18 , srcInfoPoints = [] } "m"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 20 239 29 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 20 239 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 20 239 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 20 239 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 20 239 27 , srcInfoPoints = [] } "Pointed"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 28 239 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 28 239 29 , srcInfoPoints = [] } "m"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 34 239 59 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 34 239 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 34 239 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 34 239 45 , srcInfoPoints = [] } "Applicative"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 46 239 59 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 239 46 239 47 , SrcSpan "tests/examples/DerivingVia.hs" 239 58 239 59 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 47 239 58 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 47 239 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 47 239 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 47 239 56 , srcInfoPoints = [] } "WrapMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 57 239 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 239 57 239 58 , srcInfoPoints = [] } "m")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 240 3 240 18 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 240 3 240 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 240 3 240 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 240 3 240 7 , srcInfoPoints = [] } "pure")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 240 9 240 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 240 9 240 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 240 11 240 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 240 11 240 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 240 11 240 18 , srcInfoPoints = [] } "pointed")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 241 3 241 13 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 241 3 241 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 241 3 241 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 241 3 241 4 , SrcSpan "tests/examples/DerivingVia.hs" 241 4 241 7 , SrcSpan "tests/examples/DerivingVia.hs" 241 7 241 8 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 241 4 241 7 , srcInfoPoints = [] } "<*>")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 241 9 241 13 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 241 9 241 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 241 11 241 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 241 11 241 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 241 11 241 13 , srcInfoPoints = [] } "ap")))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 1 247 58 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 244 15 244 16 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 1 244 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 6 244 14 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 6 244 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 6 244 12 , srcInfoPoints = [] } "Sorted")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 13 244 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 13 244 14 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 17 244 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 17 244 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 17 244 23 , srcInfoPoints = [] } "Sorted") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 24 244 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 24 244 25 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 26 244 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 26 244 27 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 28 244 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 244 28 244 29 , srcInfoPoints = [] } "a") ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 245 3 245 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 245 3 245 11 , SrcSpan "tests/examples/DerivingVia.hs" 245 12 245 13 , SrcSpan "tests/examples/DerivingVia.hs" 245 20 245 21 , SrcSpan "tests/examples/DerivingVia.hs" 245 33 245 34 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 246 5 246 8 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 246 9 246 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 246 9 246 10 , SrcSpan "tests/examples/DerivingVia.hs" 246 26 246 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 246 10 246 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 246 10 246 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 246 10 246 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 246 10 246 19 , srcInfoPoints = [] } "WrapMonad"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 246 20 246 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 246 20 246 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 246 20 246 26 , srcInfoPoints = [] } "Sorted"))))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 245 13 245 20 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 245 13 245 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 245 13 245 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 245 13 245 20 , srcInfoPoints = [] } "Functor"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 245 22 245 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 245 22 245 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 245 22 245 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 245 22 245 33 , srcInfoPoints = [] } "Applicative"))) ] , Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 3 247 58 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 247 3 247 11 , SrcSpan "tests/examples/DerivingVia.hs" 247 12 247 13 , SrcSpan "tests/examples/DerivingVia.hs" 247 16 247 17 , SrcSpan "tests/examples/DerivingVia.hs" 247 28 247 29 , SrcSpan "tests/examples/DerivingVia.hs" 247 38 247 39 , SrcSpan "tests/examples/DerivingVia.hs" 247 49 247 50 , SrcSpan "tests/examples/DerivingVia.hs" 247 57 247 58 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 5 248 8 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 9 248 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 248 9 248 10 , SrcSpan "tests/examples/DerivingVia.hs" 248 34 248 35 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 10 248 34 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 10 248 32 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 10 248 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 10 248 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 10 248 25 , srcInfoPoints = [] } "WrapApplicative"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 26 248 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 26 248 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 26 248 32 , srcInfoPoints = [] } "Sorted")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 33 248 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 248 33 248 34 , srcInfoPoints = [] } "a")))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 13 247 16 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 13 247 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 13 247 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 13 247 16 , srcInfoPoints = [] } "Num"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 18 247 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 18 247 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 18 247 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 18 247 28 , srcInfoPoints = [] } "Fractional"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 30 247 38 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 30 247 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 30 247 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 30 247 38 , srcInfoPoints = [] } "Floating"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 40 247 49 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 40 247 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 40 247 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 40 247 49 , srcInfoPoints = [] } "Semigroup"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 51 247 57 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 51 247 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 51 247 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 247 51 247 57 , srcInfoPoints = [] } "Monoid"))) ] ] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 251 1 258 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 251 1 251 9 , SrcSpan "tests/examples/DerivingVia.hs" 251 23 251 28 , SrcSpan "tests/examples/DerivingVia.hs" 252 3 252 3 , SrcSpan "tests/examples/DerivingVia.hs" 253 3 253 3 , SrcSpan "tests/examples/DerivingVia.hs" 258 1 258 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 251 10 251 22 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 251 10 251 22 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 251 10 251 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 251 10 251 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 251 10 251 15 , srcInfoPoints = [] } "Monad"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 251 16 251 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 251 16 251 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 251 16 251 22 , srcInfoPoints = [] } "Sorted"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 3 252 51 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 252 9 252 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 3 252 51 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 252 9 252 11 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 3 252 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 252 3 252 4 , SrcSpan "tests/examples/DerivingVia.hs" 252 4 252 7 , SrcSpan "tests/examples/DerivingVia.hs" 252 7 252 8 ] } ">>=" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 12 252 51 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 252 21 252 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 12 252 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 12 252 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 12 252 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 12 252 18 , srcInfoPoints = [] } "Sorted"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 19 252 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 19 252 20 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 24 252 51 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 252 40 252 42 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 24 252 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 252 24 252 25 , SrcSpan "tests/examples/DerivingVia.hs" 252 38 252 39 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 25 252 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 252 27 252 29 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 25 252 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 25 252 26 , srcInfoPoints = [] } "a")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 30 252 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 30 252 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 30 252 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 30 252 36 , srcInfoPoints = [] } "Sorted"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 37 252 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 37 252 38 , srcInfoPoints = [] } "b"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 43 252 51 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 43 252 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 43 252 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 43 252 49 , srcInfoPoints = [] } "Sorted"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 50 252 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 252 50 252 51 , srcInfoPoints = [] } "b")))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 3 256 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 253 40 253 45 ] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 3 256 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 253 40 253 45 ] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 3 256 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 253 40 253 45 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 3 253 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 3 253 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 3 253 9 , srcInfoPoints = [] } "Sorted")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 10 253 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 10 253 11 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 12 253 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 12 253 13 , srcInfoPoints = [] } "b") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 14 253 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 14 253 15 , srcInfoPoints = [] } "c") ]) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 16 253 19 , srcInfoPoints = [] } ">>=") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 20 253 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 20 253 21 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 22 253 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 253 22 253 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 24 253 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 24 253 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 24 253 33 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 24 253 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 24 253 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 24 253 30 , srcInfoPoints = [] } "Sorted"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 31 253 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 31 253 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 31 253 33 , srcInfoPoints = [] } "a'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 34 253 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 34 253 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 34 253 36 , srcInfoPoints = [] } "b'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 37 253 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 37 253 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 253 37 253 39 , srcInfoPoints = [] } "c'"))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 5 256 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 254 5 254 5 , SrcSpan "tests/examples/DerivingVia.hs" 255 5 255 5 , SrcSpan "tests/examples/DerivingVia.hs" 256 5 256 5 , SrcSpan "tests/examples/DerivingVia.hs" 258 1 258 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 5 254 26 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 5 254 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 5 254 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 5 254 11 , srcInfoPoints = [] } "Sorted")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 12 254 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 12 254 14 , srcInfoPoints = [] } "a'") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 15 254 16 , srcInfoPoints = [] } , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 18 254 19 , srcInfoPoints = [] } ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 21 254 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 254 21 254 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 23 254 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 23 254 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 23 254 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 23 254 24 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 25 254 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 25 254 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 254 25 254 26 , srcInfoPoints = [] } "a"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 5 255 26 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 5 255 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 5 255 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 5 255 11 , srcInfoPoints = [] } "Sorted")) [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 12 255 13 , srcInfoPoints = [] } , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 15 255 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 15 255 17 , srcInfoPoints = [] } "b'") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 18 255 19 , srcInfoPoints = [] } ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 21 255 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 255 21 255 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 23 255 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 23 255 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 23 255 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 23 255 24 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 25 255 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 25 255 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 255 25 255 26 , srcInfoPoints = [] } "b"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 5 256 26 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 5 256 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 5 256 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 5 256 11 , srcInfoPoints = [] } "Sorted")) [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 12 256 13 , srcInfoPoints = [] } , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 15 256 16 , srcInfoPoints = [] } , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 18 256 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 18 256 20 , srcInfoPoints = [] } "c'") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 21 256 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 256 21 256 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 23 256 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 23 256 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 23 256 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 23 256 24 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 25 256 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 25 256 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 256 25 256 26 , srcInfoPoints = [] } "c"))))) Nothing ])) ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 258 1 265 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 258 1 258 9 , SrcSpan "tests/examples/DerivingVia.hs" 258 25 258 30 , SrcSpan "tests/examples/DerivingVia.hs" 259 3 259 3 , SrcSpan "tests/examples/DerivingVia.hs" 260 3 260 3 , SrcSpan "tests/examples/DerivingVia.hs" 265 1 265 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 258 10 258 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 258 10 258 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 258 10 258 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 258 10 258 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 258 10 258 17 , srcInfoPoints = [] } "Pointed"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 258 18 258 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 258 18 258 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 258 18 258 24 , srcInfoPoints = [] } "Sorted"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 3 259 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 259 11 259 13 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 3 259 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 259 11 259 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 3 259 10 , srcInfoPoints = [] } "pointed" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 14 259 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 259 16 259 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 14 259 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 14 259 15 , srcInfoPoints = [] } "a")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 19 259 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 19 259 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 19 259 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 19 259 25 , srcInfoPoints = [] } "Sorted"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 26 259 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 259 26 259 27 , srcInfoPoints = [] } "a"))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 3 260 27 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 3 260 27 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 3 260 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 3 260 10 , srcInfoPoints = [] } "pointed") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 11 260 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 11 260 12 , srcInfoPoints = [] } "a") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 13 260 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 260 13 260 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 15 260 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 15 260 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 15 260 23 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 15 260 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 15 260 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 15 260 21 , srcInfoPoints = [] } "Sorted"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 22 260 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 22 260 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 22 260 23 , srcInfoPoints = [] } "a")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 24 260 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 24 260 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 24 260 25 , srcInfoPoints = [] } "a")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 26 260 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 26 260 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 260 26 260 27 , srcInfoPoints = [] } "a"))))) Nothing ]) ]) , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 265 1 266 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 265 1 265 6 , SrcSpan "tests/examples/DerivingVia.hs" 265 16 265 21 , SrcSpan "tests/examples/DerivingVia.hs" 266 3 266 3 , SrcSpan "tests/examples/DerivingVia.hs" 268 1 268 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 265 7 265 15 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 265 7 265 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 265 7 265 13 , srcInfoPoints = [] } "IsZero")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 265 14 265 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 265 14 265 15 , srcInfoPoints = [] } "a"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 266 3 266 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 266 10 266 12 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 266 3 266 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 266 10 266 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 266 3 266 9 , srcInfoPoints = [] } "isZero" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 266 13 266 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 266 15 266 17 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 266 13 266 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 266 13 266 14 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 266 18 266 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 266 18 266 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 266 18 266 22 , srcInfoPoints = [] } "Bool"))))) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 1 268 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 268 25 268 26 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 1 268 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 9 268 24 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 9 268 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 9 268 21 , srcInfoPoints = [] } "WrappedNumEq")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 23 268 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 23 268 24 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 27 268 41 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 27 268 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 27 268 39 , srcInfoPoints = [] } "WrappedNumEq") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 40 268 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 268 40 268 41 , srcInfoPoints = [] } "a") ]) ] [] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 1 269 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 269 25 269 26 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 1 269 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 9 269 24 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 9 269 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 9 269 20 , srcInfoPoints = [] } "WrappedShow")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 23 269 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 23 269 24 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 27 269 41 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 27 269 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 27 269 38 , srcInfoPoints = [] } "WrappedShow") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 40 269 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 269 40 269 41 , srcInfoPoints = [] } "a") ]) ] [] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 1 270 42 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 270 25 270 26 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 1 270 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 9 270 24 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 9 270 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 9 270 22 , srcInfoPoints = [] } "WrappedNumEq2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 23 270 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 23 270 24 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 27 270 42 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 27 270 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 27 270 40 , srcInfoPoints = [] } "WrappedNumEq2") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 41 270 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 270 41 270 42 , srcInfoPoints = [] } "a") ]) ] [] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 1 276 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 272 1 272 9 , SrcSpan "tests/examples/DerivingVia.hs" 272 51 272 56 , SrcSpan "tests/examples/DerivingVia.hs" 273 3 273 3 , SrcSpan "tests/examples/DerivingVia.hs" 274 3 274 3 , SrcSpan "tests/examples/DerivingVia.hs" 276 1 276 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 10 272 50 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 10 272 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 272 10 272 11 , SrcSpan "tests/examples/DerivingVia.hs" 272 16 272 17 , SrcSpan "tests/examples/DerivingVia.hs" 272 22 272 23 , SrcSpan "tests/examples/DerivingVia.hs" 272 24 272 26 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 11 272 16 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 11 272 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 11 272 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 11 272 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 11 272 14 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 15 272 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 15 272 16 , srcInfoPoints = [] } "a"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 18 272 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 18 272 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 18 272 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 18 272 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 18 272 20 , srcInfoPoints = [] } "Eq"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 21 272 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 21 272 22 , srcInfoPoints = [] } "a"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 27 272 50 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 27 272 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 27 272 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 27 272 33 , srcInfoPoints = [] } "IsZero"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 34 272 50 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 272 34 272 35 , SrcSpan "tests/examples/DerivingVia.hs" 272 49 272 50 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 35 272 49 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 35 272 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 35 272 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 35 272 47 , srcInfoPoints = [] } "WrappedNumEq"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 48 272 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 272 48 272 49 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 3 273 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 273 10 273 12 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 3 273 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 273 10 273 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 3 273 9 , srcInfoPoints = [] } "isZero" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 13 273 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 273 28 273 30 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 13 273 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 13 273 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 13 273 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 13 273 25 , srcInfoPoints = [] } "WrappedNumEq"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 26 273 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 26 273 27 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 31 273 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 31 273 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 273 31 273 35 , srcInfoPoints = [] } "Bool"))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 3 274 35 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 3 274 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 3 274 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 3 274 9 , srcInfoPoints = [] } "isZero") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 10 274 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 274 10 274 11 , SrcSpan "tests/examples/DerivingVia.hs" 274 25 274 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 11 274 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 11 274 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 11 274 23 , srcInfoPoints = [] } "WrappedNumEq")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 24 274 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 24 274 25 , srcInfoPoints = [] } "a") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 27 274 35 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 274 27 274 28 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 29 274 35 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 29 274 30 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 29 274 30 , srcInfoPoints = [] } 0 "0")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 31 274 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 31 274 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 31 274 33 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 34 274 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 34 274 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 274 34 274 35 , srcInfoPoints = [] } "a"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 1 280 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 276 1 276 9 , SrcSpan "tests/examples/DerivingVia.hs" 276 43 276 48 , SrcSpan "tests/examples/DerivingVia.hs" 277 3 277 3 , SrcSpan "tests/examples/DerivingVia.hs" 278 3 278 3 , SrcSpan "tests/examples/DerivingVia.hs" 280 1 280 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 10 276 42 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 10 276 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 276 17 276 19 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 10 276 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 276 17 276 19 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 10 276 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 276 17 276 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 10 276 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 276 17 276 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 10 276 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 10 276 14 , srcInfoPoints = [] } "Show"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 15 276 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 15 276 16 , srcInfoPoints = [] } "a")))))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 20 276 42 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 20 276 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 20 276 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 20 276 26 , srcInfoPoints = [] } "IsZero"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 27 276 42 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 276 27 276 28 , SrcSpan "tests/examples/DerivingVia.hs" 276 41 276 42 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 28 276 41 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 28 276 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 28 276 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 28 276 39 , srcInfoPoints = [] } "WrappedShow"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 40 276 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 276 40 276 41 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 3 277 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 277 10 277 12 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 3 277 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 277 10 277 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 3 277 9 , srcInfoPoints = [] } "isZero" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 13 277 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 277 27 277 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 13 277 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 13 277 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 13 277 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 13 277 24 , srcInfoPoints = [] } "WrappedShow"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 25 277 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 25 277 26 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 30 277 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 30 277 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 277 30 277 34 , srcInfoPoints = [] } "Bool"))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 3 278 41 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 3 278 41 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 3 278 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 3 278 9 , srcInfoPoints = [] } "isZero") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 10 278 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 278 10 278 11 , SrcSpan "tests/examples/DerivingVia.hs" 278 24 278 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 11 278 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 11 278 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 11 278 22 , srcInfoPoints = [] } "WrappedShow")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 23 278 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 23 278 24 , srcInfoPoints = [] } "a") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 26 278 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 278 26 278 27 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 28 278 41 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 28 278 31 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 28 278 31 , srcInfoPoints = [] } "0" "0")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 32 278 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 32 278 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 32 278 34 , srcInfoPoints = [] } "=="))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 35 278 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 35 278 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 35 278 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 35 278 39 , srcInfoPoints = [] } "show"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 40 278 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 40 278 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 278 40 278 41 , srcInfoPoints = [] } "a")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 1 284 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 280 1 280 9 , SrcSpan "tests/examples/DerivingVia.hs" 280 52 280 57 , SrcSpan "tests/examples/DerivingVia.hs" 281 3 281 3 , SrcSpan "tests/examples/DerivingVia.hs" 282 3 282 3 , SrcSpan "tests/examples/DerivingVia.hs" 284 1 284 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 10 280 51 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 10 280 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 280 10 280 11 , SrcSpan "tests/examples/DerivingVia.hs" 280 16 280 17 , SrcSpan "tests/examples/DerivingVia.hs" 280 22 280 23 , SrcSpan "tests/examples/DerivingVia.hs" 280 24 280 26 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 11 280 16 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 11 280 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 11 280 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 11 280 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 11 280 14 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 15 280 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 15 280 16 , srcInfoPoints = [] } "a"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 18 280 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 18 280 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 18 280 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 18 280 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 18 280 20 , srcInfoPoints = [] } "Eq"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 21 280 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 21 280 22 , srcInfoPoints = [] } "a"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 27 280 51 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 27 280 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 27 280 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 27 280 33 , srcInfoPoints = [] } "IsZero"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 34 280 51 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 280 34 280 35 , SrcSpan "tests/examples/DerivingVia.hs" 280 50 280 51 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 35 280 50 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 35 280 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 35 280 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 35 280 48 , srcInfoPoints = [] } "WrappedNumEq2"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 49 280 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 280 49 280 50 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 3 281 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 281 10 281 12 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 3 281 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 281 10 281 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 3 281 9 , srcInfoPoints = [] } "isZero" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 13 281 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 281 29 281 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 13 281 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 13 281 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 13 281 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 13 281 26 , srcInfoPoints = [] } "WrappedNumEq2"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 27 281 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 27 281 28 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 32 281 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 32 281 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 281 32 281 36 , srcInfoPoints = [] } "Bool"))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 3 282 40 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 3 282 40 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 3 282 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 3 282 9 , srcInfoPoints = [] } "isZero") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 10 282 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 282 10 282 11 , SrcSpan "tests/examples/DerivingVia.hs" 282 26 282 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 11 282 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 11 282 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 11 282 24 , srcInfoPoints = [] } "WrappedNumEq2")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 25 282 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 25 282 26 , srcInfoPoints = [] } "a") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 28 282 40 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 282 28 282 29 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 30 282 40 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 30 282 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 30 282 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 30 282 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 30 282 31 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 32 282 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 32 282 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 32 282 33 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 34 282 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 34 282 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 34 282 35 , srcInfoPoints = [] } "a")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 36 282 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 36 282 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 36 282 38 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 39 282 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 39 282 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 282 39 282 40 , srcInfoPoints = [] } "a"))))) Nothing ]) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 1 286 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 284 13 284 14 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 1 284 8 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 9 284 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 9 284 12 , srcInfoPoints = [] } "INT")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 15 284 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 15 284 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 15 284 18 , srcInfoPoints = [] } "INT") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 19 284 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 19 284 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 284 19 284 22 , srcInfoPoints = [] } "Int")) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 285 3 285 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 285 3 285 11 ] } (Just (DerivNewtype SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 285 12 285 19 , srcInfoPoints = [] })) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 285 20 285 24 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 285 20 285 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 285 20 285 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 285 20 285 24 , srcInfoPoints = [] } "Show"))) ] , Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 3 286 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 286 3 286 11 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 19 286 22 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 23 286 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 286 23 286 24 , SrcSpan "tests/examples/DerivingVia.hs" 286 40 286 41 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 24 286 40 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 24 286 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 24 286 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 24 286 36 , srcInfoPoints = [] } "WrappedNumEq"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 37 286 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 37 286 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 37 286 40 , srcInfoPoints = [] } "Int"))))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 12 286 18 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 12 286 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 12 286 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 286 12 286 18 , srcInfoPoints = [] } "IsZero"))) ] ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 1 288 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 288 14 288 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 1 288 8 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 9 288 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 9 288 13 , srcInfoPoints = [] } "VOID")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 16 288 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 16 288 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 16 288 20 , srcInfoPoints = [] } "VOID") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 21 288 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 21 288 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 21 288 25 , srcInfoPoints = [] } "Void")) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 26 288 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 288 26 288 34 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 42 288 45 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 46 288 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 288 46 288 47 , SrcSpan "tests/examples/DerivingVia.hs" 288 63 288 64 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 47 288 63 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 47 288 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 47 288 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 47 288 58 , srcInfoPoints = [] } "WrappedShow"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 59 288 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 59 288 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 59 288 63 , srcInfoPoints = [] } "Void"))))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 35 288 41 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 35 288 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 35 288 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 288 35 288 41 , srcInfoPoints = [] } "IsZero"))) ] ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 1 301 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 293 1 293 6 , SrcSpan "tests/examples/DerivingVia.hs" 293 38 293 43 , SrcSpan "tests/examples/DerivingVia.hs" 294 3 294 3 , SrcSpan "tests/examples/DerivingVia.hs" 296 3 296 3 , SrcSpan "tests/examples/DerivingVia.hs" 303 1 303 0 ] } (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 7 293 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 293 19 293 21 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 7 293 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 293 19 293 21 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 7 293 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 293 19 293 21 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 7 293 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 293 19 293 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 7 293 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 7 293 16 , srcInfoPoints = [] } "Bifunctor"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 17 293 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 17 293 18 , srcInfoPoints = [] } "p")))))) (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 22 293 37 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 22 293 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 22 293 35 , srcInfoPoints = [] } "Biapplicative")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 36 293 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 293 36 293 37 , srcInfoPoints = [] } "p"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 3 294 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 294 10 294 12 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 3 294 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 294 10 294 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 3 294 9 , srcInfoPoints = [] } "bipure" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 13 294 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 294 15 294 17 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 13 294 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 13 294 14 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 18 294 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 294 20 294 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 18 294 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 18 294 19 , srcInfoPoints = [] } "b")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 23 294 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 23 294 26 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 23 294 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 23 294 24 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 25 294 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 25 294 26 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 27 294 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 294 27 294 28 , srcInfoPoints = [] } "b")))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 296 3 301 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 297 5 297 7 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 296 3 301 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 297 5 297 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 296 3 296 11 , srcInfoPoints = [] } "biliftA2" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 8 301 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 298 5 298 7 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 8 297 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 297 8 297 9 , SrcSpan "tests/examples/DerivingVia.hs" 297 22 297 23 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 9 297 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 297 12 297 14 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 9 297 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 9 297 10 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 15 297 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 297 18 297 20 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 15 297 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 15 297 16 , srcInfoPoints = [] } "b")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 21 297 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 297 21 297 22 , srcInfoPoints = [] } "c"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 8 301 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 299 5 299 7 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 8 298 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 298 8 298 9 , SrcSpan "tests/examples/DerivingVia.hs" 298 23 298 24 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 9 298 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 298 12 298 14 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 9 298 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 9 298 11 , srcInfoPoints = [] } "a'")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 15 298 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 298 18 298 20 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 15 298 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 15 298 17 , srcInfoPoints = [] } "b'")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 21 298 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 298 21 298 23 , srcInfoPoints = [] } "c'"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 299 8 301 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 300 5 300 7 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 299 8 299 14 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 299 8 299 11 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 299 8 299 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 299 8 299 9 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 299 10 299 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 299 10 299 11 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 299 12 299 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 299 12 299 14 , srcInfoPoints = [] } "a'"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 300 8 301 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 301 5 301 7 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 300 8 300 14 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 300 8 300 11 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 300 8 300 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 300 8 300 9 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 300 10 300 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 300 10 300 11 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 300 12 300 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 300 12 300 14 , srcInfoPoints = [] } "b'"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 301 8 301 14 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 301 8 301 11 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 301 8 301 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 301 8 301 9 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 301 10 301 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 301 10 301 11 , srcInfoPoints = [] } "c"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 301 12 301 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 301 12 301 14 , srcInfoPoints = [] } "c'")))))))) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 303 1 309 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 303 1 303 9 , SrcSpan "tests/examples/DerivingVia.hs" 303 28 303 33 , SrcSpan "tests/examples/DerivingVia.hs" 304 3 304 3 , SrcSpan "tests/examples/DerivingVia.hs" 306 3 306 3 , SrcSpan "tests/examples/DerivingVia.hs" 309 1 309 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 303 10 303 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 303 10 303 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 303 10 303 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 303 10 303 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 303 10 303 23 , srcInfoPoints = [] } "Biapplicative"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 303 24 303 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 303 24 303 25 , SrcSpan "tests/examples/DerivingVia.hs" 303 25 303 26 , SrcSpan "tests/examples/DerivingVia.hs" 303 26 303 27 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 303 24 303 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 303 24 303 25 , SrcSpan "tests/examples/DerivingVia.hs" 303 25 303 26 , SrcSpan "tests/examples/DerivingVia.hs" 303 26 303 27 ] } (TupleCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 303 24 303 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 303 24 303 25 , SrcSpan "tests/examples/DerivingVia.hs" 303 25 303 26 , SrcSpan "tests/examples/DerivingVia.hs" 303 26 303 27 ] } Boxed 2))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 304 3 304 15 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 304 3 304 15 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 304 3 304 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 304 3 304 9 , srcInfoPoints = [] } "bipure")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 304 10 304 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 304 10 304 11 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 304 12 304 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 304 12 304 13 , SrcSpan "tests/examples/DerivingVia.hs" 304 13 304 14 , SrcSpan "tests/examples/DerivingVia.hs" 304 14 304 15 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 304 12 304 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 304 12 304 13 , SrcSpan "tests/examples/DerivingVia.hs" 304 13 304 14 , SrcSpan "tests/examples/DerivingVia.hs" 304 14 304 15 ] } (TupleCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 304 12 304 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 304 12 304 13 , SrcSpan "tests/examples/DerivingVia.hs" 304 13 304 14 , SrcSpan "tests/examples/DerivingVia.hs" 304 14 304 15 ] } Boxed 2)))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 3 307 22 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 3 307 22 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 3 307 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 3 306 11 , srcInfoPoints = [] } "biliftA2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 12 306 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 12 306 13 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 14 306 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 14 306 16 , srcInfoPoints = [] } "f'") , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 17 306 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 306 17 306 18 , SrcSpan "tests/examples/DerivingVia.hs" 306 19 306 20 , SrcSpan "tests/examples/DerivingVia.hs" 306 23 306 24 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 18 306 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 18 306 19 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 21 306 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 21 306 23 , srcInfoPoints = [] } "a'") ] , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 25 306 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 306 25 306 26 , SrcSpan "tests/examples/DerivingVia.hs" 306 27 306 28 , SrcSpan "tests/examples/DerivingVia.hs" 306 31 306 32 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 26 306 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 26 306 27 , srcInfoPoints = [] } "b") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 29 306 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 29 306 31 , srcInfoPoints = [] } "b'") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 306 33 307 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 306 33 306 34 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 5 307 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 307 5 307 6 , SrcSpan "tests/examples/DerivingVia.hs" 307 11 307 12 , SrcSpan "tests/examples/DerivingVia.hs" 307 21 307 22 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 6 307 11 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 6 307 9 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 6 307 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 6 307 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 6 307 7 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 8 307 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 8 307 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 8 307 9 , srcInfoPoints = [] } "a")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 10 307 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 10 307 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 10 307 11 , srcInfoPoints = [] } "b"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 13 307 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 13 307 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 13 307 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 13 307 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 13 307 15 , srcInfoPoints = [] } "f'"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 16 307 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 16 307 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 16 307 18 , srcInfoPoints = [] } "a'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 19 307 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 19 307 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 307 19 307 21 , srcInfoPoints = [] } "b'"))) ])) Nothing ]) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 1 310 50 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 309 25 309 26 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 1 309 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 9 309 24 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 9 309 22 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 9 309 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 9 309 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 9 309 18 , srcInfoPoints = [] } "WrapBiapp")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 19 309 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 19 309 20 , srcInfoPoints = [] } "p"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 21 309 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 21 309 22 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 23 309 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 23 309 24 , srcInfoPoints = [] } "b"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 27 309 43 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 27 309 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 27 309 35 , srcInfoPoints = [] } "WrapBiap") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 36 309 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 309 36 309 37 , SrcSpan "tests/examples/DerivingVia.hs" 309 42 309 43 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 37 309 42 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 37 309 40 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 37 309 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 37 309 38 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 39 309 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 39 309 40 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 41 309 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 309 41 309 42 , srcInfoPoints = [] } "b"))) ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 3 310 50 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 310 3 310 11 , SrcSpan "tests/examples/DerivingVia.hs" 310 20 310 21 , SrcSpan "tests/examples/DerivingVia.hs" 310 30 310 31 , SrcSpan "tests/examples/DerivingVia.hs" 310 45 310 46 , SrcSpan "tests/examples/DerivingVia.hs" 310 49 310 50 ] } (Just (DerivNewtype SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 12 310 19 , srcInfoPoints = [] })) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 21 310 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 21 310 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 21 310 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 21 310 30 , srcInfoPoints = [] } "Bifunctor"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 32 310 45 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 32 310 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 32 310 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 32 310 45 , srcInfoPoints = [] } "Biapplicative"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 47 310 49 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 47 310 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 47 310 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 310 47 310 49 , srcInfoPoints = [] } "Eq"))) ] ] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 1 321 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 312 1 312 9 , SrcSpan "tests/examples/DerivingVia.hs" 312 67 312 72 , SrcSpan "tests/examples/DerivingVia.hs" 313 3 313 3 , SrcSpan "tests/examples/DerivingVia.hs" 314 3 314 3 , SrcSpan "tests/examples/DerivingVia.hs" 315 3 315 3 , SrcSpan "tests/examples/DerivingVia.hs" 316 3 316 3 , SrcSpan "tests/examples/DerivingVia.hs" 317 3 317 3 , SrcSpan "tests/examples/DerivingVia.hs" 318 3 318 3 , SrcSpan "tests/examples/DerivingVia.hs" 319 3 319 3 , SrcSpan "tests/examples/DerivingVia.hs" 321 1 321 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 10 312 66 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 10 312 44 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 312 10 312 11 , SrcSpan "tests/examples/DerivingVia.hs" 312 26 312 27 , SrcSpan "tests/examples/DerivingVia.hs" 312 33 312 34 , SrcSpan "tests/examples/DerivingVia.hs" 312 40 312 41 , SrcSpan "tests/examples/DerivingVia.hs" 312 42 312 44 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 11 312 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 11 312 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 11 312 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 11 312 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 11 312 24 , srcInfoPoints = [] } "Biapplicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 25 312 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 25 312 26 , srcInfoPoints = [] } "p"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 28 312 33 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 28 312 33 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 28 312 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 28 312 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 28 312 31 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 32 312 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 32 312 33 , srcInfoPoints = [] } "a"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 35 312 40 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 35 312 40 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 35 312 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 35 312 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 35 312 38 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 39 312 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 39 312 40 , srcInfoPoints = [] } "b"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 45 312 66 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 45 312 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 45 312 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 45 312 48 , srcInfoPoints = [] } "Num"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 49 312 66 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 312 49 312 50 , SrcSpan "tests/examples/DerivingVia.hs" 312 65 312 66 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 50 312 65 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 50 312 63 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 50 312 61 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 50 312 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 50 312 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 50 312 59 , srcInfoPoints = [] } "WrapBiapp"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 60 312 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 60 312 61 , srcInfoPoints = [] } "p"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 62 312 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 62 312 63 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 64 312 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 312 64 312 65 , srcInfoPoints = [] } "b")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 3 313 25 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 3 313 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 3 313 6 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 313 3 313 4 , SrcSpan "tests/examples/DerivingVia.hs" 313 4 313 5 , SrcSpan "tests/examples/DerivingVia.hs" 313 5 313 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 4 313 5 , srcInfoPoints = [] } "+")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 7 313 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 313 7 313 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 9 313 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 9 313 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 9 313 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 9 313 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 9 313 17 , srcInfoPoints = [] } "biliftA2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 18 313 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 313 18 313 19 , SrcSpan "tests/examples/DerivingVia.hs" 313 19 313 20 , SrcSpan "tests/examples/DerivingVia.hs" 313 20 313 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 18 313 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 313 18 313 19 , SrcSpan "tests/examples/DerivingVia.hs" 313 19 313 20 , SrcSpan "tests/examples/DerivingVia.hs" 313 20 313 21 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 19 313 20 , srcInfoPoints = [] } "+")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 22 313 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 313 22 313 23 , SrcSpan "tests/examples/DerivingVia.hs" 313 23 313 24 , SrcSpan "tests/examples/DerivingVia.hs" 313 24 313 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 22 313 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 313 22 313 23 , SrcSpan "tests/examples/DerivingVia.hs" 313 23 313 24 , SrcSpan "tests/examples/DerivingVia.hs" 313 24 313 25 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 313 23 313 24 , srcInfoPoints = [] } "+"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 3 314 25 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 3 314 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 3 314 6 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 314 3 314 4 , SrcSpan "tests/examples/DerivingVia.hs" 314 4 314 5 , SrcSpan "tests/examples/DerivingVia.hs" 314 5 314 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 4 314 5 , srcInfoPoints = [] } "-")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 7 314 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 314 7 314 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 9 314 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 9 314 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 9 314 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 9 314 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 9 314 17 , srcInfoPoints = [] } "biliftA2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 18 314 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 314 18 314 19 , SrcSpan "tests/examples/DerivingVia.hs" 314 19 314 20 , SrcSpan "tests/examples/DerivingVia.hs" 314 20 314 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 18 314 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 314 18 314 19 , SrcSpan "tests/examples/DerivingVia.hs" 314 19 314 20 , SrcSpan "tests/examples/DerivingVia.hs" 314 20 314 21 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 19 314 20 , srcInfoPoints = [] } "*")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 22 314 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 314 22 314 23 , SrcSpan "tests/examples/DerivingVia.hs" 314 23 314 24 , SrcSpan "tests/examples/DerivingVia.hs" 314 24 314 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 22 314 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 314 22 314 23 , SrcSpan "tests/examples/DerivingVia.hs" 314 23 314 24 , SrcSpan "tests/examples/DerivingVia.hs" 314 24 314 25 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 314 23 314 24 , srcInfoPoints = [] } "*"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 3 315 25 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 3 315 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 3 315 6 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 315 3 315 4 , SrcSpan "tests/examples/DerivingVia.hs" 315 4 315 5 , SrcSpan "tests/examples/DerivingVia.hs" 315 5 315 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 4 315 5 , srcInfoPoints = [] } "*")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 7 315 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 315 7 315 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 9 315 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 9 315 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 9 315 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 9 315 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 9 315 17 , srcInfoPoints = [] } "biliftA2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 18 315 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 315 18 315 19 , SrcSpan "tests/examples/DerivingVia.hs" 315 19 315 20 , SrcSpan "tests/examples/DerivingVia.hs" 315 20 315 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 18 315 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 315 18 315 19 , SrcSpan "tests/examples/DerivingVia.hs" 315 19 315 20 , SrcSpan "tests/examples/DerivingVia.hs" 315 20 315 21 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 19 315 20 , srcInfoPoints = [] } "*")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 22 315 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 315 22 315 23 , SrcSpan "tests/examples/DerivingVia.hs" 315 23 315 24 , SrcSpan "tests/examples/DerivingVia.hs" 315 24 315 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 22 315 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 315 22 315 23 , SrcSpan "tests/examples/DerivingVia.hs" 315 23 315 24 , SrcSpan "tests/examples/DerivingVia.hs" 315 24 315 25 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 315 23 315 24 , srcInfoPoints = [] } "*"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 3 316 31 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 3 316 31 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 3 316 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 3 316 9 , srcInfoPoints = [] } "negate")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 10 316 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 316 10 316 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 12 316 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 12 316 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 12 316 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 12 316 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 12 316 17 , srcInfoPoints = [] } "bimap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 18 316 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 18 316 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 18 316 24 , srcInfoPoints = [] } "negate")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 25 316 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 25 316 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 316 25 316 31 , srcInfoPoints = [] } "negate"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 3 317 22 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 3 317 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 3 317 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 3 317 6 , srcInfoPoints = [] } "abs")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 7 317 22 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 317 7 317 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 9 317 22 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 9 317 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 9 317 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 9 317 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 9 317 14 , srcInfoPoints = [] } "bimap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 15 317 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 15 317 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 15 317 18 , srcInfoPoints = [] } "abs")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 19 317 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 19 317 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 317 19 317 22 , srcInfoPoints = [] } "abs"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 3 318 31 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 3 318 31 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 3 318 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 3 318 9 , srcInfoPoints = [] } "signum")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 10 318 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 318 10 318 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 12 318 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 12 318 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 12 318 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 12 318 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 12 318 17 , srcInfoPoints = [] } "bimap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 18 318 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 18 318 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 18 318 24 , srcInfoPoints = [] } "signum")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 25 318 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 25 318 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 318 25 318 31 , srcInfoPoints = [] } "signum"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 3 319 55 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 3 319 55 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 3 319 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 3 319 14 , srcInfoPoints = [] } "fromInteger") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 15 319 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 15 319 16 , srcInfoPoints = [] } "n") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 17 319 55 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 319 17 319 18 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 19 319 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 19 319 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 19 319 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 19 319 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 19 319 30 , srcInfoPoints = [] } "fromInteger"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 31 319 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 31 319 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 31 319 32 , srcInfoPoints = [] } "n")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 33 319 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 319 33 319 34 , SrcSpan "tests/examples/DerivingVia.hs" 319 34 319 40 , SrcSpan "tests/examples/DerivingVia.hs" 319 40 319 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 33 319 41 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 319 33 319 34 , SrcSpan "tests/examples/DerivingVia.hs" 319 34 319 40 , SrcSpan "tests/examples/DerivingVia.hs" 319 40 319 41 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 34 319 40 , srcInfoPoints = [] } "bipure"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 42 319 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 42 319 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 42 319 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 42 319 53 , srcInfoPoints = [] } "fromInteger"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 54 319 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 54 319 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 319 54 319 55 , srcInfoPoints = [] } "n")))))) Nothing ]) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 1 322 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 321 14 321 15 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 1 321 8 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 9 321 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 9 321 13 , srcInfoPoints = [] } "INT2")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 16 321 31 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 16 321 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 16 321 20 , srcInfoPoints = [] } "INT2") [ TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 21 321 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 321 21 321 22 , SrcSpan "tests/examples/DerivingVia.hs" 321 25 321 26 , SrcSpan "tests/examples/DerivingVia.hs" 321 30 321 31 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 22 321 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 22 321 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 22 321 25 , srcInfoPoints = [] } "Int")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 27 321 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 27 321 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 321 27 321 30 , srcInfoPoints = [] } "Int")) ] ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 3 322 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 322 3 322 11 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 19 322 22 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 23 322 62 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 322 23 322 24 , SrcSpan "tests/examples/DerivingVia.hs" 322 61 322 62 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 24 322 61 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 24 322 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 24 322 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 24 322 37 , srcInfoPoints = [] } "WrappedNumEq2"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 38 322 61 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 322 38 322 39 , SrcSpan "tests/examples/DerivingVia.hs" 322 60 322 61 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 39 322 60 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 39 322 56 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 39 322 52 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 39 322 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 39 322 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 39 322 48 , srcInfoPoints = [] } "WrapBiapp"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 49 322 52 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 322 49 322 50 , SrcSpan "tests/examples/DerivingVia.hs" 322 50 322 51 , SrcSpan "tests/examples/DerivingVia.hs" 322 51 322 52 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 49 322 52 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 322 49 322 50 , SrcSpan "tests/examples/DerivingVia.hs" 322 50 322 51 , SrcSpan "tests/examples/DerivingVia.hs" 322 51 322 52 ] } (TupleCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 49 322 52 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 322 49 322 50 , SrcSpan "tests/examples/DerivingVia.hs" 322 50 322 51 , SrcSpan "tests/examples/DerivingVia.hs" 322 51 322 52 ] } Boxed 2)))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 53 322 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 53 322 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 53 322 56 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 57 322 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 57 322 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 57 322 60 , srcInfoPoints = [] } "Int"))))))))) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 12 322 18 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 12 322 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 12 322 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 322 12 322 18 , srcInfoPoints = [] } "IsZero"))) ] ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 1 328 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 327 1 327 6 , SrcSpan "tests/examples/DerivingVia.hs" 327 32 327 37 , SrcSpan "tests/examples/DerivingVia.hs" 328 3 328 3 , SrcSpan "tests/examples/DerivingVia.hs" 330 1 330 0 ] } (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 7 327 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 327 16 327 18 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 7 327 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 327 16 327 18 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 7 327 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 327 16 327 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 7 327 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 327 16 327 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 7 327 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 7 327 13 , srcInfoPoints = [] } "Monoid"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 14 327 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 14 327 15 , srcInfoPoints = [] } "a")))))) (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 19 327 31 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 19 327 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 19 327 29 , srcInfoPoints = [] } "MonoidNull")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 30 327 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 327 30 327 31 , srcInfoPoints = [] } "a"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 328 3 328 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 328 8 328 10 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 328 3 328 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 328 8 328 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 328 3 328 7 , srcInfoPoints = [] } "null" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 328 11 328 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 328 13 328 15 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 328 11 328 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 328 11 328 12 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 328 16 328 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 328 16 328 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 328 16 328 20 , srcInfoPoints = [] } "Bool"))))) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 1 330 62 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 330 22 330 23 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 1 330 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 9 330 21 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 9 330 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 9 330 19 , srcInfoPoints = [] } "WrpMonNull")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 20 330 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 20 330 21 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 24 330 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 24 330 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 24 330 27 , srcInfoPoints = [] } "WRM") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 28 330 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 28 330 29 , srcInfoPoints = [] } "a") ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 30 330 62 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 330 30 330 38 , SrcSpan "tests/examples/DerivingVia.hs" 330 39 330 40 , SrcSpan "tests/examples/DerivingVia.hs" 330 42 330 43 , SrcSpan "tests/examples/DerivingVia.hs" 330 53 330 54 , SrcSpan "tests/examples/DerivingVia.hs" 330 61 330 62 ] } Nothing [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 40 330 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 40 330 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 40 330 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 40 330 42 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 44 330 53 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 44 330 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 44 330 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 44 330 53 , srcInfoPoints = [] } "Semigroup"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 55 330 61 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 55 330 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 55 330 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 330 55 330 61 , srcInfoPoints = [] } "Monoid"))) ] ] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 1 336 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 332 1 332 9 , SrcSpan "tests/examples/DerivingVia.hs" 332 56 332 61 , SrcSpan "tests/examples/DerivingVia.hs" 333 3 333 3 , SrcSpan "tests/examples/DerivingVia.hs" 334 3 334 3 , SrcSpan "tests/examples/DerivingVia.hs" 336 1 336 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 10 332 55 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 10 332 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 332 10 332 11 , SrcSpan "tests/examples/DerivingVia.hs" 332 15 332 16 , SrcSpan "tests/examples/DerivingVia.hs" 332 25 332 26 , SrcSpan "tests/examples/DerivingVia.hs" 332 27 332 29 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 11 332 15 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 11 332 15 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 11 332 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 11 332 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 11 332 13 , srcInfoPoints = [] } "Eq"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 14 332 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 14 332 15 , srcInfoPoints = [] } "a"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 17 332 25 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 17 332 25 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 17 332 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 17 332 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 17 332 23 , srcInfoPoints = [] } "Monoid"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 24 332 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 24 332 25 , srcInfoPoints = [] } "a"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 30 332 55 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 30 332 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 30 332 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 30 332 40 , srcInfoPoints = [] } "MonoidNull"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 41 332 55 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 332 41 332 42 , SrcSpan "tests/examples/DerivingVia.hs" 332 54 332 55 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 42 332 54 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 42 332 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 42 332 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 42 332 52 , srcInfoPoints = [] } "WrpMonNull"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 53 332 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 332 53 332 54 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 3 333 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 333 8 333 10 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 3 333 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 333 8 333 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 3 333 7 , srcInfoPoints = [] } "null" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 11 333 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 333 24 333 26 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 11 333 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 11 333 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 11 333 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 11 333 21 , srcInfoPoints = [] } "WrpMonNull"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 22 333 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 22 333 23 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 27 333 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 27 333 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 333 27 333 31 , srcInfoPoints = [] } "Bool"))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 3 334 21 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 3 334 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 3 334 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 3 334 7 , srcInfoPoints = [] } "null")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 8 334 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 334 8 334 9 ] } (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 10 334 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 334 10 334 11 , SrcSpan "tests/examples/DerivingVia.hs" 334 20 334 21 ] } (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 11 334 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 11 334 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 11 334 13 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 14 334 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 14 334 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 334 14 334 20 , srcInfoPoints = [] } "mempty"))))) Nothing) ]) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 1 336 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 336 1 336 9 , SrcSpan "tests/examples/DerivingVia.hs" 336 31 336 39 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 10 336 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 14 336 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 336 14 336 15 , SrcSpan "tests/examples/DerivingVia.hs" 336 29 336 30 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 15 336 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 15 336 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 15 336 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 15 336 25 , srcInfoPoints = [] } "WrpMonNull"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 26 336 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 26 336 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 26 336 29 , srcInfoPoints = [] } "Any"))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 40 336 54 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 40 336 54 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 40 336 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 40 336 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 40 336 50 , srcInfoPoints = [] } "MonoidNull"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 51 336 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 51 336 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 336 51 336 54 , srcInfoPoints = [] } "Any"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 1 337 53 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 337 1 337 9 , SrcSpan "tests/examples/DerivingVia.hs" 337 31 337 39 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 10 337 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 14 337 16 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 337 14 337 15 , SrcSpan "tests/examples/DerivingVia.hs" 337 15 337 16 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 14 337 16 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 337 14 337 15 , SrcSpan "tests/examples/DerivingVia.hs" 337 15 337 16 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 14 337 16 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 337 14 337 15 , SrcSpan "tests/examples/DerivingVia.hs" 337 15 337 16 ] }))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 40 337 53 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 40 337 53 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 40 337 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 40 337 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 40 337 50 , srcInfoPoints = [] } "MonoidNull"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 51 337 53 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 337 51 337 52 , SrcSpan "tests/examples/DerivingVia.hs" 337 52 337 53 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 51 337 53 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 337 51 337 52 , SrcSpan "tests/examples/DerivingVia.hs" 337 52 337 53 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 337 51 337 53 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 337 51 337 52 , SrcSpan "tests/examples/DerivingVia.hs" 337 52 337 53 ] }))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 1 338 59 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 338 1 338 9 , SrcSpan "tests/examples/DerivingVia.hs" 338 31 338 39 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 10 338 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 14 338 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 14 338 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 14 338 22 , srcInfoPoints = [] } "Ordering"))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 40 338 59 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 40 338 59 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 40 338 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 40 338 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 40 338 50 , srcInfoPoints = [] } "MonoidNull"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 51 338 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 51 338 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 338 51 338 59 , srcInfoPoints = [] } "Ordering"))))) , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 345 1 348 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 345 1 345 6 , SrcSpan "tests/examples/DerivingVia.hs" 345 17 345 22 , SrcSpan "tests/examples/DerivingVia.hs" 346 3 346 3 , SrcSpan "tests/examples/DerivingVia.hs" 347 3 347 3 , SrcSpan "tests/examples/DerivingVia.hs" 348 3 348 3 , SrcSpan "tests/examples/DerivingVia.hs" 350 1 350 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 345 7 345 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 345 7 345 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 345 7 345 14 , srcInfoPoints = [] } "Lattice")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 345 15 345 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 345 15 345 16 , srcInfoPoints = [] } "a"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 3 346 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 346 9 346 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 3 346 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 346 9 346 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 3 346 6 , srcInfoPoints = [] } "sup" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 12 346 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 346 14 346 16 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 12 346 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 12 346 13 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 17 346 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 346 19 346 21 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 17 346 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 17 346 18 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 22 346 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 346 22 346 23 , srcInfoPoints = [] } "a"))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 3 347 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 347 9 347 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 3 347 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 347 9 347 11 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 3 347 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 347 3 347 4 , SrcSpan "tests/examples/DerivingVia.hs" 347 4 347 7 , SrcSpan "tests/examples/DerivingVia.hs" 347 7 347 8 ] } ".>=" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 12 347 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 347 14 347 16 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 12 347 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 12 347 13 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 17 347 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 347 19 347 21 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 17 347 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 17 347 18 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 22 347 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 22 347 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 347 22 347 26 , srcInfoPoints = [] } "Bool")))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 3 348 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 348 9 348 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 3 348 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 348 9 348 11 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 3 348 7 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 348 3 348 4 , SrcSpan "tests/examples/DerivingVia.hs" 348 4 348 6 , SrcSpan "tests/examples/DerivingVia.hs" 348 6 348 7 ] } ".>" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 12 348 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 348 14 348 16 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 12 348 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 12 348 13 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 17 348 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 348 19 348 21 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 17 348 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 17 348 18 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 22 348 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 22 348 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 348 22 348 26 , srcInfoPoints = [] } "Bool")))))) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 1 351 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 350 19 350 20 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 1 350 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 9 350 18 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 9 350 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 9 350 16 , srcInfoPoints = [] } "WrapOrd")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 17 350 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 17 350 18 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 21 350 33 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 21 350 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 21 350 31 , srcInfoPoints = [] } "WrappedOrd") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 32 350 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 350 32 350 33 , srcInfoPoints = [] } "a") ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 3 351 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 351 3 351 11 , SrcSpan "tests/examples/DerivingVia.hs" 351 20 351 21 , SrcSpan "tests/examples/DerivingVia.hs" 351 23 351 24 , SrcSpan "tests/examples/DerivingVia.hs" 351 28 351 29 ] } (Just (DerivNewtype SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 12 351 19 , srcInfoPoints = [] })) [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 21 351 23 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 21 351 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 21 351 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 21 351 23 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 25 351 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 25 351 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 25 351 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 351 25 351 28 , srcInfoPoints = [] } "Ord"))) ] ] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 1 358 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 353 1 353 9 , SrcSpan "tests/examples/DerivingVia.hs" 353 39 353 44 , SrcSpan "tests/examples/DerivingVia.hs" 354 3 354 3 , SrcSpan "tests/examples/DerivingVia.hs" 355 3 355 3 , SrcSpan "tests/examples/DerivingVia.hs" 356 3 356 3 , SrcSpan "tests/examples/DerivingVia.hs" 358 1 358 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 10 353 38 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 10 353 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 353 16 353 18 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 10 353 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 353 16 353 18 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 10 353 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 353 16 353 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 10 353 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 353 16 353 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 10 353 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 10 353 13 , srcInfoPoints = [] } "Ord"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 14 353 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 14 353 15 , srcInfoPoints = [] } "a")))))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 19 353 38 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 19 353 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 19 353 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 19 353 26 , srcInfoPoints = [] } "Lattice"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 27 353 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 353 27 353 28 , SrcSpan "tests/examples/DerivingVia.hs" 353 37 353 38 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 28 353 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 28 353 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 28 353 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 28 353 35 , srcInfoPoints = [] } "WrapOrd"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 36 353 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 353 36 353 37 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 354 3 354 14 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 354 3 354 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 354 3 354 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 354 3 354 6 , srcInfoPoints = [] } "sup")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 354 9 354 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 354 9 354 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 354 11 354 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 354 11 354 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 354 11 354 14 , srcInfoPoints = [] } "max")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 355 3 355 15 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 355 3 355 15 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 355 3 355 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 355 3 355 4 , SrcSpan "tests/examples/DerivingVia.hs" 355 4 355 7 , SrcSpan "tests/examples/DerivingVia.hs" 355 7 355 8 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 355 4 355 7 , srcInfoPoints = [] } ".>=")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 355 9 355 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 355 9 355 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 355 11 355 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 355 11 355 12 , SrcSpan "tests/examples/DerivingVia.hs" 355 12 355 14 , SrcSpan "tests/examples/DerivingVia.hs" 355 14 355 15 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 355 11 355 15 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 355 11 355 12 , SrcSpan "tests/examples/DerivingVia.hs" 355 12 355 14 , SrcSpan "tests/examples/DerivingVia.hs" 355 14 355 15 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 355 12 355 14 , srcInfoPoints = [] } ">=")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 356 3 356 14 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 356 3 356 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 356 3 356 7 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 356 3 356 4 , SrcSpan "tests/examples/DerivingVia.hs" 356 4 356 6 , SrcSpan "tests/examples/DerivingVia.hs" 356 6 356 7 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 356 4 356 6 , srcInfoPoints = [] } ".>")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 356 9 356 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 356 9 356 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 356 11 356 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 356 11 356 12 , SrcSpan "tests/examples/DerivingVia.hs" 356 12 356 13 , SrcSpan "tests/examples/DerivingVia.hs" 356 13 356 14 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 356 11 356 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 356 11 356 12 , SrcSpan "tests/examples/DerivingVia.hs" 356 12 356 13 , SrcSpan "tests/examples/DerivingVia.hs" 356 13 356 14 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 356 12 356 13 , srcInfoPoints = [] } ">")))) Nothing) ]) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 1 358 59 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 358 1 358 9 , SrcSpan "tests/examples/DerivingVia.hs" 358 21 358 29 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 10 358 13 , srcInfoPoints = [] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 14 358 17 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 358 14 358 15 , SrcSpan "tests/examples/DerivingVia.hs" 358 16 358 17 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 15 358 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 15 358 16 , srcInfoPoints = [] } "a"))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 30 358 59 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 30 358 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 358 45 358 47 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 30 358 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 358 45 358 47 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 30 358 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 358 45 358 47 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 30 358 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 358 45 358 47 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 30 358 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 30 358 33 , srcInfoPoints = [] } "Ord"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 34 358 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 34 358 35 , srcInfoPoints = [] } "a")))))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 48 358 59 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 48 358 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 48 358 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 48 358 55 , srcInfoPoints = [] } "Lattice"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 56 358 59 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 358 56 358 57 , SrcSpan "tests/examples/DerivingVia.hs" 358 58 358 59 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 57 358 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 358 57 358 58 , srcInfoPoints = [] } "a"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 1 359 62 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 359 1 359 9 , SrcSpan "tests/examples/DerivingVia.hs" 359 21 359 29 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 10 359 13 , srcInfoPoints = [] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 14 359 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 359 14 359 15 , SrcSpan "tests/examples/DerivingVia.hs" 359 16 359 17 , SrcSpan "tests/examples/DerivingVia.hs" 359 19 359 20 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 15 359 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 15 359 16 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 18 359 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 18 359 19 , srcInfoPoints = [] } "b") ]))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 30 359 62 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 30 359 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 359 30 359 31 , SrcSpan "tests/examples/DerivingVia.hs" 359 36 359 37 , SrcSpan "tests/examples/DerivingVia.hs" 359 43 359 44 , SrcSpan "tests/examples/DerivingVia.hs" 359 45 359 47 ] } [ TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 31 359 36 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 31 359 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 31 359 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 31 359 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 31 359 34 , srcInfoPoints = [] } "Ord"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 35 359 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 35 359 36 , srcInfoPoints = [] } "a"))) , TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 38 359 43 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 38 359 43 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 38 359 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 38 359 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 38 359 41 , srcInfoPoints = [] } "Ord"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 42 359 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 42 359 43 , srcInfoPoints = [] } "b"))) ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 48 359 62 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 48 359 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 48 359 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 48 359 55 , srcInfoPoints = [] } "Lattice"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 56 359 62 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 359 56 359 57 , SrcSpan "tests/examples/DerivingVia.hs" 359 58 359 59 , SrcSpan "tests/examples/DerivingVia.hs" 359 61 359 62 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 57 359 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 57 359 58 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 60 359 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 359 60 359 61 , srcInfoPoints = [] } "b") ]))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 1 361 40 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 361 1 361 9 , SrcSpan "tests/examples/DerivingVia.hs" 361 19 361 27 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 10 361 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 14 361 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 14 361 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 14 361 18 , srcInfoPoints = [] } "Bool"))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 28 361 40 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 28 361 40 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 28 361 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 28 361 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 28 361 35 , srcInfoPoints = [] } "Lattice"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 36 361 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 36 361 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 361 36 361 40 , srcInfoPoints = [] } "Bool"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 1 363 40 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 363 1 363 9 , SrcSpan "tests/examples/DerivingVia.hs" 363 19 363 27 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 10 363 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 14 363 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 14 363 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 14 363 18 , srcInfoPoints = [] } "Char"))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 28 363 40 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 28 363 40 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 28 363 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 28 363 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 28 363 35 , srcInfoPoints = [] } "Lattice"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 36 363 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 36 363 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 363 36 363 40 , srcInfoPoints = [] } "Char"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 1 365 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 365 1 365 9 , SrcSpan "tests/examples/DerivingVia.hs" 365 18 365 26 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 10 365 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 14 365 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 14 365 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 14 365 17 , srcInfoPoints = [] } "Int"))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 27 365 38 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 27 365 38 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 27 365 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 27 365 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 27 365 34 , srcInfoPoints = [] } "Lattice"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 35 365 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 35 365 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 365 35 365 38 , srcInfoPoints = [] } "Int"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 1 367 46 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 367 1 367 9 , SrcSpan "tests/examples/DerivingVia.hs" 367 22 367 30 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 10 367 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 14 367 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 14 367 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 14 367 21 , srcInfoPoints = [] } "Integer"))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 31 367 46 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 31 367 46 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 31 367 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 31 367 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 31 367 38 , srcInfoPoints = [] } "Lattice"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 39 367 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 39 367 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 367 39 367 46 , srcInfoPoints = [] } "Integer"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 1 369 42 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 369 1 369 9 , SrcSpan "tests/examples/DerivingVia.hs" 369 20 369 28 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 10 369 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 14 369 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 14 369 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 14 369 19 , srcInfoPoints = [] } "Float"))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 29 369 42 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 29 369 42 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 29 369 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 29 369 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 29 369 36 , srcInfoPoints = [] } "Lattice"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 37 369 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 37 369 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 369 37 369 42 , srcInfoPoints = [] } "Float"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 1 371 44 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 371 1 371 9 , SrcSpan "tests/examples/DerivingVia.hs" 371 21 371 29 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 10 371 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 14 371 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 14 371 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 14 371 20 , srcInfoPoints = [] } "Double"))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 30 371 44 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 30 371 44 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 30 371 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 30 371 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 30 371 37 , srcInfoPoints = [] } "Lattice"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 38 371 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 38 371 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 371 38 371 44 , srcInfoPoints = [] } "Double"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 1 373 48 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 373 1 373 9 , SrcSpan "tests/examples/DerivingVia.hs" 373 23 373 31 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 10 373 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 14 373 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 14 373 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 14 373 22 , srcInfoPoints = [] } "Rational"))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 32 373 48 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 32 373 48 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 32 373 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 32 373 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 32 373 39 , srcInfoPoints = [] } "Lattice"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 40 373 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 40 373 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 373 40 373 48 , srcInfoPoints = [] } "Rational"))))) , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 1 386 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 380 1 380 6 , SrcSpan "tests/examples/DerivingVia.hs" 380 31 380 36 , SrcSpan "tests/examples/DerivingVia.hs" 381 3 381 3 , SrcSpan "tests/examples/DerivingVia.hs" 382 3 382 3 , SrcSpan "tests/examples/DerivingVia.hs" 383 3 383 3 , SrcSpan "tests/examples/DerivingVia.hs" 384 3 384 3 , SrcSpan "tests/examples/DerivingVia.hs" 385 3 385 3 , SrcSpan "tests/examples/DerivingVia.hs" 386 3 386 3 , SrcSpan "tests/examples/DerivingVia.hs" 388 1 388 0 ] } (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 7 380 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 380 17 380 19 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 7 380 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 380 17 380 19 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 7 380 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 380 17 380 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 7 380 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 380 17 380 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 7 380 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 7 380 14 , srcInfoPoints = [] } "Functor"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 15 380 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 15 380 16 , srcInfoPoints = [] } "f")))))) (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 20 380 30 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 20 380 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 20 380 28 , srcInfoPoints = [] } "Additive")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 29 380 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 380 29 380 30 , srcInfoPoints = [] } "f"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 3 381 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 381 8 381 10 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 3 381 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 381 8 381 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 3 381 7 , srcInfoPoints = [] } "zero" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 11 381 23 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 11 381 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 381 17 381 19 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 11 381 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 381 17 381 19 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 11 381 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 381 17 381 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 11 381 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 381 17 381 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 11 381 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 11 381 14 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 15 381 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 15 381 16 , srcInfoPoints = [] } "a")))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 20 381 23 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 20 381 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 20 381 21 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 22 381 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 381 22 381 23 , srcInfoPoints = [] } "a"))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 3 382 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 382 9 382 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 3 382 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 382 9 382 11 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 3 382 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 382 3 382 4 , SrcSpan "tests/examples/DerivingVia.hs" 382 4 382 7 , SrcSpan "tests/examples/DerivingVia.hs" 382 7 382 8 ] } "^+^" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 12 382 38 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 12 382 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 382 18 382 20 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 12 382 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 382 18 382 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 12 382 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 382 18 382 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 12 382 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 382 18 382 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 12 382 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 12 382 15 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 16 382 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 16 382 17 , srcInfoPoints = [] } "a")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 21 382 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 382 25 382 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 21 382 24 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 21 382 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 21 382 22 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 23 382 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 23 382 24 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 28 382 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 382 32 382 34 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 28 382 31 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 28 382 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 28 382 29 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 30 382 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 30 382 31 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 35 382 38 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 35 382 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 35 382 36 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 37 382 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 382 37 382 38 , srcInfoPoints = [] } "a"))))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 3 383 21 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 3 383 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 3 383 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 383 3 383 4 , SrcSpan "tests/examples/DerivingVia.hs" 383 4 383 7 , SrcSpan "tests/examples/DerivingVia.hs" 383 7 383 8 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 4 383 7 , srcInfoPoints = [] } "^+^")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 9 383 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 383 9 383 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 11 383 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 11 383 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 11 383 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 11 383 17 , srcInfoPoints = [] } "liftU2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 18 383 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 383 18 383 19 , SrcSpan "tests/examples/DerivingVia.hs" 383 19 383 20 , SrcSpan "tests/examples/DerivingVia.hs" 383 20 383 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 18 383 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 383 18 383 19 , SrcSpan "tests/examples/DerivingVia.hs" 383 19 383 20 , SrcSpan "tests/examples/DerivingVia.hs" 383 20 383 21 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 383 19 383 20 , srcInfoPoints = [] } "+"))))) Nothing) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 3 384 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 384 9 384 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 3 384 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 384 9 384 11 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 3 384 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 384 3 384 4 , SrcSpan "tests/examples/DerivingVia.hs" 384 4 384 7 , SrcSpan "tests/examples/DerivingVia.hs" 384 7 384 8 ] } "^-^" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 12 384 38 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 12 384 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 384 18 384 20 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 12 384 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 384 18 384 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 12 384 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 384 18 384 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 12 384 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 384 18 384 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 12 384 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 12 384 15 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 16 384 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 16 384 17 , srcInfoPoints = [] } "a")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 21 384 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 384 25 384 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 21 384 24 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 21 384 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 21 384 22 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 23 384 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 23 384 24 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 28 384 38 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 384 32 384 34 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 28 384 31 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 28 384 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 28 384 29 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 30 384 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 30 384 31 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 35 384 38 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 35 384 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 35 384 36 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 37 384 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 384 37 384 38 , srcInfoPoints = [] } "a"))))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 3 385 32 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 3 385 32 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 3 385 32 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 3 385 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 3 385 4 , srcInfoPoints = [] } "x")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 5 385 8 , srcInfoPoints = [] } "^-^") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 9 385 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 9 385 10 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 11 385 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 385 11 385 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 13 385 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 13 385 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 13 385 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 13 385 14 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 15 385 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 15 385 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 15 385 18 , srcInfoPoints = [] } "^+^"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 19 385 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 19 385 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 19 385 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 19 385 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 19 385 23 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 24 385 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 24 385 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 24 385 30 , srcInfoPoints = [] } "negate")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 31 385 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 31 385 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 385 31 385 32 , srcInfoPoints = [] } "y")))))) Nothing ]) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 3 386 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 386 10 386 12 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 3 386 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 386 10 386 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 3 386 9 , srcInfoPoints = [] } "liftU2" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 13 386 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 386 27 386 29 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 13 386 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 386 13 386 14 , SrcSpan "tests/examples/DerivingVia.hs" 386 25 386 26 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 14 386 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 386 16 386 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 14 386 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 14 386 15 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 19 386 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 386 21 386 23 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 19 386 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 19 386 20 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 24 386 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 24 386 25 , srcInfoPoints = [] } "a"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 30 386 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 386 34 386 36 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 30 386 33 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 30 386 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 30 386 31 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 32 386 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 32 386 33 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 37 386 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 386 41 386 43 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 37 386 40 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 37 386 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 37 386 38 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 39 386 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 39 386 40 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 44 386 47 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 44 386 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 44 386 45 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 46 386 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 386 46 386 47 , srcInfoPoints = [] } "a"))))))) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 388 1 395 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 388 1 388 9 , SrcSpan "tests/examples/DerivingVia.hs" 388 22 388 27 , SrcSpan "tests/examples/DerivingVia.hs" 389 3 389 3 , SrcSpan "tests/examples/DerivingVia.hs" 390 3 390 3 , SrcSpan "tests/examples/DerivingVia.hs" 395 1 395 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 388 10 388 21 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 388 10 388 21 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 388 10 388 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 388 10 388 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 388 10 388 18 , srcInfoPoints = [] } "Additive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 388 19 388 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 388 19 388 20 , SrcSpan "tests/examples/DerivingVia.hs" 388 20 388 21 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 388 19 388 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 388 19 388 20 , SrcSpan "tests/examples/DerivingVia.hs" 388 20 388 21 ] } (ListCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 388 19 388 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 388 19 388 20 , SrcSpan "tests/examples/DerivingVia.hs" 388 20 388 21 ] }))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 389 3 389 12 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 389 3 389 12 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 389 3 389 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 389 3 389 7 , srcInfoPoints = [] } "zero")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 389 8 389 12 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 389 8 389 9 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 389 10 389 12 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 389 10 389 11 , SrcSpan "tests/examples/DerivingVia.hs" 389 11 389 12 ] } [])) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 3 393 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 390 17 390 22 ] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 3 393 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 390 17 390 22 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 3 393 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 390 17 390 22 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 3 390 9 , srcInfoPoints = [] } "liftU2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 10 390 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 10 390 11 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 12 390 16 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 390 12 390 13 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 14 390 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 14 390 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 390 14 390 16 , srcInfoPoints = [] } "go")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 5 393 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 391 5 391 5 , SrcSpan "tests/examples/DerivingVia.hs" 392 5 392 5 , SrcSpan "tests/examples/DerivingVia.hs" 393 5 393 5 , SrcSpan "tests/examples/DerivingVia.hs" 395 1 395 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 5 393 18 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 5 391 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 5 391 7 , srcInfoPoints = [] } "go") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 8 391 14 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 391 8 391 9 , SrcSpan "tests/examples/DerivingVia.hs" 391 13 391 14 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 9 391 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 9 391 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 9 391 10 , srcInfoPoints = [] } "x")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 10 391 11 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 10 391 11 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 11 391 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 11 391 13 , srcInfoPoints = [] } "xs"))) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 15 391 21 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 391 15 391 16 , SrcSpan "tests/examples/DerivingVia.hs" 391 20 391 21 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 16 391 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 16 391 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 16 391 17 , srcInfoPoints = [] } "y")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 17 391 18 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 17 391 18 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 18 391 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 18 391 20 , srcInfoPoints = [] } "ys"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 22 391 40 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 391 22 391 23 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 24 391 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 24 391 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 24 391 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 24 391 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 24 391 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 24 391 25 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 26 391 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 26 391 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 26 391 27 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 28 391 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 28 391 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 28 391 29 , srcInfoPoints = [] } "y")))) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 30 391 31 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 30 391 31 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 30 391 31 , srcInfoPoints = [] }))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 32 391 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 32 391 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 32 391 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 32 391 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 32 391 34 , srcInfoPoints = [] } "go"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 35 391 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 35 391 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 35 391 37 , srcInfoPoints = [] } "xs")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 38 391 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 38 391 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 391 38 391 40 , srcInfoPoints = [] } "ys")))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 392 5 392 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 392 5 392 7 , srcInfoPoints = [] } "go") [ PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 392 8 392 10 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 392 8 392 9 , SrcSpan "tests/examples/DerivingVia.hs" 392 9 392 10 ] } [] , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 392 11 392 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 392 11 392 13 , srcInfoPoints = [] } "ys") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 392 14 392 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 392 14 392 15 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 392 16 392 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 392 16 392 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 392 16 392 18 , srcInfoPoints = [] } "ys")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 393 5 393 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 393 5 393 7 , srcInfoPoints = [] } "go") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 393 8 393 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 393 8 393 10 , srcInfoPoints = [] } "xs") , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 393 11 393 13 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 393 11 393 12 , SrcSpan "tests/examples/DerivingVia.hs" 393 12 393 13 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 393 14 393 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 393 14 393 15 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 393 16 393 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 393 16 393 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 393 16 393 18 , srcInfoPoints = [] } "xs")))) Nothing ] ])) ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 395 1 401 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 395 1 395 9 , SrcSpan "tests/examples/DerivingVia.hs" 395 25 395 30 , SrcSpan "tests/examples/DerivingVia.hs" 396 3 396 3 , SrcSpan "tests/examples/DerivingVia.hs" 397 3 397 3 , SrcSpan "tests/examples/DerivingVia.hs" 398 3 398 3 , SrcSpan "tests/examples/DerivingVia.hs" 399 3 399 3 , SrcSpan "tests/examples/DerivingVia.hs" 401 1 401 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 395 10 395 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 395 10 395 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 395 10 395 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 395 10 395 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 395 10 395 18 , srcInfoPoints = [] } "Additive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 395 19 395 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 395 19 395 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 395 19 395 24 , srcInfoPoints = [] } "Maybe"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 396 3 396 17 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 396 3 396 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 396 3 396 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 396 3 396 7 , srcInfoPoints = [] } "zero")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 396 8 396 17 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 396 8 396 9 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 396 10 396 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 396 10 396 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 396 10 396 17 , srcInfoPoints = [] } "Nothing")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 3 399 27 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 3 399 27 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 3 397 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 3 397 9 , srcInfoPoints = [] } "liftU2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 10 397 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 10 397 11 , srcInfoPoints = [] } "f") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 12 397 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 397 12 397 13 , SrcSpan "tests/examples/DerivingVia.hs" 397 19 397 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 13 397 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 13 397 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 13 397 17 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 18 397 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 18 397 19 , srcInfoPoints = [] } "a") ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 21 397 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 397 21 397 22 , SrcSpan "tests/examples/DerivingVia.hs" 397 28 397 29 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 22 397 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 22 397 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 22 397 26 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 27 397 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 27 397 28 , srcInfoPoints = [] } "b") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 30 397 44 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 397 30 397 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 32 397 44 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 32 397 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 32 397 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 32 397 36 , srcInfoPoints = [] } "Just"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 37 397 44 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 397 37 397 38 , SrcSpan "tests/examples/DerivingVia.hs" 397 43 397 44 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 38 397 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 38 397 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 38 397 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 38 397 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 38 397 39 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 40 397 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 40 397 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 40 397 41 , srcInfoPoints = [] } "a")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 42 397 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 42 397 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 397 42 397 43 , srcInfoPoints = [] } "b"))))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 3 398 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 3 398 9 , srcInfoPoints = [] } "liftU2") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 10 398 11 , srcInfoPoints = [] } , PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 12 398 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 12 398 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 12 398 19 , srcInfoPoints = [] } "Nothing")) [] , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 20 398 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 20 398 22 , srcInfoPoints = [] } "ys") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 23 398 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 398 23 398 24 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 25 398 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 25 398 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 398 25 398 27 , srcInfoPoints = [] } "ys")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 3 399 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 3 399 9 , srcInfoPoints = [] } "liftU2") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 10 399 11 , srcInfoPoints = [] } , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 12 399 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 12 399 14 , srcInfoPoints = [] } "xs") , PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 15 399 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 15 399 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 15 399 22 , srcInfoPoints = [] } "Nothing")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 23 399 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 399 23 399 24 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 25 399 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 25 399 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 399 25 399 27 , srcInfoPoints = [] } "xs")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 1 405 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 401 1 401 9 , SrcSpan "tests/examples/DerivingVia.hs" 401 56 401 61 , SrcSpan "tests/examples/DerivingVia.hs" 402 3 402 3 , SrcSpan "tests/examples/DerivingVia.hs" 403 3 403 3 , SrcSpan "tests/examples/DerivingVia.hs" 405 1 405 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 10 401 55 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 10 401 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 401 24 401 26 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 10 401 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 401 24 401 26 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 10 401 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 401 24 401 26 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 10 401 26 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 401 24 401 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 10 401 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 10 401 21 , srcInfoPoints = [] } "Applicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 22 401 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 22 401 23 , srcInfoPoints = [] } "f")))))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 27 401 55 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 27 401 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 27 401 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 27 401 35 , srcInfoPoints = [] } "Additive"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 36 401 55 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 401 36 401 37 , SrcSpan "tests/examples/DerivingVia.hs" 401 54 401 55 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 37 401 54 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 37 401 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 37 401 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 37 401 52 , srcInfoPoints = [] } "WrapApplicative"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 53 401 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 401 53 401 54 , srcInfoPoints = [] } "f")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 3 402 18 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 3 402 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 3 402 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 3 402 7 , srcInfoPoints = [] } "zero")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 10 402 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 402 10 402 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 12 402 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 12 402 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 12 402 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 12 402 16 , srcInfoPoints = [] } "pure"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 17 402 18 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 402 17 402 18 , srcInfoPoints = [] } 0 "0")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 403 3 403 18 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 403 3 403 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 403 3 403 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 403 3 403 9 , srcInfoPoints = [] } "liftU2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 403 10 403 18 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 403 10 403 11 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 403 12 403 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 403 12 403 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 403 12 403 18 , srcInfoPoints = [] } "liftA2")))) Nothing) ]) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 1 405 67 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 1 405 9 , SrcSpan "tests/examples/DerivingVia.hs" 405 41 405 49 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 10 405 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 14 405 40 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 14 405 15 , SrcSpan "tests/examples/DerivingVia.hs" 405 39 405 40 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 15 405 39 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 15 405 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 15 405 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 15 405 30 , srcInfoPoints = [] } "WrapApplicative"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 31 405 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 31 405 32 , SrcSpan "tests/examples/DerivingVia.hs" 405 38 405 39 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 32 405 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 32 405 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 32 405 33 , SrcSpan "tests/examples/DerivingVia.hs" 405 33 405 35 , SrcSpan "tests/examples/DerivingVia.hs" 405 35 405 36 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 32 405 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 32 405 33 , SrcSpan "tests/examples/DerivingVia.hs" 405 33 405 35 , SrcSpan "tests/examples/DerivingVia.hs" 405 35 405 36 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 32 405 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 32 405 33 , SrcSpan "tests/examples/DerivingVia.hs" 405 33 405 35 , SrcSpan "tests/examples/DerivingVia.hs" 405 35 405 36 ] }))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 37 405 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 37 405 38 , srcInfoPoints = [] } "a")))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 50 405 67 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 50 405 67 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 50 405 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 50 405 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 50 405 58 , srcInfoPoints = [] } "Additive"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 59 405 67 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 59 405 60 , SrcSpan "tests/examples/DerivingVia.hs" 405 66 405 67 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 60 405 66 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 60 405 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 60 405 61 , SrcSpan "tests/examples/DerivingVia.hs" 405 61 405 63 , SrcSpan "tests/examples/DerivingVia.hs" 405 63 405 64 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 60 405 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 60 405 61 , SrcSpan "tests/examples/DerivingVia.hs" 405 61 405 63 , SrcSpan "tests/examples/DerivingVia.hs" 405 63 405 64 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 60 405 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 405 60 405 61 , SrcSpan "tests/examples/DerivingVia.hs" 405 61 405 63 , SrcSpan "tests/examples/DerivingVia.hs" 405 63 405 64 ] }))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 65 405 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 405 65 405 66 , srcInfoPoints = [] } "a")))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 1 406 66 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 406 1 406 9 , SrcSpan "tests/examples/DerivingVia.hs" 406 41 406 49 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 10 406 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 14 406 39 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 406 14 406 15 , SrcSpan "tests/examples/DerivingVia.hs" 406 38 406 39 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 15 406 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 15 406 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 15 406 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 15 406 30 , srcInfoPoints = [] } "WrapApplicative"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 31 406 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 31 406 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 31 406 38 , srcInfoPoints = [] } "Complex"))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 50 406 66 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 50 406 66 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 50 406 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 50 406 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 50 406 58 , srcInfoPoints = [] } "Additive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 59 406 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 59 406 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 406 59 406 66 , srcInfoPoints = [] } "Complex"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 1 407 67 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 407 1 407 9 , SrcSpan "tests/examples/DerivingVia.hs" 407 41 407 49 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 10 407 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 14 407 40 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 407 14 407 15 , SrcSpan "tests/examples/DerivingVia.hs" 407 39 407 40 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 15 407 39 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 15 407 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 15 407 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 15 407 30 , srcInfoPoints = [] } "WrapApplicative"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 31 407 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 31 407 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 31 407 39 , srcInfoPoints = [] } "Identity"))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 50 407 67 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 50 407 67 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 50 407 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 50 407 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 50 407 58 , srcInfoPoints = [] } "Additive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 59 407 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 59 407 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 407 59 407 67 , srcInfoPoints = [] } "Identity"))))) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 409 1 413 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 409 1 409 9 , SrcSpan "tests/examples/DerivingVia.hs" 409 27 409 32 , SrcSpan "tests/examples/DerivingVia.hs" 410 3 410 3 , SrcSpan "tests/examples/DerivingVia.hs" 411 3 411 3 , SrcSpan "tests/examples/DerivingVia.hs" 413 1 413 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 409 10 409 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 409 10 409 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 409 10 409 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 409 10 409 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 409 10 409 18 , srcInfoPoints = [] } "Additive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 409 19 409 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 409 19 409 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 409 19 409 26 , srcInfoPoints = [] } "ZipList"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 3 410 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 3 410 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 3 410 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 3 410 7 , srcInfoPoints = [] } "zero")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 8 410 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 410 8 410 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 10 410 20 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 10 410 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 10 410 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 10 410 17 , srcInfoPoints = [] } "ZipList"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 410 18 410 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 410 18 410 19 , SrcSpan "tests/examples/DerivingVia.hs" 410 19 410 20 ] } []))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 3 411 64 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 3 411 64 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 3 411 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 3 411 9 , srcInfoPoints = [] } "liftU2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 10 411 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 10 411 11 , srcInfoPoints = [] } "f") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 12 411 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 411 12 411 13 , SrcSpan "tests/examples/DerivingVia.hs" 411 23 411 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 13 411 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 13 411 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 13 411 20 , srcInfoPoints = [] } "ZipList")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 21 411 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 21 411 23 , srcInfoPoints = [] } "xs") ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 25 411 37 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 411 25 411 26 , SrcSpan "tests/examples/DerivingVia.hs" 411 36 411 37 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 26 411 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 26 411 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 26 411 33 , srcInfoPoints = [] } "ZipList")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 34 411 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 34 411 36 , srcInfoPoints = [] } "ys") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 38 411 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 411 38 411 39 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 40 411 64 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 40 411 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 40 411 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 40 411 47 , srcInfoPoints = [] } "ZipList"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 48 411 64 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 411 48 411 49 , SrcSpan "tests/examples/DerivingVia.hs" 411 63 411 64 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 49 411 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 49 411 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 49 411 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 49 411 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 49 411 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 49 411 55 , srcInfoPoints = [] } "liftU2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 56 411 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 56 411 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 56 411 57 , srcInfoPoints = [] } "f")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 58 411 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 58 411 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 58 411 60 , srcInfoPoints = [] } "xs")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 61 411 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 61 411 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 411 61 411 63 , srcInfoPoints = [] } "ys"))))))) Nothing ]) ]) , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 1 419 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 413 1 413 6 , SrcSpan "tests/examples/DerivingVia.hs" 413 37 413 42 , SrcSpan "tests/examples/DerivingVia.hs" 414 3 414 3 , SrcSpan "tests/examples/DerivingVia.hs" 416 3 416 3 , SrcSpan "tests/examples/DerivingVia.hs" 417 3 417 3 , SrcSpan "tests/examples/DerivingVia.hs" 418 3 418 3 , SrcSpan "tests/examples/DerivingVia.hs" 419 3 419 3 , SrcSpan "tests/examples/DerivingVia.hs" 425 1 425 0 ] } (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 7 413 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 413 25 413 27 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 7 413 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 413 25 413 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 7 413 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 413 25 413 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 7 413 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 413 25 413 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 7 413 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 7 413 15 , srcInfoPoints = [] } "Additive"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 16 413 24 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 413 16 413 17 , SrcSpan "tests/examples/DerivingVia.hs" 413 23 413 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 17 413 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 17 413 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 17 413 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 17 413 21 , srcInfoPoints = [] } "Diff"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 22 413 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 22 413 23 , srcInfoPoints = [] } "p")))))))) (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 28 413 36 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 28 413 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 28 413 34 , srcInfoPoints = [] } "Affine")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 35 413 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 413 35 413 36 , srcInfoPoints = [] } "p"))) [] (Just [ ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 3 414 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 414 3 414 7 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 8 414 14 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 8 414 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 8 414 12 , srcInfoPoints = [] } "Diff")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 13 414 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 13 414 14 , srcInfoPoints = [] } "p"))) (Just (KindSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 15 414 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 414 15 414 17 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 18 414 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 414 23 414 25 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 18 414 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 18 414 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 18 414 22 , srcInfoPoints = [] } "Type"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 26 414 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 26 414 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 414 26 414 30 , srcInfoPoints = [] } "Type")))))) Nothing , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 3 416 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 416 9 416 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 3 416 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 416 9 416 11 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 3 416 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 416 3 416 4 , SrcSpan "tests/examples/DerivingVia.hs" 416 4 416 7 , SrcSpan "tests/examples/DerivingVia.hs" 416 7 416 8 ] } ".-." ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 12 416 43 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 12 416 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 416 18 416 20 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 12 416 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 416 18 416 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 12 416 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 416 18 416 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 12 416 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 416 18 416 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 12 416 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 12 416 15 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 16 416 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 16 416 17 , srcInfoPoints = [] } "a")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 21 416 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 416 25 416 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 21 416 24 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 21 416 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 21 416 22 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 23 416 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 23 416 24 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 28 416 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 416 32 416 34 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 28 416 31 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 28 416 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 28 416 29 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 30 416 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 30 416 31 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 35 416 43 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 35 416 41 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 35 416 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 35 416 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 35 416 39 , srcInfoPoints = [] } "Diff"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 40 416 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 40 416 41 , srcInfoPoints = [] } "p"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 42 416 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 416 42 416 43 , srcInfoPoints = [] } "a"))))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 3 417 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 417 9 417 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 3 417 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 417 9 417 11 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 3 417 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 417 3 417 4 , SrcSpan "tests/examples/DerivingVia.hs" 417 4 417 7 , SrcSpan "tests/examples/DerivingVia.hs" 417 7 417 8 ] } ".+^" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 12 417 43 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 12 417 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 417 18 417 20 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 12 417 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 417 18 417 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 12 417 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 417 18 417 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 12 417 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 417 18 417 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 12 417 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 12 417 15 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 16 417 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 16 417 17 , srcInfoPoints = [] } "a")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 21 417 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 417 25 417 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 21 417 24 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 21 417 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 21 417 22 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 23 417 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 23 417 24 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 28 417 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 417 37 417 39 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 28 417 36 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 28 417 34 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 28 417 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 28 417 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 28 417 32 , srcInfoPoints = [] } "Diff"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 33 417 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 33 417 34 , srcInfoPoints = [] } "p"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 35 417 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 35 417 36 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 40 417 43 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 40 417 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 40 417 41 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 42 417 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 417 42 417 43 , srcInfoPoints = [] } "a"))))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 3 418 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 418 9 418 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 3 418 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 418 9 418 11 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 3 418 8 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 418 3 418 4 , SrcSpan "tests/examples/DerivingVia.hs" 418 4 418 7 , SrcSpan "tests/examples/DerivingVia.hs" 418 7 418 8 ] } ".-^" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 12 418 43 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 12 418 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 418 18 418 20 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 12 418 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 418 18 418 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 12 418 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 418 18 418 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 12 418 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 418 18 418 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 12 418 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 12 418 15 , srcInfoPoints = [] } "Num"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 16 418 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 16 418 17 , srcInfoPoints = [] } "a")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 21 418 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 418 25 418 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 21 418 24 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 21 418 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 21 418 22 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 23 418 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 23 418 24 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 28 418 43 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 418 37 418 39 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 28 418 36 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 28 418 34 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 28 418 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 28 418 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 28 418 32 , srcInfoPoints = [] } "Diff"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 33 418 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 33 418 34 , srcInfoPoints = [] } "p"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 35 418 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 35 418 36 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 40 418 43 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 40 418 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 40 418 41 , srcInfoPoints = [] } "p")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 42 418 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 418 42 418 43 , srcInfoPoints = [] } "a"))))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 3 419 32 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 3 419 32 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 3 419 32 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 3 419 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 3 419 4 , srcInfoPoints = [] } "p")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 5 419 8 , srcInfoPoints = [] } ".-^") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 9 419 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 9 419 10 , srcInfoPoints = [] } "v") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 11 419 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 419 11 419 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 13 419 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 13 419 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 13 419 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 13 419 14 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 15 419 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 15 419 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 15 419 18 , srcInfoPoints = [] } ".+^"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 19 419 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 19 419 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 19 419 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 19 419 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 19 419 23 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 24 419 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 24 419 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 24 419 30 , srcInfoPoints = [] } "negate")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 31 419 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 31 419 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 419 31 419 32 , srcInfoPoints = [] } "v")))))) Nothing ]) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 1 425 49 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 425 26 425 27 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 1 425 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 9 425 25 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 9 425 23 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 9 425 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 9 425 21 , srcInfoPoints = [] } "WrapAdditive")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 22 425 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 22 425 23 , srcInfoPoints = [] } "f"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 24 425 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 24 425 25 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 28 425 49 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 28 425 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 28 425 43 , srcInfoPoints = [] } "WrappedAdditive") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 44 425 49 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 425 44 425 45 , SrcSpan "tests/examples/DerivingVia.hs" 425 48 425 49 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 45 425 48 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 45 425 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 45 425 46 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 47 425 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 425 47 425 48 , srcInfoPoints = [] } "a"))) ]) ] [] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 1 435 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 427 1 427 9 , SrcSpan "tests/examples/DerivingVia.hs" 427 48 427 53 , SrcSpan "tests/examples/DerivingVia.hs" 428 3 428 3 , SrcSpan "tests/examples/DerivingVia.hs" 430 3 430 3 , SrcSpan "tests/examples/DerivingVia.hs" 431 3 431 3 , SrcSpan "tests/examples/DerivingVia.hs" 432 3 432 3 , SrcSpan "tests/examples/DerivingVia.hs" 435 1 435 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 10 427 47 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 10 427 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 427 21 427 23 ] } (TypeA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 10 427 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 427 21 427 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 10 427 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 427 21 427 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 10 427 23 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 427 21 427 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 10 427 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 10 427 18 , srcInfoPoints = [] } "Additive"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 19 427 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 19 427 20 , srcInfoPoints = [] } "f")))))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 24 427 47 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 24 427 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 24 427 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 24 427 30 , srcInfoPoints = [] } "Affine"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 31 427 47 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 427 31 427 32 , SrcSpan "tests/examples/DerivingVia.hs" 427 46 427 47 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 32 427 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 32 427 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 32 427 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 32 427 44 , srcInfoPoints = [] } "WrapAdditive"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 45 427 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 427 45 427 46 , srcInfoPoints = [] } "f")))))) (Just [ InsType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 3 428 33 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 428 3 428 7 , SrcSpan "tests/examples/DerivingVia.hs" 428 30 428 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 8 428 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 8 428 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 8 428 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 8 428 12 , srcInfoPoints = [] } "Diff"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 13 428 29 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 428 13 428 14 , SrcSpan "tests/examples/DerivingVia.hs" 428 28 428 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 14 428 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 14 428 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 14 428 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 14 428 26 , srcInfoPoints = [] } "WrapAdditive"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 27 428 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 27 428 28 , srcInfoPoints = [] } "f"))))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 32 428 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 428 32 428 33 , srcInfoPoints = [] } "f")) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 3 430 52 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 3 430 52 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 3 430 52 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 3 430 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 3 430 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 3 430 18 , srcInfoPoints = [] } "WrappedAdditive")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 19 430 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 19 430 20 , srcInfoPoints = [] } "a") ]) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 21 430 24 , srcInfoPoints = [] } ".-.") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 25 430 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 25 430 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 25 430 40 , srcInfoPoints = [] } "WrappedAdditive")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 41 430 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 41 430 42 , srcInfoPoints = [] } "b") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 43 430 52 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 430 43 430 44 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 45 430 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 45 430 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 45 430 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 45 430 46 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 47 430 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 47 430 50 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 47 430 50 , srcInfoPoints = [] } "^-^"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 51 430 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 51 430 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 430 51 430 52 , srcInfoPoints = [] } "b"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 3 431 54 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 3 431 54 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 3 431 54 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 3 431 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 3 431 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 3 431 18 , srcInfoPoints = [] } "WrappedAdditive")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 19 431 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 19 431 20 , srcInfoPoints = [] } "a") ]) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 21 431 24 , srcInfoPoints = [] } ".+^") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 25 431 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 25 431 26 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 27 431 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 431 27 431 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 29 431 54 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 29 431 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 29 431 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 29 431 44 , srcInfoPoints = [] } "WrappedAdditive"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 45 431 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 431 45 431 46 , SrcSpan "tests/examples/DerivingVia.hs" 431 53 431 54 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 46 431 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 46 431 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 46 431 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 46 431 47 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 48 431 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 48 431 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 48 431 51 , srcInfoPoints = [] } "^+^"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 52 431 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 52 431 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 431 52 431 53 , srcInfoPoints = [] } "b"))))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 3 432 54 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 3 432 54 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 3 432 54 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 3 432 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 3 432 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 3 432 18 , srcInfoPoints = [] } "WrappedAdditive")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 19 432 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 19 432 20 , srcInfoPoints = [] } "a") ]) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 21 432 24 , srcInfoPoints = [] } ".-^") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 25 432 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 25 432 26 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 27 432 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 432 27 432 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 29 432 54 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 29 432 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 29 432 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 29 432 44 , srcInfoPoints = [] } "WrappedAdditive"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 45 432 54 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 432 45 432 46 , SrcSpan "tests/examples/DerivingVia.hs" 432 53 432 54 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 46 432 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 46 432 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 46 432 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 46 432 47 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 48 432 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 48 432 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 48 432 51 , srcInfoPoints = [] } "^-^"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 52 432 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 52 432 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 432 52 432 53 , srcInfoPoints = [] } "b"))))))) Nothing ]) ]) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 1 435 62 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 1 435 9 , SrcSpan "tests/examples/DerivingVia.hs" 435 38 435 46 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 10 435 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 14 435 37 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 14 435 15 , SrcSpan "tests/examples/DerivingVia.hs" 435 36 435 37 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 15 435 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 15 435 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 15 435 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 15 435 27 , srcInfoPoints = [] } "WrapAdditive"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 28 435 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 28 435 29 , SrcSpan "tests/examples/DerivingVia.hs" 435 35 435 36 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 29 435 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 29 435 33 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 29 435 30 , SrcSpan "tests/examples/DerivingVia.hs" 435 30 435 32 , SrcSpan "tests/examples/DerivingVia.hs" 435 32 435 33 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 29 435 33 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 29 435 30 , SrcSpan "tests/examples/DerivingVia.hs" 435 30 435 32 , SrcSpan "tests/examples/DerivingVia.hs" 435 32 435 33 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 29 435 33 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 29 435 30 , SrcSpan "tests/examples/DerivingVia.hs" 435 30 435 32 , SrcSpan "tests/examples/DerivingVia.hs" 435 32 435 33 ] }))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 34 435 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 34 435 35 , srcInfoPoints = [] } "a")))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 47 435 62 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 47 435 62 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 47 435 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 47 435 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 47 435 53 , srcInfoPoints = [] } "Affine"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 54 435 62 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 54 435 55 , SrcSpan "tests/examples/DerivingVia.hs" 435 61 435 62 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 55 435 61 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 55 435 59 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 55 435 56 , SrcSpan "tests/examples/DerivingVia.hs" 435 56 435 58 , SrcSpan "tests/examples/DerivingVia.hs" 435 58 435 59 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 55 435 59 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 55 435 56 , SrcSpan "tests/examples/DerivingVia.hs" 435 56 435 58 , SrcSpan "tests/examples/DerivingVia.hs" 435 58 435 59 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 55 435 59 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 435 55 435 56 , SrcSpan "tests/examples/DerivingVia.hs" 435 56 435 58 , SrcSpan "tests/examples/DerivingVia.hs" 435 58 435 59 ] }))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 60 435 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 435 60 435 61 , srcInfoPoints = [] } "a")))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 1 437 56 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 437 1 437 9 , SrcSpan "tests/examples/DerivingVia.hs" 437 38 437 46 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 10 437 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 14 437 31 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 437 14 437 15 , SrcSpan "tests/examples/DerivingVia.hs" 437 30 437 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 15 437 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 15 437 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 15 437 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 15 437 27 , srcInfoPoints = [] } "WrapAdditive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 28 437 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 437 28 437 29 , SrcSpan "tests/examples/DerivingVia.hs" 437 29 437 30 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 28 437 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 437 28 437 29 , SrcSpan "tests/examples/DerivingVia.hs" 437 29 437 30 ] } (ListCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 28 437 30 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 437 28 437 29 , SrcSpan "tests/examples/DerivingVia.hs" 437 29 437 30 ] }))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 47 437 56 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 47 437 56 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 47 437 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 47 437 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 47 437 53 , srcInfoPoints = [] } "Affine"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 54 437 56 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 437 54 437 55 , SrcSpan "tests/examples/DerivingVia.hs" 437 55 437 56 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 54 437 56 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 437 54 437 55 , SrcSpan "tests/examples/DerivingVia.hs" 437 55 437 56 ] } (ListCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 437 54 437 56 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 437 54 437 55 , SrcSpan "tests/examples/DerivingVia.hs" 437 55 437 56 ] }))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 1 439 61 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 439 1 439 9 , SrcSpan "tests/examples/DerivingVia.hs" 439 38 439 46 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 10 439 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 14 439 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 439 14 439 15 , SrcSpan "tests/examples/DerivingVia.hs" 439 35 439 36 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 15 439 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 15 439 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 15 439 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 15 439 27 , srcInfoPoints = [] } "WrapAdditive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 28 439 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 28 439 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 28 439 35 , srcInfoPoints = [] } "Complex"))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 47 439 61 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 47 439 61 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 47 439 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 47 439 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 47 439 53 , srcInfoPoints = [] } "Affine"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 54 439 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 54 439 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 439 54 439 61 , srcInfoPoints = [] } "Complex"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 1 441 59 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 441 1 441 9 , SrcSpan "tests/examples/DerivingVia.hs" 441 38 441 46 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 10 441 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 14 441 34 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 441 14 441 15 , SrcSpan "tests/examples/DerivingVia.hs" 441 33 441 34 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 15 441 33 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 15 441 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 15 441 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 15 441 27 , srcInfoPoints = [] } "WrapAdditive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 28 441 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 28 441 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 28 441 33 , srcInfoPoints = [] } "Maybe"))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 47 441 59 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 47 441 59 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 47 441 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 47 441 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 47 441 53 , srcInfoPoints = [] } "Affine"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 54 441 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 54 441 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 441 54 441 59 , srcInfoPoints = [] } "Maybe"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 1 443 61 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 443 1 443 9 , SrcSpan "tests/examples/DerivingVia.hs" 443 38 443 46 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 10 443 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 14 443 36 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 443 14 443 15 , SrcSpan "tests/examples/DerivingVia.hs" 443 35 443 36 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 15 443 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 15 443 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 15 443 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 15 443 27 , srcInfoPoints = [] } "WrapAdditive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 28 443 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 28 443 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 28 443 35 , srcInfoPoints = [] } "ZipList"))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 47 443 61 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 47 443 61 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 47 443 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 47 443 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 47 443 53 , srcInfoPoints = [] } "Affine"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 54 443 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 54 443 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 443 54 443 61 , srcInfoPoints = [] } "ZipList"))))) , DerivDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 1 445 62 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 445 1 445 9 , SrcSpan "tests/examples/DerivingVia.hs" 445 38 445 46 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 10 445 13 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 14 445 37 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 445 14 445 15 , SrcSpan "tests/examples/DerivingVia.hs" 445 36 445 37 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 15 445 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 15 445 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 15 445 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 15 445 27 , srcInfoPoints = [] } "WrapAdditive"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 28 445 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 28 445 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 28 445 36 , srcInfoPoints = [] } "Identity"))))))) Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 47 445 62 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 47 445 62 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 47 445 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 47 445 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 47 445 53 , srcInfoPoints = [] } "Affine"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 54 445 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 54 445 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 445 54 445 62 , srcInfoPoints = [] } "Identity"))))) , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 1 452 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 451 1 451 6 , SrcSpan "tests/examples/DerivingVia.hs" 451 16 451 21 , SrcSpan "tests/examples/DerivingVia.hs" 452 3 452 3 , SrcSpan "tests/examples/DerivingVia.hs" 454 1 454 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 7 451 15 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 7 451 13 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 7 451 11 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 7 451 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 7 451 9 , srcInfoPoints = [] } "C2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 10 451 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 10 451 11 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 12 451 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 12 451 13 , srcInfoPoints = [] } "b"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 14 451 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 451 14 451 15 , srcInfoPoints = [] } "c"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 3 452 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 452 6 452 8 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 3 452 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 452 6 452 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 3 452 5 , srcInfoPoints = [] } "c2" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 9 452 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 452 11 452 13 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 9 452 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 9 452 10 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 14 452 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 452 16 452 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 14 452 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 14 452 15 , srcInfoPoints = [] } "b")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 19 452 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 452 19 452 20 , srcInfoPoints = [] } "c"))))) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 1 457 0 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 454 1 454 9 , SrcSpan "tests/examples/DerivingVia.hs" 454 29 454 34 , SrcSpan "tests/examples/DerivingVia.hs" 455 3 455 3 , SrcSpan "tests/examples/DerivingVia.hs" 457 1 457 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 10 454 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 10 454 28 , srcInfoPoints = [] } (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 10 454 16 , srcInfoPoints = [] } (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 10 454 14 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 10 454 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 10 454 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 10 454 12 , srcInfoPoints = [] } "C2"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 13 454 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 13 454 14 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 15 454 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 15 454 16 , srcInfoPoints = [] } "b"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 17 454 28 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 454 17 454 18 , SrcSpan "tests/examples/DerivingVia.hs" 454 27 454 28 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 18 454 27 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 18 454 25 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 18 454 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 18 454 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 18 454 23 , srcInfoPoints = [] } "Const"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 24 454 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 24 454 25 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 26 454 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 454 26 454 27 , srcInfoPoints = [] } "b")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 3 455 19 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 3 455 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 3 455 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 3 455 5 , srcInfoPoints = [] } "c2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 6 455 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 6 455 7 , srcInfoPoints = [] } "x") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 8 455 9 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 10 455 19 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 455 10 455 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 12 455 19 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 12 455 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 12 455 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 12 455 17 , srcInfoPoints = [] } "Const"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 18 455 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 18 455 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 455 18 455 19 , srcInfoPoints = [] } "x"))))) Nothing ]) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 1 458 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 457 18 457 19 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 1 457 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 9 457 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 9 457 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 9 457 15 , srcInfoPoints = [] } "Fweemp")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 16 457 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 16 457 17 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 20 457 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 20 457 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 20 457 26 , srcInfoPoints = [] } "Fweemp") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 27 457 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 457 27 457 28 , srcInfoPoints = [] } "a") ]) ] [ Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 3 458 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 458 3 458 11 ] } (Just (DerivVia SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 8 459 11 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 12 459 33 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 459 12 459 13 , SrcSpan "tests/examples/DerivingVia.hs" 459 32 459 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 13 459 32 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 13 459 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 13 459 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 13 459 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 13 459 18 , srcInfoPoints = [] } "Const"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 19 459 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 19 459 20 , srcInfoPoints = [] } "a"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 21 459 32 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 459 21 459 22 , SrcSpan "tests/examples/DerivingVia.hs" 459 24 459 26 , SrcSpan "tests/examples/DerivingVia.hs" 459 31 459 32 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 22 459 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 22 459 23 , srcInfoPoints = [] } "b")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 27 459 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 27 459 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 459 27 459 31 , srcInfoPoints = [] } "Type")))))))) [ IParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 12 458 20 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingVia.hs" 458 12 458 13 , SrcSpan "tests/examples/DerivingVia.hs" 458 19 458 20 ] } (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 13 458 19 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 13 458 19 , srcInfoPoints = [] } (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 13 458 17 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 13 458 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 13 458 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 13 458 15 , srcInfoPoints = [] } "C2"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 16 458 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 16 458 17 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 18 458 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingVia.hs" 458 18 458 19 , srcInfoPoints = [] } "b")))) ] ] ] , [ Comment False (SrcSpan "tests/examples/DerivingVia.hs" 38 1 38 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 39 1 39 18) " Simple example" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 40 1 40 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 46 1 46 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 47 1 47 25) " Eta reduction at work" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 48 1 48 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 62 1 62 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 63 1 63 22) " Monad transformers" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 64 1 64 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 68 1 68 22) " From `constraints'" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 78 1 78 52) " With `-XQuantifiedConstraints' this just becomes" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 79 1 79 3) "" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 80 1 80 68) " type Lifting cls trans = forall mm. cls mm => cls (trans mm)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 81 1 81 3) "" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 82 1 82 52) " type LiftingMonad trans = Lifting Monad trans" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 83 1 83 3) "" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 142 1 142 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 143 1 143 32) " Using tuples in a `via` type" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 144 1 144 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 153 1 153 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 154 1 154 23) " Abstract data types" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 155 1 155 6) "---" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 167 1 167 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 168 1 168 18) " Testing parser" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 169 1 169 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 183 1 183 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 184 1 184 23) " From Baldur's notes" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 185 1 185 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 187 1 187 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 188 1 188 5) " 1" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 189 1 189 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 227 1 227 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 228 1 228 5) " 2" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 229 1 229 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 243 1 243 8) " data" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 262 1 262 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 263 1 263 5) " 3" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 264 1 264 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 290 1 290 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 291 1 291 5) " 4" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 292 1 292 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 324 1 324 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 325 1 325 5) " 5" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 326 1 326 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 340 1 340 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 341 1 341 5) " 6" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 342 1 342 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 343 1 343 116) " https://github.com/mikeizbicki/subhask/blob/f53fd8f465747681c88276c7dabe3646fbdf7d50/src/SubHask/Algebra.hs#L635" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 360 1 360 19) "mkLattice_(Bool)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 362 1 362 19) "mkLattice_(Char)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 364 1 364 18) "mkLattice_(Int)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 366 1 366 22) "mkLattice_(Integer)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 368 1 368 20) "mkLattice_(Float)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 370 1 370 21) "mkLattice_(Double)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 372 1 372 23) "mkLattice_(Rational)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 375 1 375 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 376 1 376 5) " 7" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 377 1 377 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 378 1 378 81) " https://hackage.haskell.org/package/linear-1.20.7/docs/src/Linear-Affine.html" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 421 1 421 79) " #define ADDITIVEC(CTX,T) instance CTX => Affine T where type Diff T = T ; \\" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 422 1 422 85) " (.-.) = (^-^) ; {-# INLINE (.-.) #-} ; (.+^) = (^+^) ; {-# INLINE (.+^) #-} ; \\" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 423 1 423 42) " (.-^) = (^-^) ; {-# INLINE (.-^) #-}" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 424 1 424 40) " #define ADDITIVE(T) ADDITIVEC((), T)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 434 1 434 22) " ADDITIVE(((->) a))" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 436 1 436 16) " ADDITIVE([])" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 438 1 438 21) " ADDITIVE(Complex)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 440 1 440 19) " ADDITIVE(Maybe)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 442 1 442 21) " ADDITIVE(ZipList)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 444 1 444 22) " ADDITIVE(Identity)" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 447 1 447 5) "--" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 448 1 448 5) " 8" , Comment False (SrcSpan "tests/examples/DerivingVia.hs" 449 1 449 5) "--" ] )