From 7902ebf82cba74f66fa9404470cdb6b717432805 Mon Sep 17 00:00:00 2001
From: Alan Zimmerman <alan.zimm@gmail.com>
Date: Mon, 31 Jul 2023 20:14:37 +0100
Subject: [PATCH] EPA: Remove EpAnnNotUsed

We no longer need the EpAnnNotUsed constructor for EpAnn, as we can
represent an unused annotation with an anchor having a EpaDelta of
zero, and empty comments and annotations.

This simplifies code handling annotations considerably.

Updates haddock submodule

Metric Increase:
    parsing001
---
 compiler/GHC/Hs.hs                            |    3 +
 compiler/GHC/Hs/Binds.hs                      |    2 +
 compiler/GHC/Hs/Decls.hs                      |    3 +
 compiler/GHC/Hs/Expr.hs                       |   20 +-
 compiler/GHC/Hs/ImpExp.hs                     |   10 +-
 compiler/GHC/Hs/Pat.hs                        |    3 +
 compiler/GHC/Hs/Utils.hs                      |    2 +-
 compiler/GHC/HsToCore/Arrows.hs               |    2 +-
 compiler/GHC/Parser.y                         |    9 +-
 compiler/GHC/Parser/Annotation.hs             |  120 +-
 compiler/GHC/Parser/PostProcess.hs            |   26 +-
 compiler/GHC/Tc/Deriv/Generate.hs             |    4 +-
 .../tests/ghc-api/exactprint/T22919.stderr    |   52 +-
 .../tests/ghc-api/exactprint/Test20239.stderr |  168 +-
 .../ghc-api/exactprint/ZeroWidthSemi.stderr   |   52 +-
 .../should_compile_flag_haddock/T17544.stderr | 1491 ++++++++++--
 .../T17544_kw.stderr                          |  154 +-
 testsuite/tests/module/mod185.stderr          |   66 +-
 .../should_compile/DumpParsedAst.stderr       | 1231 ++++++++--
 .../DumpParsedAstComments.stderr              |  182 +-
 .../should_compile/DumpRenamedAst.stderr      | 1989 ++++++++++++++---
 .../parser/should_compile/DumpSemis.stderr    | 1183 ++++++++--
 .../should_compile/DumpTypecheckedAst.stderr  | 1490 ++++++++++--
 .../parser/should_compile/KindSigs.stderr     |  936 ++++++--
 .../tests/parser/should_compile/T14189.stderr |  188 +-
 .../tests/parser/should_compile/T15279.stderr |  397 +++-
 .../tests/parser/should_compile/T15323.stderr |  133 +-
 .../tests/parser/should_compile/T20452.stderr |  329 ++-
 .../tests/parser/should_compile/T20718.stderr |   54 +-
 .../parser/should_compile/T20718b.stderr      |    9 +-
 .../tests/parser/should_compile/T20846.stderr |   52 +-
 .../should_compile/T23315/T23315.stderr       |   44 +-
 testsuite/tests/parser/should_compile/all.T   |    7 +-
 testsuite/tests/printer/T18791.stderr         |   58 +-
 testsuite/tests/printer/Test20297.stdout      |  356 ++-
 testsuite/tests/profiling/perf/T23103/all.T   |    1 -
 .../perf/T23103/info_table_map_perf.stderr    |    9 +-
 .../tests/simplCore/should_compile/T23864.hs  |    1 -
 .../typecheck/should_compile/T15242.stderr    |   30 +-
 utils/check-exact/ExactPrint.hs               |   59 +-
 utils/check-exact/Main.hs                     |    8 +-
 utils/check-exact/Orphans.hs                  |   68 -
 utils/check-exact/Parsers.hs                  |    1 -
 utils/check-exact/Transform.hs                |   52 +-
 utils/check-exact/Utils.hs                    |    4 -
 utils/check-exact/check-exact.cabal           |    1 -
 utils/haddock                                 |    2 +-
 47 files changed, 9277 insertions(+), 1784 deletions(-)
 delete mode 100644 utils/check-exact/Orphans.hs

diff --git a/compiler/GHC/Hs.hs b/compiler/GHC/Hs.hs
index 0125fb79a321..ca4bee354371 100644
--- a/compiler/GHC/Hs.hs
+++ b/compiler/GHC/Hs.hs
@@ -105,6 +105,9 @@ data AnnsModule
     am_eof :: Maybe (RealSrcSpan, RealSrcSpan) -- End of file and end of prior token
     } deriving (Data, Eq)
 
+instance NoAnn AnnsModule where
+  noAnn = AnnsModule [] [] Nothing
+
 instance Outputable (HsModule GhcPs) where
     ppr (HsModule { hsmodExt = XModulePs { hsmodHaddockModHeader = mbDoc }
                   , hsmodName = Nothing
diff --git a/compiler/GHC/Hs/Binds.hs b/compiler/GHC/Hs/Binds.hs
index 9671facf9ae2..983585a3e693 100644
--- a/compiler/GHC/Hs/Binds.hs
+++ b/compiler/GHC/Hs/Binds.hs
@@ -702,6 +702,8 @@ data AnnSig
       asRest   :: [AddEpAnn]
       } deriving Data
 
+instance NoAnn AnnSig where
+  noAnn = AnnSig noAnn noAnn
 
 -- | Type checker Specialisation Pragmas
 --
diff --git a/compiler/GHC/Hs/Decls.hs b/compiler/GHC/Hs/Decls.hs
index 0c9fa7e8abe9..b6c6ce280cf3 100644
--- a/compiler/GHC/Hs/Decls.hs
+++ b/compiler/GHC/Hs/Decls.hs
@@ -1200,6 +1200,9 @@ data HsRuleAnn
        , ra_rest :: [AddEpAnn]
        } deriving (Data, Eq)
 
+instance NoAnn HsRuleAnn where
+  noAnn = HsRuleAnn Nothing Nothing []
+
 flattenRuleDecls :: [LRuleDecls (GhcPass p)] -> [LRuleDecl (GhcPass p)]
 flattenRuleDecls decls = concatMap (rds_rules . unLoc) decls
 
diff --git a/compiler/GHC/Hs/Expr.hs b/compiler/GHC/Hs/Expr.hs
index 2cc90955a5a3..bfcba125b4e8 100644
--- a/compiler/GHC/Hs/Expr.hs
+++ b/compiler/GHC/Hs/Expr.hs
@@ -203,6 +203,9 @@ data EpAnnHsCase = EpAnnHsCase
       , hsCaseAnnsRest :: [AddEpAnn]
       } deriving Data
 
+instance NoAnn EpAnnHsCase where
+  noAnn = EpAnnHsCase noAnn noAnn noAnn
+
 data EpAnnUnboundVar = EpAnnUnboundVar
      { hsUnboundBackquotes :: (EpaLocation, EpaLocation)
      , hsUnboundHole       :: EpaLocation
@@ -224,7 +227,7 @@ type instance XOverLabel     GhcTc = DataConCantHappen
 
 type instance XVar           (GhcPass _) = NoExtField
 
-type instance XUnboundVar    GhcPs = EpAnn EpAnnUnboundVar
+type instance XUnboundVar    GhcPs = EpAnn (Maybe EpAnnUnboundVar)
 type instance XUnboundVar    GhcRn = NoExtField
 type instance XUnboundVar    GhcTc = HoleExprRef
   -- We really don't need the whole HoleExprRef; just the IORef EvTerm
@@ -388,17 +391,26 @@ data AnnExplicitSum
       aesClose      :: EpaLocation
       } deriving Data
 
+instance NoAnn AnnExplicitSum where
+  noAnn = AnnExplicitSum noAnn noAnn noAnn noAnn
+
 data AnnFieldLabel
   = AnnFieldLabel {
       afDot :: Maybe EpaLocation
       } deriving Data
 
+instance NoAnn AnnFieldLabel where
+  noAnn = AnnFieldLabel Nothing
+
 data AnnProjection
   = AnnProjection {
       apOpen  :: EpaLocation, -- ^ '('
       apClose :: EpaLocation  -- ^ ')'
       } deriving Data
 
+instance NoAnn AnnProjection where
+  noAnn = AnnProjection noAnn noAnn
+
 data AnnsIf
   = AnnsIf {
       aiIf       :: EpaLocation,
@@ -408,6 +420,9 @@ data AnnsIf
       aiElseSemi :: Maybe EpaLocation
       } deriving Data
 
+instance NoAnn AnnsIf where
+  noAnn = AnnsIf noAnn noAnn noAnn Nothing Nothing
+
 -- ---------------------------------------------------------------------
 
 type instance XSCC           (GhcPass _) = (EpAnn AnnPragma, SourceText)
@@ -1360,6 +1375,9 @@ data GrhsAnn
       ga_sep  :: AddEpAnn -- ^ Match separator location
       } deriving (Data)
 
+instance NoAnn GrhsAnn where
+  noAnn = GrhsAnn Nothing noAnn
+
 type instance XCGRHS (GhcPass _) _ = EpAnn GrhsAnn
                                    -- Location of matchSeparator
                                    -- TODO:AZ does this belong on the GRHS, or GRHSs?
diff --git a/compiler/GHC/Hs/ImpExp.hs b/compiler/GHC/Hs/ImpExp.hs
index 616fabd45436..162152fab385 100644
--- a/compiler/GHC/Hs/ImpExp.hs
+++ b/compiler/GHC/Hs/ImpExp.hs
@@ -42,7 +42,6 @@ import GHC.Unit.Module.Warnings
 
 import Data.Data
 import Data.Maybe
-import qualified Data.Semigroup as Semigroup
 
 
 {-
@@ -120,13 +119,8 @@ data EpAnnImportDecl = EpAnnImportDecl
   , importDeclAnnAs        :: Maybe EpaLocation
   } deriving (Data)
 
-instance Semigroup EpAnnImportDecl where
-  EpAnnImportDecl a1 b1 c1 d1 e1 f1 <> EpAnnImportDecl a2 b2 c2 d2 e2 f2
-         = EpAnnImportDecl (a1 Semigroup.<> a2) (b1 Semigroup.<> b2) (c1 Semigroup.<> c2)
-                           (d1 Semigroup.<> d2) (e1 Semigroup.<> e2) (f1 Semigroup.<> f2)
-instance Monoid EpAnnImportDecl where
-  mempty = EpAnnImportDecl noSpanAnchor Nothing Nothing Nothing Nothing Nothing
-
+instance NoAnn EpAnnImportDecl where
+  noAnn = EpAnnImportDecl noAnn  Nothing  Nothing  Nothing  Nothing  Nothing
 -- ---------------------------------------------------------------------
 
 simpleImportDecl :: ModuleName -> ImportDecl GhcPs
diff --git a/compiler/GHC/Hs/Pat.hs b/compiler/GHC/Hs/Pat.hs
index d0a15eccbb93..9055014089d6 100644
--- a/compiler/GHC/Hs/Pat.hs
+++ b/compiler/GHC/Hs/Pat.hs
@@ -184,6 +184,9 @@ data EpAnnSumPat = EpAnnSumPat
       , sumPatVbarsAfter  :: [EpaLocation]
       } deriving Data
 
+instance NoAnn EpAnnSumPat where
+  noAnn = EpAnnSumPat [] [] []
+
 -- ---------------------------------------------------------------------
 
 -- | Extension constructor for Pat, added after typechecking.
diff --git a/compiler/GHC/Hs/Utils.hs b/compiler/GHC/Hs/Utils.hs
index 2814af0e695d..0aded54bb962 100644
--- a/compiler/GHC/Hs/Utils.hs
+++ b/compiler/GHC/Hs/Utils.hs
@@ -620,7 +620,7 @@ nlHsIf cond true false = noLocA (HsIf noAnn cond true false)
 
 nlHsCase expr matches
   = noLocA (HsCase noAnn expr (mkMatchGroup (Generated SkipPmc) (noLocA matches)))
-nlList exprs          = noLocA (ExplicitList noAnn exprs)
+nlList exprs = noLocA (ExplicitList noAnn exprs)
 
 nlHsAppTy :: LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p)
 nlHsTyVar :: IsSrcSpanAnn p a
diff --git a/compiler/GHC/HsToCore/Arrows.hs b/compiler/GHC/HsToCore/Arrows.hs
index e17a62a54ab1..5693a798b851 100644
--- a/compiler/GHC/HsToCore/Arrows.hs
+++ b/compiler/GHC/HsToCore/Arrows.hs
@@ -808,7 +808,7 @@ dsCases ids local_vars stack_id stack_ty res_ty
     -- i.e. Void. The choices then effectively become `arr absurd`,
     -- implemented as `arr \case {}`.
     Nothing -> ([], void_ty,) . do_arr ids void_ty res_ty <$>
-      dsExpr (HsLam EpAnnNotUsed LamCase
+      dsExpr (HsLam noAnn LamCase
         (MG { mg_alts = noLocA []
             , mg_ext = MatchGroupTc [Scaled ManyTy void_ty] res_ty (Generated SkipPmc)
             }))
diff --git a/compiler/GHC/Parser.y b/compiler/GHC/Parser.y
index 13b7bd67d972..a394ae5dab9d 100644
--- a/compiler/GHC/Parser.y
+++ b/compiler/GHC/Parser.y
@@ -3767,7 +3767,7 @@ qopm    :: { forall b. DisambInfixOp b => PV (LocatedN b) }   -- used in section
 
 hole_op :: { forall b. DisambInfixOp b => PV (Located b) }   -- used in sections
 hole_op : '`' '_' '`'           { mkHsInfixHolePV (comb2 $1 $>)
-                                         (\cs -> EpAnn (glEE $1 $>) (EpAnnUnboundVar (glAA $1, glAA $3) (glAA $2)) cs) }
+                                         (\cs -> EpAnn (glEE $1 $>) (Just $ EpAnnUnboundVar (glAA $1, glAA $3) (glAA $2)) cs) }
 
 qvarop :: { LocatedN RdrName }
         : qvarsym               { $1 }
@@ -4406,7 +4406,7 @@ mos,mcs :: Located Token -> AddEpAnn
 mos ll = mj AnnOpenS ll
 mcs ll = mj AnnCloseS ll
 
-pvA :: MonadP m => m (Located a) -> m (LocatedAn t a)
+pvA :: (MonadP m, NoAnn t) => m (Located a) -> m (LocatedAn t a)
 pvA a = do { av <- a
            ; return (reLoc av) }
 
@@ -4543,10 +4543,6 @@ addTrailingCommaS (L l sl) span = L l (sl { sl_tc = Just (epaLocationRealSrcSpan
 -- -------------------------------------
 
 addTrailingDarrowC :: LocatedC a -> Located Token -> EpAnnComments -> LocatedC a
-addTrailingDarrowC (L (SrcSpanAnn EpAnnNotUsed l) a) lt cs =
-  let
-    u = if (isUnicode lt) then UnicodeSyntax else NormalSyntax
-  in L (SrcSpanAnn (EpAnn (spanAsAnchor l) (AnnContext (Just (u,glAA lt)) [] []) cs) l) a
 addTrailingDarrowC (L (SrcSpanAnn (EpAnn lr (AnnContext _ o c) csc) l) a) lt cs =
   let
     u = if (isUnicode lt) then UnicodeSyntax else NormalSyntax
@@ -4566,7 +4562,6 @@ combineHasLocs :: (HasLoc a, HasLoc b) => a -> b -> SrcSpan
 combineHasLocs a b = combineSrcSpans (getHasLoc a) (getHasLoc b)
 
 fromTrailingN :: SrcSpanAnnN -> SrcSpanAnnA
-fromTrailingN (SrcSpanAnn EpAnnNotUsed l) = SrcSpanAnn EpAnnNotUsed l
 fromTrailingN (SrcSpanAnn (EpAnn anc ann cs) l)
     = SrcSpanAnn (EpAnn anc (AnnListItem (nann_trailing ann)) cs) l
 }
diff --git a/compiler/GHC/Parser/Annotation.hs b/compiler/GHC/Parser/Annotation.hs
index 270d387f0f73..90ae153cdee2 100644
--- a/compiler/GHC/Parser/Annotation.hs
+++ b/compiler/GHC/Parser/Annotation.hs
@@ -459,7 +459,6 @@ epaLocationRealSrcSpan (EpaSpan (RealSrcSpan r _)) = r
 epaLocationRealSrcSpan _ = panic "epaLocationRealSrcSpan"
 
 epaLocationFromSrcAnn :: SrcAnn ann -> EpaLocation
-epaLocationFromSrcAnn (SrcSpanAnn EpAnnNotUsed l) = EpaSpan l
 epaLocationFromSrcAnn (SrcSpanAnn (EpAnn anc _ _) _) = anc
 
 instance Outputable EpaLocation where
@@ -513,8 +512,6 @@ data EpAnn ann
               -- ^ Comments enclosed in the SrcSpan of the element
               -- this `EpAnn` is attached to
            }
-  | EpAnnNotUsed -- ^ No Annotation for generated code,
-                  -- e.g. from TH, deriving, etc.
         deriving (Data, Eq, Functor)
 
 -- | An 'Anchor' records the base location for the start of the
@@ -927,8 +924,6 @@ trailingAnnToAddEpAnn (AddDarrowAnn ss)  = AddEpAnn AnnDarrow ss
 -- to an existing annotation.
 addTrailingAnnToL :: SrcSpan -> TrailingAnn -> EpAnnComments
                   -> EpAnn AnnList -> EpAnn AnnList
-addTrailingAnnToL s t cs EpAnnNotUsed
-  = EpAnn (spanAsAnchor s) (AnnList (Just $ spanAsAnchor s) Nothing Nothing [] [t]) cs
 addTrailingAnnToL _ t cs n = n { anns = addTrailing (anns n)
                                , comments = comments n <> cs }
   where
@@ -939,8 +934,6 @@ addTrailingAnnToL _ t cs n = n { anns = addTrailing (anns n)
 -- to an existing annotation.
 addTrailingAnnToA :: SrcSpan -> TrailingAnn -> EpAnnComments
                   -> EpAnn AnnListItem -> EpAnn AnnListItem
-addTrailingAnnToA s t cs EpAnnNotUsed
-  = EpAnn (spanAsAnchor s) (AnnListItem [t]) cs
 addTrailingAnnToA _ t cs n = n { anns = addTrailing (anns n)
                                , comments = comments n <> cs }
   where
@@ -950,8 +943,6 @@ addTrailingAnnToA _ t cs n = n { anns = addTrailing (anns n)
 -- | Helper function used in the parser to add a comma location to an
 -- existing annotation.
 addTrailingCommaToN :: SrcSpan -> EpAnn NameAnn -> EpaLocation -> EpAnn NameAnn
-addTrailingCommaToN s EpAnnNotUsed l
-  = EpAnn (spanAsAnchor s) (NameAnnTrailing [AddCommaAnn l]) emptyComments
 addTrailingCommaToN _ n l = n { anns = addTrailing (anns n) l }
   where
     -- See Note [list append in addTrailing*]
@@ -959,7 +950,6 @@ addTrailingCommaToN _ n l = n { anns = addTrailing (anns n) l }
     addTrailing n l = n { nann_trailing = nann_trailing n ++ [AddCommaAnn l]}
 
 noTrailingN :: SrcSpanAnnN -> SrcSpanAnnN
-noTrailingN (SrcSpanAnn EpAnnNotUsed l) = SrcSpanAnn EpAnnNotUsed l
 noTrailingN (SrcSpanAnn s l)
     = SrcSpanAnn (s { anns = (anns s) { nann_trailing = [] } }) l
 
@@ -1011,8 +1001,11 @@ class HasAnnotation e where
 instance HasAnnotation (SrcSpan) where
   noAnnSrcSpan l = l
 
-instance HasAnnotation (SrcSpanAnn' (EpAnn ann)) where
-  noAnnSrcSpan l = SrcSpanAnn EpAnnNotUsed l
+instance (NoAnn ann) => HasAnnotation (EpAnn ann) where
+  noAnnSrcSpan l = EpAnn (spanAsAnchor l) noAnn emptyComments
+
+instance (NoAnn ann) => HasAnnotation (SrcSpanAnn' (EpAnn ann)) where
+  noAnnSrcSpan l = SrcSpanAnn (EpAnn (spanAsAnchor l) noAnn emptyComments) l
 
 noLocA :: (HasAnnotation e) => a -> GenLocated e a
 noLocA = L (noAnnSrcSpan noSrcSpan)
@@ -1082,27 +1075,14 @@ reAnnL anns cs (L l a) = L (SrcSpanAnn (EpAnn (spanAsAnchor l) anns cs) l) a
 getLocAnn :: Located a  -> SrcSpanAnnA
 getLocAnn (L l _) = SrcSpanAnn noAnn l
 
-instance NoAnn (EpAnn a) where
-  -- Short form for 'EpAnnNotUsed'
-  noAnn = EpAnnNotUsed
-
 addAnns :: EpAnn [AddEpAnn] -> [AddEpAnn] -> EpAnnComments -> EpAnn [AddEpAnn]
 addAnns (EpAnn l as1 cs) as2 cs2
   = EpAnn (widenAnchor l (as1 ++ as2)) (as1 ++ as2) (cs <> cs2)
-addAnns EpAnnNotUsed [] (EpaComments []) = EpAnnNotUsed
-addAnns EpAnnNotUsed [] (EpaCommentsBalanced [] []) = EpAnnNotUsed
-addAnns EpAnnNotUsed as cs = EpAnn (widenAnchor noSpanAnchor as) as cs
 
 -- AZ:TODO use widenSpan here too
 addAnnsA :: SrcSpanAnnA -> [TrailingAnn] -> EpAnnComments -> SrcSpanAnnA
 addAnnsA (SrcSpanAnn (EpAnn l as1 cs) loc) as2 cs2
   = SrcSpanAnn (EpAnn l (AnnListItem (lann_trailing as1 ++ as2)) (cs <> cs2)) loc
-addAnnsA (SrcSpanAnn EpAnnNotUsed loc) [] (EpaComments [])
-  = SrcSpanAnn EpAnnNotUsed loc
-addAnnsA (SrcSpanAnn EpAnnNotUsed loc) [] (EpaCommentsBalanced [] [])
-  = SrcSpanAnn EpAnnNotUsed loc
-addAnnsA (SrcSpanAnn EpAnnNotUsed loc) as cs
-  = SrcSpanAnn (EpAnn (spanAsAnchor loc) (AnnListItem as) cs) loc
 
 -- | The annotations need to all come after the anchor.  Make sure
 -- this is the case.
@@ -1163,26 +1143,25 @@ widenAnchorS (EpaSpan us) _ = EpaSpan us
 widenAnchorS (EpaDelta _ _) (RealSrcSpan r mb) = EpaSpan (RealSrcSpan r mb)
 widenAnchorS anc _ = anc
 
-widenLocatedAn :: SrcSpanAnn' an -> [AddEpAnn] -> SrcSpanAnn' an
-widenLocatedAn (SrcSpanAnn a l) as = SrcSpanAnn a (widenSpan l as)
+widenLocatedAn :: SrcAnn an -> [AddEpAnn] -> SrcAnn an
+widenLocatedAn (SrcSpanAnn (EpAnn _ a cs) l) as = SrcSpanAnn (EpAnn (spanAsAnchor l') a cs) l'
+  where
+    l' = widenSpan l as
+
 
 epAnnAnnsL :: EpAnn a -> [a]
-epAnnAnnsL EpAnnNotUsed = []
 epAnnAnnsL (EpAnn _ anns _) = [anns]
 
 epAnnAnns :: EpAnn [AddEpAnn] -> [AddEpAnn]
-epAnnAnns EpAnnNotUsed = []
 epAnnAnns (EpAnn _ anns _) = anns
 
 annParen2AddEpAnn :: EpAnn AnnParen -> [AddEpAnn]
-annParen2AddEpAnn EpAnnNotUsed = []
 annParen2AddEpAnn (EpAnn _ (AnnParen pt o c) _)
   = [AddEpAnn ai o, AddEpAnn ac c]
   where
     (ai,ac) = parenTypeKws pt
 
 epAnnComments :: EpAnn an -> EpAnnComments
-epAnnComments EpAnnNotUsed = EpaComments []
 epAnnComments (EpAnn _ _ cs) = cs
 
 -- Forward compatibility
@@ -1208,7 +1187,6 @@ combineLocsA (L a _) (L b _) = combineSrcSpansA a b
 combineSrcSpansA :: Semigroup a => SrcAnn a -> SrcAnn a -> SrcAnn a
 combineSrcSpansA (SrcSpanAnn aa la) (SrcSpanAnn ab lb)
   = case SrcSpanAnn (aa <> ab) (combineSrcSpans la lb) of
-      SrcSpanAnn EpAnnNotUsed l -> SrcSpanAnn EpAnnNotUsed l
       SrcSpanAnn (EpAnn anc an cs) l ->
         SrcSpanAnn (EpAnn (widenAnchorR anc (realSrcSpan l)) an cs) l
 
@@ -1259,16 +1237,12 @@ comment loc cs = EpAnn (EpaSpan (RealSrcSpan loc Strict.Nothing)) NoEpAnns cs
 -- | Add additional comments to a 'SrcAnn', used for manipulating the
 -- AST prior to exact printing the changed one.
 addCommentsToSrcAnn :: (NoAnn ann) => SrcAnn ann -> EpAnnComments -> SrcAnn ann
-addCommentsToSrcAnn (SrcSpanAnn EpAnnNotUsed loc) cs
-  = SrcSpanAnn (EpAnn (spanAsAnchor loc) noAnn cs) loc
 addCommentsToSrcAnn (SrcSpanAnn (EpAnn a an cs) loc) cs'
   = SrcSpanAnn (EpAnn a an (cs <> cs')) loc
 
 -- | Replace any existing comments on a 'SrcAnn', used for manipulating the
 -- AST prior to exact printing the changed one.
 setCommentsSrcAnn :: (NoAnn ann) => SrcAnn ann -> EpAnnComments -> SrcAnn ann
-setCommentsSrcAnn (SrcSpanAnn EpAnnNotUsed loc) cs
-  = SrcSpanAnn (EpAnn (spanAsAnchor  loc) noAnn cs) loc
 setCommentsSrcAnn (SrcSpanAnn (EpAnn a an _) loc) cs
   = SrcSpanAnn (EpAnn a an cs) loc
 
@@ -1276,43 +1250,27 @@ setCommentsSrcAnn (SrcSpanAnn (EpAnn a an _) loc) cs
 -- AST prior to exact printing the changed one.
 addCommentsToEpAnn :: (NoAnn a)
   => SrcSpan -> EpAnn a -> EpAnnComments -> EpAnn a
-addCommentsToEpAnn loc EpAnnNotUsed cs
-  = EpAnn (spanAsAnchor loc) noAnn cs
 addCommentsToEpAnn _ (EpAnn a an ocs) ncs = EpAnn a an (ocs <> ncs)
 
 -- | Replace any existing comments, used for manipulating the
 -- AST prior to exact printing the changed one.
 setCommentsEpAnn :: (NoAnn a)
   => SrcSpan -> EpAnn a -> EpAnnComments -> EpAnn a
-setCommentsEpAnn loc EpAnnNotUsed cs
-  = EpAnn (spanAsAnchor loc) noAnn cs
 setCommentsEpAnn _ (EpAnn a an _) cs = EpAnn a an cs
 
 -- | Transfer comments and trailing items from the annotations in the
 -- first 'SrcSpanAnnA' argument to those in the second.
 transferAnnsA :: SrcSpanAnnA -> SrcSpanAnnA -> (SrcSpanAnnA,  SrcSpanAnnA)
-transferAnnsA from@(SrcSpanAnn EpAnnNotUsed _) to = (from, to)
 transferAnnsA (SrcSpanAnn (EpAnn a an cs) l) to
   = ((SrcSpanAnn (EpAnn a noAnn emptyComments) l), to')
   where
     to' = case to of
-      (SrcSpanAnn EpAnnNotUsed loc)
-        ->  SrcSpanAnn (EpAnn (spanAsAnchor loc) an cs) loc
       (SrcSpanAnn (EpAnn a an' cs') loc)
         -> SrcSpanAnn (EpAnn a (an' <> an) (cs' <> cs)) loc
 
 -- | Transfer trailing items but not comments from the annotations in the
 -- first 'SrcSpanAnnA' argument to those in the second.
 transferFollowingA :: SrcSpanAnnA -> SrcSpanAnnA -> (SrcSpanAnnA,  SrcSpanAnnA)
-transferFollowingA (SrcSpanAnn EpAnnNotUsed l1) (SrcSpanAnn ann2 l2)
-  = (SrcSpanAnn EpAnnNotUsed l1, SrcSpanAnn ann2 l2)
-transferFollowingA (SrcSpanAnn (EpAnn a1 an1 cs1) l1) (SrcSpanAnn EpAnnNotUsed l2)
-  = (SrcSpanAnn (EpAnn a1 noAnn cs1') l1, SrcSpanAnn (EpAnn (spanAsAnchor l2) an1 cs2') l2)
-  where
-    pc = priorComments cs1
-    fc = getFollowingComments cs1
-    cs1' = setPriorComments emptyComments pc
-    cs2' = setFollowingComments emptyComments fc
 transferFollowingA (SrcSpanAnn (EpAnn a1 an1 cs1) l1) (SrcSpanAnn (EpAnn a2 an2 cs2) l2)
   = (SrcSpanAnn (EpAnn a1 noAnn cs1') l1, SrcSpanAnn (EpAnn a2 (an1 <> an2) cs2') l2)
   where
@@ -1324,35 +1282,18 @@ transferFollowingA (SrcSpanAnn (EpAnn a1 an1 cs1) l1) (SrcSpanAnn (EpAnn a2 an2
 -- | Transfer trailing items from the annotations in the
 -- first 'SrcSpanAnnA' argument to those in the second.
 transferAnnsOnlyA :: SrcSpanAnnA -> SrcSpanAnnA -> (SrcSpanAnnA,  SrcSpanAnnA)
-transferAnnsOnlyA (SrcSpanAnn EpAnnNotUsed l) ss2
-  = (SrcSpanAnn EpAnnNotUsed l, ss2)
-transferAnnsOnlyA (SrcSpanAnn (EpAnn a an cs) l) (SrcSpanAnn EpAnnNotUsed l')
-  = (SrcSpanAnn (EpAnn a noAnn cs) l, SrcSpanAnn (EpAnn (spanAsAnchor l') an emptyComments) l')
 transferAnnsOnlyA (SrcSpanAnn (EpAnn a an cs) l) (SrcSpanAnn (EpAnn a' an' cs') l')
   = (SrcSpanAnn (EpAnn a noAnn cs) l, SrcSpanAnn (EpAnn a' (an' <> an) cs') l')
 
 -- | Transfer comments from the annotations in the
 -- first 'SrcSpanAnnA' argument to those in the second.
 transferCommentsOnlyA :: SrcSpanAnnA -> SrcSpanAnnA -> (SrcSpanAnnA,  SrcSpanAnnA)
-transferCommentsOnlyA (SrcSpanAnn EpAnnNotUsed l) ss2
-  = (SrcSpanAnn EpAnnNotUsed l, ss2)
-transferCommentsOnlyA (SrcSpanAnn (EpAnn a an cs) l) (SrcSpanAnn EpAnnNotUsed l')
-  = (SrcSpanAnn (EpAnn a an emptyComments ) l, SrcSpanAnn (EpAnn (spanAsAnchor l') noAnn cs) l')
 transferCommentsOnlyA (SrcSpanAnn (EpAnn a an cs) l) (SrcSpanAnn (EpAnn a' an' cs') l')
   = (SrcSpanAnn (EpAnn a an emptyComments) l, SrcSpanAnn (EpAnn a' an' (cs <> cs')) l')
 
 -- | Transfer prior comments only from the annotations in the
 -- first 'SrcSpanAnnA' argument to those in the second.
 transferPriorCommentsA :: SrcSpanAnnA -> SrcSpanAnnA -> (SrcSpanAnnA,  SrcSpanAnnA)
-transferPriorCommentsA (SrcSpanAnn EpAnnNotUsed l1) (SrcSpanAnn ann2 l2)
-  = (SrcSpanAnn EpAnnNotUsed l1,  SrcSpanAnn ann2 l2)
-transferPriorCommentsA (SrcSpanAnn (EpAnn a1 an1 cs1) l1) (SrcSpanAnn EpAnnNotUsed l2)
-  = (SrcSpanAnn (EpAnn a1 an1 cs1') l1,  SrcSpanAnn (EpAnn (spanAsAnchor l2) noAnn cs2') l2)
-  where
-    pc = priorComments cs1
-    fc = getFollowingComments cs1
-    cs1' = setFollowingComments emptyComments fc
-    cs2' = setPriorComments emptyComments pc
 transferPriorCommentsA (SrcSpanAnn (EpAnn a1 an1 cs1) l1) (SrcSpanAnn (EpAnn a2 an2 cs2) l2)
   = (SrcSpanAnn (EpAnn a1 an1 cs1') l1,  SrcSpanAnn (EpAnn a2 an2 cs2') l2)
   where
@@ -1365,12 +1306,10 @@ transferPriorCommentsA (SrcSpanAnn (EpAnn a1 an1 cs1) l1) (SrcSpanAnn (EpAnn a2
 -- | Remove the exact print annotations payload, leaving only the
 -- anchor and comments.
 commentsOnlyA :: NoAnn ann => SrcAnn ann -> SrcAnn ann
-commentsOnlyA (SrcSpanAnn EpAnnNotUsed loc) = SrcSpanAnn EpAnnNotUsed loc
 commentsOnlyA (SrcSpanAnn (EpAnn a _ cs) loc) = (SrcSpanAnn (EpAnn a noAnn cs) loc)
 
 -- | Remove the comments, leaving the exact print annotations payload
 removeCommentsA :: SrcAnn ann -> SrcAnn ann
-removeCommentsA (SrcSpanAnn EpAnnNotUsed loc) = SrcSpanAnn EpAnnNotUsed loc
 removeCommentsA (SrcSpanAnn (EpAnn a an _) loc)
   = (SrcSpanAnn (EpAnn a an emptyComments) loc)
 
@@ -1385,8 +1324,6 @@ instance (Semigroup an) => Semigroup (SrcSpanAnn' an) where
    -- largest span
 
 instance (Semigroup a) => Semigroup (EpAnn a) where
-  EpAnnNotUsed <> x = x
-  x <> EpAnnNotUsed = x
   (EpAnn l1 a1 b1) <> (EpAnn l2 a2 b2) = EpAnn (l1 <> l2) (a1 <> a2) (b1 <> b2)
    -- The critical part about the anchor is its left edge, and all
    -- annotations must follow it. So we combine them which yields the
@@ -1404,7 +1341,6 @@ instance Semigroup EpAnnComments where
   EpaCommentsBalanced cs1 as1 <> EpaComments cs2 = EpaCommentsBalanced (cs1 ++ cs2) as1
   EpaCommentsBalanced cs1 as1 <> EpaCommentsBalanced cs2 as2 = EpaCommentsBalanced (cs1 ++ cs2) (as1++as2)
 
-
 instance Semigroup AnnListItem where
   (AnnListItem l1) <> (AnnListItem l2) = AnnListItem (l1 <> l2)
 
@@ -1418,6 +1354,31 @@ instance Monoid (AnnSortKey tag) where
 
 -- ---------------------------------------------------------------------
 -- NoAnn instances
+-- ---------------------------------------------------------------------
+
+instance NoAnn EpaLocation where
+  noAnn = EpaDelta (SameLine 0) []
+
+instance NoAnn AnnKeywordId where
+  noAnn = Annlarrowtail  {- gotta pick one -}
+
+instance NoAnn AddEpAnn where
+  noAnn = AddEpAnn noAnn noAnn
+
+instance NoAnn [a] where
+  noAnn = []
+
+instance NoAnn (Maybe a) where
+  noAnn = Nothing
+
+instance (NoAnn a, NoAnn b) => NoAnn (a, b) where
+  noAnn = (noAnn, noAnn)
+
+instance NoAnn Bool where
+  noAnn = False
+
+instance (NoAnn ann) => NoAnn (EpAnn ann) where
+  noAnn = EpAnn noSpanAnchor noAnn emptyComments
 
 instance NoAnn NoEpAnns where
   noAnn = NoEpAnns
@@ -1431,14 +1392,19 @@ instance NoAnn AnnContext where
 instance NoAnn AnnList where
   noAnn = AnnList Nothing Nothing Nothing [] []
 
--- ---------------------------------------------------------------------
-
 instance NoAnn NameAnn where
   noAnn = NameAnnTrailing []
 
+instance NoAnn AnnPragma where
+  noAnn = AnnPragma noAnn noAnn []
+
+instance NoAnn AnnParen where
+  noAnn = AnnParen AnnParens noAnn noAnn
+
+-- ---------------------------------------------------------------------
+
 instance (Outputable a) => Outputable (EpAnn a) where
   ppr (EpAnn l a c)  = text "EpAnn" <+> ppr l <+> ppr a <+> ppr c
-  ppr EpAnnNotUsed = text "EpAnnNotUsed"
 
 instance Outputable NoEpAnns where
   ppr NoEpAnns = text "NoEpAnns"
diff --git a/compiler/GHC/Parser/PostProcess.hs b/compiler/GHC/Parser/PostProcess.hs
index 3930a619fa28..029541f77542 100644
--- a/compiler/GHC/Parser/PostProcess.hs
+++ b/compiler/GHC/Parser/PostProcess.hs
@@ -478,9 +478,6 @@ add_where an@(AddEpAnn _ (EpaSpan (RealSrcSpan rs _))) (EpAnn a (AnnList anc o c
   | otherwise
   = EpAnn (patch_anchor rs a)
           (AnnList (fmap (patch_anchor rs) anc) o c (an:r) t) (cs Semi.<> cs2)
-add_where an@(AddEpAnn _ (EpaSpan (RealSrcSpan rs mb))) EpAnnNotUsed cs
-  = EpAnn (EpaSpan (RealSrcSpan rs mb))
-           (AnnList (Just $ EpaSpan (RealSrcSpan rs mb)) Nothing Nothing [an] []) cs
 add_where (AddEpAnn _ _) _ _ = panic "add_where"
  -- EpaDelta should only be used for transformations
 
@@ -498,7 +495,6 @@ patch_anchor r1 (EpaSpan (RealSrcSpan r0 mb)) = EpaSpan (RealSrcSpan r mb)
 patch_anchor _ (EpaSpan ss) = EpaSpan ss
 
 fixValbindsAnn :: EpAnn AnnList -> EpAnn AnnList
-fixValbindsAnn EpAnnNotUsed = EpAnnNotUsed
 fixValbindsAnn (EpAnn anchor (AnnList ma o c r t) cs)
   = (EpAnn (widenAnchor anchor (r ++ map trailingAnnToAddEpAnn t)) (AnnList ma o c r t) cs)
 
@@ -837,10 +833,7 @@ mkGadtDecl loc names dcol ty = do
 
   let bndrs_loc = case outer_bndrs of
         HsOuterImplicit{} -> getLoc ty
-        HsOuterExplicit an _ ->
-          case an of
-            EpAnnNotUsed -> getLoc ty
-            an' -> SrcSpanAnn (EpAnn (entry an') noAnn emptyComments) (spanFromAnchor (entry an'))
+        HsOuterExplicit an' _ -> SrcSpanAnn (EpAnn (entry an') noAnn emptyComments) (spanFromAnchor (entry an'))
 
   pure $ L l ConDeclGADT
                      { con_g_ext  = an
@@ -995,8 +988,9 @@ checkTyVars pp_what equals_or_where tc tparms
     for_widening  _                                     = AddEpAnn AnnAnyclass (EpaDelta (SameLine 0) [])
 
     for_widening_ann :: HsBndrVis GhcPs -> EpAnn [AddEpAnn]
-    for_widening_ann (HsBndrInvisible (L (TokenLoc (EpaSpan (RealSrcSpan r _mb))) _)) = EpAnn (realSpanAsAnchor r) [] emptyComments
-    for_widening_ann  _                                     = EpAnnNotUsed
+    for_widening_ann (HsBndrInvisible (L (TokenLoc (EpaSpan (RealSrcSpan r _mb))) _))
+      = EpAnn (realSpanAsAnchor r) [] emptyComments
+    for_widening_ann  _ = noAnn
 
 
 whereDots, equalsDots :: SDoc
@@ -1109,12 +1103,6 @@ checkTyClHdr is_cls ty
     -- Combine the annotations from the HsParTy and HsStarTy into a
     -- new one for the LocatedN RdrName
     newAnns :: SrcSpanAnnA -> EpAnn AnnParen -> SrcSpanAnnN
-    newAnns (SrcSpanAnn EpAnnNotUsed l) (EpAnn as (AnnParen _ o c) cs) =
-      let
-        lr = combineRealSrcSpans (realSrcSpan l) (anchor as)
-        an = EpAnn (EpaSpan (RealSrcSpan lr Strict.Nothing)) (NameAnn NameParens o (srcSpan2e l) c []) cs
-      in SrcSpanAnn an (RealSrcSpan lr Strict.Nothing)
-    newAnns _ EpAnnNotUsed = panic "missing AnnParen"
     newAnns (SrcSpanAnn (EpAnn ap (AnnListItem ta) csp) l) (EpAnn as (AnnParen _ o c) cs) =
       let
         lr = RealSrcSpan (combineRealSrcSpans (anchor ap) (anchor as)) Strict.Nothing
@@ -1173,7 +1161,6 @@ checkContext orig_t@(L (SrcSpanAnn _ l) _orig_t) =
     -- Ditto ()
     = do
         let (op,cp,cs') = case ann' of
-              EpAnnNotUsed -> ([],[],emptyComments)
               EpAnn _ (AnnParen _ o c) cs -> ([o],[c],cs)
         return (L (SrcSpanAnn (EpAnn (spanAsAnchor l)
                               -- Append parens so that the original order in the source is maintained
@@ -1183,7 +1170,6 @@ checkContext orig_t@(L (SrcSpanAnn _ l) _orig_t) =
                                   -- to be sure HsParTy doesn't get into the way
     = do
         let (op,cp,cs') = case ann' of
-                    EpAnnNotUsed -> ([],[],emptyComments)
                     EpAnn _ (AnnParen _ open close ) cs -> ([open],[close],cs)
         check (op++opi,cp++cpi,cs' Semi.<> csi) ty
 
@@ -1532,7 +1518,7 @@ type Fbind b = Either (LHsRecField GhcPs (LocatedA b)) (LHsRecProj GhcPs (Locate
 class DisambInfixOp b where
   mkHsVarOpPV :: LocatedN RdrName -> PV (LocatedN b)
   mkHsConOpPV :: LocatedN RdrName -> PV (LocatedN b)
-  mkHsInfixHolePV :: SrcSpan -> (EpAnnComments -> EpAnn EpAnnUnboundVar) -> PV (Located b)
+  mkHsInfixHolePV :: SrcSpan -> (EpAnnComments -> EpAnn (Maybe EpAnnUnboundVar)) -> PV (Located b)
 
 instance DisambInfixOp (HsExpr GhcPs) where
   mkHsVarOpPV v = return $ L (getLoc v) (HsVar noExtField v)
@@ -1887,7 +1873,7 @@ instance DisambECP (HsExpr GhcPs) where
                                                          (PsErrUnallowedPragma prag)
   rejectPragmaPV _                        = return ()
 
-hsHoleExpr :: EpAnn EpAnnUnboundVar -> HsExpr GhcPs
+hsHoleExpr :: EpAnn (Maybe EpAnnUnboundVar) -> HsExpr GhcPs
 hsHoleExpr anns = HsUnboundVar anns (mkRdrUnqual (mkVarOccFS (fsLit "_")))
 
 instance DisambECP (PatBuilder GhcPs) where
diff --git a/compiler/GHC/Tc/Deriv/Generate.hs b/compiler/GHC/Tc/Deriv/Generate.hs
index 917a48ae2092..ff63fd80f634 100644
--- a/compiler/GHC/Tc/Deriv/Generate.hs
+++ b/compiler/GHC/Tc/Deriv/Generate.hs
@@ -1655,8 +1655,8 @@ gen_Lift_binds loc (DerivInstTys{ dit_rep_tc = tycon
     mk_untyped_bracket = HsUntypedBracket noAnn . ExpBr noExtField
     mk_typed_bracket = HsTypedBracket noAnn
 
-    mk_tsplice = HsTypedSplice (EpAnnNotUsed, noAnn)
-    mk_usplice = HsUntypedSplice EpAnnNotUsed . HsUntypedSpliceExpr noAnn
+    mk_tsplice = HsTypedSplice (noAnn, noAnn)
+    mk_usplice = HsUntypedSplice noAnn . HsUntypedSpliceExpr noAnn
     data_cons = getPossibleDataCons tycon tycon_args
 
     pats_etc mk_bracket mk_splice lift_name data_con
diff --git a/testsuite/tests/ghc-api/exactprint/T22919.stderr b/testsuite/tests/ghc-api/exactprint/T22919.stderr
index 3e22fc96c630..464b8576a62d 100644
--- a/testsuite/tests/ghc-api/exactprint/T22919.stderr
+++ b/testsuite/tests/ghc-api/exactprint/T22919.stderr
@@ -29,7 +29,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T22919.hs:1:8-13 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T22919.hs:1:8-13 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T22919.hs:1:8-13 })
     {ModuleName: T22919}))
   (Nothing)
   []
@@ -45,15 +50,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T22919.hs:2:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T22919.hs:2:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T22919.hs:2:1-3 })
        (Unqual
         {OccName: foo}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T22919.hs:2:1-9 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T22919.hs:2:1-9 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { T22919.hs:2:1-9 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { T22919.hs:2:1-9 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T22919.hs:2:1-9 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T22919.hs:2:1-9 })
           (Match
            (EpAnn
             (EpaSpan { T22919.hs:2:1-9 })
@@ -62,7 +86,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T22919.hs:2:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T22919.hs:2:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T22919.hs:2:1-3 })
              (Unqual
               {OccName: foo}))
             (Prefix)
@@ -73,7 +102,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { T22919.hs:2:5-9 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { T22919.hs:2:5-9 })
               (GRHS
                (EpAnn
@@ -85,7 +118,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T22919.hs:2:7-9 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T22919.hs:2:7-9 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { T22919.hs:2:7-9 })
                 (HsLit
                  (EpAnn
                   (EpaSpan { T22919.hs:2:7-9 })
diff --git a/testsuite/tests/ghc-api/exactprint/Test20239.stderr b/testsuite/tests/ghc-api/exactprint/Test20239.stderr
index ba34e6c04f9a..25d4e32658f0 100644
--- a/testsuite/tests/ghc-api/exactprint/Test20239.stderr
+++ b/testsuite/tests/ghc-api/exactprint/Test20239.stderr
@@ -29,7 +29,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:1:8-16 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { Test20239.hs:1:8-16 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { Test20239.hs:1:8-16 })
     {ModuleName: Test20239}))
   (Nothing)
   []
@@ -70,14 +75,24 @@
               "-- ^ Run a query against the database")
              { Test20239.hs:5:51-55 }))]))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:5:15-20 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { Test20239.hs:5:15-20 })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { Test20239.hs:5:15-20 })
          (Unqual
           {OccName: Method}))
         (HsOuterImplicit
          (NoExtField))
         [(HsValArg
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:5:22-32 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { Test20239.hs:5:22-32 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { Test20239.hs:5:22-32 })
            (HsTyVar
             (EpAnn
              (EpaSpan { Test20239.hs:5:22-32 })
@@ -86,7 +101,12 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:5:22-32 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { Test20239.hs:5:22-32 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { Test20239.hs:5:22-32 })
              (Unqual
               {OccName: PGMigration})))))]
         (Prefix)
@@ -112,7 +132,12 @@
               (EpaComments
                []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:5:36-49 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { Test20239.hs:5:36-49 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { Test20239.hs:5:36-49 })
               (Unqual
                {OccName: MigrationQuery}))
              (False)
@@ -130,7 +155,12 @@
                    (NoTokenLoc)
                    (HsNormalTok))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:5:51-55 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { Test20239.hs:5:51-55 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { Test20239.hs:5:51-55 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { Test20239.hs:5:51-55 })
@@ -139,12 +169,22 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:5:51-55 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { Test20239.hs:5:51-55 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { Test20239.hs:5:51-55 })
                    (Unqual
                     {OccName: Query})))))])
              (Nothing)))
           ,(L
-            (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:36-86 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { Test20239.hs:7:36-86 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { Test20239.hs:7:36-86 })
             (ConDeclH98
              (EpAnn
               (EpaSpan { Test20239.hs:7:36-86 })
@@ -152,7 +192,12 @@
               (EpaComments
                []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:36-48 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { Test20239.hs:7:36-48 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { Test20239.hs:7:36-48 })
               (Unqual
                {OccName: MigrationCode}))
              (False)
@@ -170,7 +215,12 @@
                    (NoTokenLoc)
                    (HsNormalTok))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:50-86 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { Test20239.hs:7:50-86 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { Test20239.hs:7:50-86 })
                  (HsParTy
                   (EpAnn
                    (EpaSpan { Test20239.hs:7:50-86 })
@@ -181,7 +231,12 @@
                    (EpaComments
                     []))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:51-85 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { Test20239.hs:7:51-85 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { Test20239.hs:7:51-85 })
                    (HsFunTy
                     (EpAnn
                      (EpaSpan { Test20239.hs:7:51-85 })
@@ -194,7 +249,12 @@
                        (EpaSpan { Test20239.hs:7:62-63 }))
                       (HsNormalTok)))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:51-60 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { Test20239.hs:7:51-60 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { Test20239.hs:7:51-60 })
                      (HsTyVar
                       (EpAnn
                        (EpaSpan { Test20239.hs:7:51-60 })
@@ -203,15 +263,30 @@
                         []))
                       (NotPromoted)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:51-60 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { Test20239.hs:7:51-60 })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { Test20239.hs:7:51-60 })
                        (Unqual
                         {OccName: Connection}))))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:65-85 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { Test20239.hs:7:65-85 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { Test20239.hs:7:65-85 })
                      (HsAppTy
                       (NoExtField)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:65-66 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { Test20239.hs:7:65-66 })
+                                    (AnnListItem
+                                     [])
+                                    (EpaComments
+                                     [])) { Test20239.hs:7:65-66 })
                        (HsTyVar
                         (EpAnn
                          (EpaSpan { Test20239.hs:7:65-66 })
@@ -220,11 +295,21 @@
                           []))
                         (NotPromoted)
                         (L
-                         (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:65-66 })
+                         (SrcSpanAnn (EpAnn
+                                      (EpaSpan { Test20239.hs:7:65-66 })
+                                      (NameAnnTrailing
+                                       [])
+                                      (EpaComments
+                                       [])) { Test20239.hs:7:65-66 })
                          (Unqual
                           {OccName: IO}))))
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:68-85 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { Test20239.hs:7:68-85 })
+                                    (AnnListItem
+                                     [])
+                                    (EpaComments
+                                     [])) { Test20239.hs:7:68-85 })
                        (HsParTy
                         (EpAnn
                          (EpaSpan { Test20239.hs:7:68-85 })
@@ -235,15 +320,30 @@
                          (EpaComments
                           []))
                         (L
-                         (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:69-84 })
+                         (SrcSpanAnn (EpAnn
+                                      (EpaSpan { Test20239.hs:7:69-84 })
+                                      (AnnListItem
+                                       [])
+                                      (EpaComments
+                                       [])) { Test20239.hs:7:69-84 })
                          (HsAppTy
                           (NoExtField)
                           (L
-                           (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:69-81 })
+                           (SrcSpanAnn (EpAnn
+                                        (EpaSpan { Test20239.hs:7:69-81 })
+                                        (AnnListItem
+                                         [])
+                                        (EpaComments
+                                         [])) { Test20239.hs:7:69-81 })
                            (HsAppTy
                             (NoExtField)
                             (L
-                             (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:69-74 })
+                             (SrcSpanAnn (EpAnn
+                                          (EpaSpan { Test20239.hs:7:69-74 })
+                                          (AnnListItem
+                                           [])
+                                          (EpaComments
+                                           [])) { Test20239.hs:7:69-74 })
                              (HsTyVar
                               (EpAnn
                                (EpaSpan { Test20239.hs:7:69-74 })
@@ -252,11 +352,21 @@
                                 []))
                               (NotPromoted)
                               (L
-                               (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:69-74 })
+                               (SrcSpanAnn (EpAnn
+                                            (EpaSpan { Test20239.hs:7:69-74 })
+                                            (NameAnnTrailing
+                                             [])
+                                            (EpaComments
+                                             [])) { Test20239.hs:7:69-74 })
                                (Unqual
                                 {OccName: Either}))))
                             (L
-                             (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:76-81 })
+                             (SrcSpanAnn (EpAnn
+                                          (EpaSpan { Test20239.hs:7:76-81 })
+                                          (AnnListItem
+                                           [])
+                                          (EpaComments
+                                           [])) { Test20239.hs:7:76-81 })
                              (HsTyVar
                               (EpAnn
                                (EpaSpan { Test20239.hs:7:76-81 })
@@ -265,11 +375,21 @@
                                 []))
                               (NotPromoted)
                               (L
-                               (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:76-81 })
+                               (SrcSpanAnn (EpAnn
+                                            (EpaSpan { Test20239.hs:7:76-81 })
+                                            (NameAnnTrailing
+                                             [])
+                                            (EpaComments
+                                             [])) { Test20239.hs:7:76-81 })
                                (Unqual
                                 {OccName: String}))))))
                           (L
-                           (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:83-84 })
+                           (SrcSpanAnn (EpAnn
+                                        (EpaSpan { Test20239.hs:7:83-84 })
+                                        (AnnListItem
+                                         [])
+                                        (EpaComments
+                                         [])) { Test20239.hs:7:83-84 })
                            (HsTupleTy
                             (EpAnn
                              (EpaSpan { Test20239.hs:7:83-84 })
diff --git a/testsuite/tests/ghc-api/exactprint/ZeroWidthSemi.stderr b/testsuite/tests/ghc-api/exactprint/ZeroWidthSemi.stderr
index 18615d1f47e8..7764bef02033 100644
--- a/testsuite/tests/ghc-api/exactprint/ZeroWidthSemi.stderr
+++ b/testsuite/tests/ghc-api/exactprint/ZeroWidthSemi.stderr
@@ -34,7 +34,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { ZeroWidthSemi.hs:1:8-20 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { ZeroWidthSemi.hs:1:8-20 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { ZeroWidthSemi.hs:1:8-20 })
     {ModuleName: ZeroWidthSemi}))
   (Nothing)
   []
@@ -55,15 +60,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { ZeroWidthSemi.hs:6:1 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { ZeroWidthSemi.hs:6:1 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { ZeroWidthSemi.hs:6:1 })
        (Unqual
         {OccName: a}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { ZeroWidthSemi.hs:6:1-5 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { ZeroWidthSemi.hs:6:1-5 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { ZeroWidthSemi.hs:6:1-5 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { ZeroWidthSemi.hs:6:1-5 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { ZeroWidthSemi.hs:6:1-5 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { ZeroWidthSemi.hs:6:1-5 })
           (Match
            (EpAnn
             (EpaSpan { ZeroWidthSemi.hs:6:1-5 })
@@ -72,7 +96,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { ZeroWidthSemi.hs:6:1 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { ZeroWidthSemi.hs:6:1 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { ZeroWidthSemi.hs:6:1 })
              (Unqual
               {OccName: a}))
             (Prefix)
@@ -83,7 +112,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { ZeroWidthSemi.hs:6:3-5 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { ZeroWidthSemi.hs:6:3-5 })
               (GRHS
                (EpAnn
@@ -95,7 +128,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { ZeroWidthSemi.hs:6:5 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { ZeroWidthSemi.hs:6:5 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { ZeroWidthSemi.hs:6:5 })
                 (HsOverLit
                  (EpAnn
                   (EpaSpan { ZeroWidthSemi.hs:6:5 })
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/T17544.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/T17544.stderr
index e5fc4df7ef68..adc67ea6aadf 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/T17544.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/T17544.stderr
@@ -24,7 +24,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:3:8-13 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T17544.hs:3:8-13 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T17544.hs:3:8-13 })
     {ModuleName: T17544}))
   (Nothing)
   []
@@ -50,13 +55,23 @@
        (3))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:5:7-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:5:7-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:5:7-8 })
        (Unqual
         {OccName: C1}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:5:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:5:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:5:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:5:10 })
@@ -65,13 +80,23 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:5:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:5:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:5:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
       []
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:3-16 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:6:3-16 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:6:3-16 })
         (ClassOpSig
          (EpAnn
           (EpaSpan { T17544.hs:6:3-16 })
@@ -82,17 +107,32 @@
            []))
          (False)
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:3-4 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:6:3-4 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:6:3-4 })
            (Unqual
             {OccName: f1}))]
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:9-16 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:6:9-16 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:6:9-16 })
           (HsSig
            (NoExtField)
            (HsOuterImplicit
             (NoExtField))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:9-16 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:6:9-16 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:6:9-16 })
             (HsFunTy
              (EpAnn
               (EpaSpan { T17544.hs:6:9-16 })
@@ -105,7 +145,12 @@
                 (EpaSpan { T17544.hs:6:11-12 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:9 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:6:9 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:6:9 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:6:9 })
@@ -114,15 +159,34 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:9 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:6:9 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:6:9 })
                 (Unqual
                  {OccName: a}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:14-16 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:6:14-16 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:6:14-16 })
               (HsDocTy
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaDelta (SameLine 0) [])
+                []
+                (EpaComments
+                 []))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:14-16 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:6:14-16 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:6:14-16 })
                 (HsTyVar
                  (EpAnn
                   (EpaSpan { T17544.hs:6:14-16 })
@@ -131,7 +195,12 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:14-16 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T17544.hs:6:14-16 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T17544.hs:6:14-16 })
                   (Unqual
                    {OccName: Int}))))
                (L
@@ -173,13 +242,23 @@
        (3))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:9:7-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:9:7-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:9:7-8 })
        (Unqual
         {OccName: C2}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:9:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:9:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:9:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:9:10 })
@@ -188,13 +267,23 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:9:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:9:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:9:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
       []
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:3-16 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:10:3-16 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:10:3-16 })
         (ClassOpSig
          (EpAnn
           (EpaSpan { T17544.hs:10:3-16 })
@@ -205,17 +294,32 @@
            []))
          (False)
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:3-4 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:10:3-4 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:10:3-4 })
            (Unqual
             {OccName: f2}))]
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:9-16 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:10:9-16 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:10:9-16 })
           (HsSig
            (NoExtField)
            (HsOuterImplicit
             (NoExtField))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:9-16 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:10:9-16 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:10:9-16 })
             (HsFunTy
              (EpAnn
               (EpaSpan { T17544.hs:10:9-16 })
@@ -228,7 +332,12 @@
                 (EpaSpan { T17544.hs:10:11-12 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:9 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:10:9 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:10:9 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:10:9 })
@@ -237,11 +346,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:9 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:10:9 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:10:9 })
                 (Unqual
                  {OccName: a}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:14-16 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:10:14-16 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:10:14-16 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:10:14-16 })
@@ -250,7 +369,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:14-16 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:10:14-16 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:10:14-16 })
                 (Unqual
                  {OccName: Int}))))))))))]
       {Bag(LocatedA (HsBind GhcPs)):
@@ -258,7 +382,12 @@
       []
       []
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:11:3-20 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:11:3-20 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:11:3-20 })
         (DocCommentPrev
          (L
           { T17544.hs:11:3-20 }
@@ -294,13 +423,23 @@
        (3))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:13:7-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:13:7-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:13:7-8 })
        (Unqual
         {OccName: C3}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:13:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:13:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:13:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:13:10 })
@@ -309,13 +448,23 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:13:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:13:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:13:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
       []
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:3-16 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:14:3-16 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:14:3-16 })
         (ClassOpSig
          (EpAnn
           (EpaSpan { T17544.hs:14:3-16 })
@@ -326,17 +475,32 @@
            []))
          (False)
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:3-4 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:14:3-4 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:14:3-4 })
            (Unqual
             {OccName: f3}))]
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:9-16 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:14:9-16 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:14:9-16 })
           (HsSig
            (NoExtField)
            (HsOuterImplicit
             (NoExtField))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:9-16 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:14:9-16 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:14:9-16 })
             (HsFunTy
              (EpAnn
               (EpaSpan { T17544.hs:14:9-16 })
@@ -349,7 +513,12 @@
                 (EpaSpan { T17544.hs:14:11-12 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:9 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:14:9 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:14:9 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:14:9 })
@@ -358,11 +527,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:9 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:14:9 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:14:9 })
                 (Unqual
                  {OccName: a}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:14-16 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:14:14-16 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:14:14-16 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:14:14-16 })
@@ -371,7 +550,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:14-16 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:14:14-16 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:14:14-16 })
                 (Unqual
                  {OccName: Int}))))))))))]
       {Bag(LocatedA (HsBind GhcPs)):
@@ -380,7 +564,12 @@
       []
       [])))
   ,(L
-    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:15:1-18 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T17544.hs:15:1-18 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T17544.hs:15:1-18 })
     (DocD
      (NoExtField)
      (DocCommentPrev
@@ -418,13 +607,23 @@
        (3))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:17:7-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:17:7-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:17:7-8 })
        (Unqual
         {OccName: C4}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:17:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:17:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:17:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:17:10 })
@@ -433,13 +632,23 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:17:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:17:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:17:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
       []
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:3-16 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:18:3-16 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:18:3-16 })
         (ClassOpSig
          (EpAnn
           (EpaSpan { T17544.hs:18:3-16 })
@@ -450,17 +659,32 @@
            []))
          (False)
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:3-4 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:18:3-4 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:18:3-4 })
            (Unqual
             {OccName: f4}))]
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:9-16 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:18:9-16 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:18:9-16 })
           (HsSig
            (NoExtField)
            (HsOuterImplicit
             (NoExtField))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:9-16 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:18:9-16 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:18:9-16 })
             (HsFunTy
              (EpAnn
               (EpaSpan { T17544.hs:18:9-16 })
@@ -473,7 +697,12 @@
                 (EpaSpan { T17544.hs:18:11-12 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:9 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:18:9 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:18:9 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:18:9 })
@@ -482,11 +711,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:9 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:18:9 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:18:9 })
                 (Unqual
                  {OccName: a}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:14-16 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:18:14-16 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:18:14-16 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:18:14-16 })
@@ -495,11 +734,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:14-16 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:18:14-16 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:18:14-16 })
                 (Unqual
                  {OccName: Int}))))))))))
       ,(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:3-16 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:20:3-16 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:20:3-16 })
         (ClassOpSig
          (EpAnn
           (EpaSpan { T17544.hs:20:3-16 })
@@ -510,17 +759,32 @@
            []))
          (False)
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:3-4 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:20:3-4 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:20:3-4 })
            (Unqual
             {OccName: g4}))]
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:9-16 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:20:9-16 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:20:9-16 })
           (HsSig
            (NoExtField)
            (HsOuterImplicit
             (NoExtField))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:9-16 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:20:9-16 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:20:9-16 })
             (HsFunTy
              (EpAnn
               (EpaSpan { T17544.hs:20:9-16 })
@@ -533,7 +797,12 @@
                 (EpaSpan { T17544.hs:20:11-12 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:9 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:20:9 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:20:9 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:20:9 })
@@ -542,11 +811,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:9 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:20:9 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:20:9 })
                 (Unqual
                  {OccName: a}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:14-16 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:20:14-16 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:20:14-16 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:20:14-16 })
@@ -555,7 +834,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:14-16 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:20:14-16 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:20:14-16 })
                 (Unqual
                  {OccName: Int}))))))))))]
       {Bag(LocatedA (HsBind GhcPs)):
@@ -594,13 +878,23 @@
         (HsTok)))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:7-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:22:7-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:22:7-8 })
        (Unqual
         {OccName: C5}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:22:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:22:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:22:10 })
@@ -609,7 +903,12 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:22:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:22:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
@@ -618,7 +917,12 @@
       {Bag(LocatedA (HsBind GhcPs)):
        []}
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:20-28 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:22:20-28 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:22:20-28 })
         (FamilyDecl
          (EpAnn
           (EpaSpan { T17544.hs:22:20-28 })
@@ -628,13 +932,23 @@
          (DataFamily)
          (NotTopLevel)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:25-26 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:22:25-26 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:22:25-26 })
           (Unqual
            {OccName: D5}))
          (HsQTvs
           (NoExtField)
           [(L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:28 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:22:28 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:22:28 })
             (UserTyVar
              (EpAnn
               (EpaSpan { T17544.hs:22:28 })
@@ -643,13 +957,22 @@
                []))
              (HsBndrRequired)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:28 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:22:28 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:22:28 })
               (Unqual
                {OccName: a}))))])
          (Prefix)
          (L
           (SrcSpanAnn
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaSpan { <no location info> })
+            (NoEpAnns)
+            (EpaComments
+             []))
            { <no location info> })
           (NoSig
            (NoExtField)))
@@ -678,17 +1001,32 @@
           []))
         (NoAnnSortKey))
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:23:10-15 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:23:10-15 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:23:10-15 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:23:10-15 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:23:10-15 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:23:10-15 })
           (HsAppTy
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:23:10-11 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:23:10-11 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:23:10-11 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:23:10-11 })
@@ -697,11 +1035,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:23:10-11 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:23:10-11 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:23:10-11 })
               (Unqual
                {OccName: C5}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:23:13-15 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:23:13-15 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:23:13-15 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:23:13-15 })
@@ -710,7 +1058,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:23:13-15 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:23:13-15 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:23:13-15 })
               (Unqual
                {OccName: Int}))))))))
        {Bag(LocatedA (HsBind GhcPs)):
@@ -718,7 +1071,12 @@
        []
        []
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:(24,3)-(25,18) })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:(24,3)-(25,18) })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:(24,3)-(25,18) })
          (DataFamInstDecl
           (FamEqn
            (EpAnn
@@ -728,14 +1086,24 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:24:8-9 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:24:8-9 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:24:8-9 })
             (Unqual
              {OccName: D5}))
            (HsOuterImplicit
             (NoExtField))
            [(HsValArg
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:24:11-13 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:24:11-13 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:24:11-13 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:24:11-13 })
@@ -744,7 +1112,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:24:11-13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:24:11-13 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:24:11-13 })
                 (Unqual
                  {OccName: Int})))))]
            (Prefix)
@@ -756,7 +1129,12 @@
             (DataTypeCons
              (False)
              [(L
-               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:5-18 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { T17544.hs:25:5-18 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { T17544.hs:25:5-18 })
                (ConDeclGADT
                 (EpAnn
                  (EpaSpan { T17544.hs:25:5-18 })
@@ -765,7 +1143,12 @@
                   []))
                 (:|
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:5-8 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T17544.hs:25:5-8 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T17544.hs:25:5-8 })
                   (Unqual
                    {OccName: MkD5}))
                  [])
@@ -774,18 +1157,33 @@
                   (EpaSpan { T17544.hs:25:10-11 }))
                  (HsNormalTok))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:25:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:25:13-18 })
                  (HsOuterImplicit
                   (NoExtField)))
                 (Nothing)
                 (PrefixConGADT
                  [])
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:25:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:25:13-18 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:13-14 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:25:13-14 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:25:13-14 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:25:13-14 })
@@ -794,11 +1192,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:13-14 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:25:13-14 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:25:13-14 })
                      (Unqual
                       {OccName: D5}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:16-18 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:25:16-18 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:25:16-18 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:25:16-18 })
@@ -807,7 +1215,12 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:16-18 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:25:16-18 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:25:16-18 })
                      (Unqual
                       {OccName: Int}))))))
                 (Nothing)))])
@@ -844,13 +1257,23 @@
         (HsTok)))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:7-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:28:7-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:28:7-8 })
        (Unqual
         {OccName: C6}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:28:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:28:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:28:10 })
@@ -859,7 +1282,12 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:28:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:28:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
@@ -868,7 +1296,12 @@
       {Bag(LocatedA (HsBind GhcPs)):
        []}
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:20-28 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:28:20-28 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:28:20-28 })
         (FamilyDecl
          (EpAnn
           (EpaSpan { T17544.hs:28:20-28 })
@@ -878,13 +1311,23 @@
          (DataFamily)
          (NotTopLevel)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:25-26 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:28:25-26 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:28:25-26 })
           (Unqual
            {OccName: D6}))
          (HsQTvs
           (NoExtField)
           [(L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:28 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:28:28 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:28:28 })
             (UserTyVar
              (EpAnn
               (EpaSpan { T17544.hs:28:28 })
@@ -893,13 +1336,22 @@
                []))
              (HsBndrRequired)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:28 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:28:28 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:28:28 })
               (Unqual
                {OccName: a}))))])
          (Prefix)
          (L
           (SrcSpanAnn
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaSpan { <no location info> })
+            (NoEpAnns)
+            (EpaComments
+             []))
            { <no location info> })
           (NoSig
            (NoExtField)))
@@ -928,17 +1380,32 @@
           []))
         (NoAnnSortKey))
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:29:10-15 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:29:10-15 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:29:10-15 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:29:10-15 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:29:10-15 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:29:10-15 })
           (HsAppTy
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:29:10-11 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:29:10-11 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:29:10-11 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:29:10-11 })
@@ -947,11 +1414,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:29:10-11 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:29:10-11 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:29:10-11 })
               (Unqual
                {OccName: C6}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:29:13-15 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:29:13-15 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:29:13-15 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:29:13-15 })
@@ -960,7 +1437,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:29:13-15 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:29:13-15 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:29:13-15 })
               (Unqual
                {OccName: Int}))))))))
        {Bag(LocatedA (HsBind GhcPs)):
@@ -968,7 +1450,12 @@
        []
        []
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:(30,3)-(31,18) })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:(30,3)-(31,18) })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:(30,3)-(31,18) })
          (DataFamInstDecl
           (FamEqn
            (EpAnn
@@ -978,14 +1465,24 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:30:8-9 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:30:8-9 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:30:8-9 })
             (Unqual
              {OccName: D6}))
            (HsOuterImplicit
             (NoExtField))
            [(HsValArg
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:30:11-13 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:30:11-13 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:30:11-13 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:30:11-13 })
@@ -994,7 +1491,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:30:11-13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:30:11-13 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:30:11-13 })
                 (Unqual
                  {OccName: Int})))))]
            (Prefix)
@@ -1006,7 +1508,12 @@
             (DataTypeCons
              (False)
              [(L
-               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:5-18 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { T17544.hs:31:5-18 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { T17544.hs:31:5-18 })
                (ConDeclGADT
                 (EpAnn
                  (EpaSpan { T17544.hs:31:5-18 })
@@ -1015,7 +1522,12 @@
                   []))
                 (:|
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:5-8 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T17544.hs:31:5-8 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T17544.hs:31:5-8 })
                   (Unqual
                    {OccName: MkD6}))
                  [])
@@ -1024,18 +1536,33 @@
                   (EpaSpan { T17544.hs:31:10-11 }))
                  (HsNormalTok))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:31:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:31:13-18 })
                  (HsOuterImplicit
                   (NoExtField)))
                 (Nothing)
                 (PrefixConGADT
                  [])
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:31:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:31:13-18 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:13-14 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:31:13-14 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:31:13-14 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:31:13-14 })
@@ -1044,11 +1571,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:13-14 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:31:13-14 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:31:13-14 })
                      (Unqual
                       {OccName: D6}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:16-18 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:31:16-18 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:31:16-18 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:31:16-18 })
@@ -1057,7 +1594,12 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:16-18 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:31:16-18 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:31:16-18 })
                      (Unqual
                       {OccName: Int}))))))
                 (Nothing)))])
@@ -1094,13 +1636,23 @@
         (HsTok)))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:7-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:34:7-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:34:7-8 })
        (Unqual
         {OccName: C7}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:34:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:34:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:34:10 })
@@ -1109,7 +1661,12 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:34:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:34:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
@@ -1118,7 +1675,12 @@
       {Bag(LocatedA (HsBind GhcPs)):
        []}
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:20-28 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:34:20-28 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:34:20-28 })
         (FamilyDecl
          (EpAnn
           (EpaSpan { T17544.hs:34:20-28 })
@@ -1128,13 +1690,23 @@
          (DataFamily)
          (NotTopLevel)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:25-26 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:34:25-26 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:34:25-26 })
           (Unqual
            {OccName: D7}))
          (HsQTvs
           (NoExtField)
           [(L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:28 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:34:28 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:34:28 })
             (UserTyVar
              (EpAnn
               (EpaSpan { T17544.hs:34:28 })
@@ -1143,13 +1715,22 @@
                []))
              (HsBndrRequired)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:28 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:34:28 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:34:28 })
               (Unqual
                {OccName: a}))))])
          (Prefix)
          (L
           (SrcSpanAnn
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaSpan { <no location info> })
+            (NoEpAnns)
+            (EpaComments
+             []))
            { <no location info> })
           (NoSig
            (NoExtField)))
@@ -1178,17 +1759,32 @@
           []))
         (NoAnnSortKey))
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:35:10-15 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:35:10-15 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:35:10-15 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:35:10-15 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:35:10-15 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:35:10-15 })
           (HsAppTy
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:35:10-11 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:35:10-11 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:35:10-11 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:35:10-11 })
@@ -1197,11 +1793,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:35:10-11 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:35:10-11 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:35:10-11 })
               (Unqual
                {OccName: C7}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:35:13-15 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:35:13-15 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:35:13-15 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:35:13-15 })
@@ -1210,7 +1816,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:35:13-15 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:35:13-15 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:35:13-15 })
               (Unqual
                {OccName: Int}))))))))
        {Bag(LocatedA (HsBind GhcPs)):
@@ -1218,7 +1829,12 @@
        []
        []
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:(36,3)-(37,18) })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:(36,3)-(37,18) })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:(36,3)-(37,18) })
          (DataFamInstDecl
           (FamEqn
            (EpAnn
@@ -1228,14 +1844,24 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:36:8-9 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:36:8-9 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:36:8-9 })
             (Unqual
              {OccName: D7}))
            (HsOuterImplicit
             (NoExtField))
            [(HsValArg
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:36:11-13 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:36:11-13 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:36:11-13 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:36:11-13 })
@@ -1244,7 +1870,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:36:11-13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:36:11-13 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:36:11-13 })
                 (Unqual
                  {OccName: Int})))))]
            (Prefix)
@@ -1256,7 +1887,12 @@
             (DataTypeCons
              (False)
              [(L
-               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:5-18 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { T17544.hs:37:5-18 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { T17544.hs:37:5-18 })
                (ConDeclGADT
                 (EpAnn
                  (EpaSpan { T17544.hs:37:5-18 })
@@ -1265,7 +1901,12 @@
                   []))
                 (:|
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:5-8 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T17544.hs:37:5-8 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T17544.hs:37:5-8 })
                   (Unqual
                    {OccName: MkD7}))
                  [])
@@ -1274,18 +1915,33 @@
                   (EpaSpan { T17544.hs:37:10-11 }))
                  (HsNormalTok))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:37:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:37:13-18 })
                  (HsOuterImplicit
                   (NoExtField)))
                 (Nothing)
                 (PrefixConGADT
                  [])
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:37:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:37:13-18 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:13-14 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:37:13-14 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:37:13-14 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:37:13-14 })
@@ -1294,11 +1950,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:13-14 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:37:13-14 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:37:13-14 })
                      (Unqual
                       {OccName: D7}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:16-18 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:37:16-18 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:37:16-18 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:37:16-18 })
@@ -1307,7 +1973,12 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:16-18 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:37:16-18 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:37:16-18 })
                      (Unqual
                       {OccName: Int}))))))
                 (Nothing)))])
@@ -1344,13 +2015,23 @@
         (HsTok)))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:7-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:40:7-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:40:7-8 })
        (Unqual
         {OccName: C8}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:40:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:40:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:40:10 })
@@ -1359,7 +2040,12 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:40:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:40:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
@@ -1368,7 +2054,12 @@
       {Bag(LocatedA (HsBind GhcPs)):
        []}
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:20-28 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:40:20-28 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:40:20-28 })
         (FamilyDecl
          (EpAnn
           (EpaSpan { T17544.hs:40:20-28 })
@@ -1378,13 +2069,23 @@
          (DataFamily)
          (NotTopLevel)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:25-26 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:40:25-26 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:40:25-26 })
           (Unqual
            {OccName: D8}))
          (HsQTvs
           (NoExtField)
           [(L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:28 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:40:28 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:40:28 })
             (UserTyVar
              (EpAnn
               (EpaSpan { T17544.hs:40:28 })
@@ -1393,13 +2094,22 @@
                []))
              (HsBndrRequired)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:28 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:40:28 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:40:28 })
               (Unqual
                {OccName: a}))))])
          (Prefix)
          (L
           (SrcSpanAnn
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaSpan { <no location info> })
+            (NoEpAnns)
+            (EpaComments
+             []))
            { <no location info> })
           (NoSig
            (NoExtField)))
@@ -1428,17 +2138,32 @@
           []))
         (NoAnnSortKey))
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:41:10-15 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:41:10-15 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:41:10-15 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:41:10-15 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:41:10-15 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:41:10-15 })
           (HsAppTy
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:41:10-11 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:41:10-11 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:41:10-11 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:41:10-11 })
@@ -1447,11 +2172,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:41:10-11 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:41:10-11 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:41:10-11 })
               (Unqual
                {OccName: C8}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:41:13-15 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:41:13-15 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:41:13-15 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:41:13-15 })
@@ -1460,7 +2195,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:41:13-15 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:41:13-15 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:41:13-15 })
               (Unqual
                {OccName: Int}))))))))
        {Bag(LocatedA (HsBind GhcPs)):
@@ -1468,7 +2208,12 @@
        []
        []
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:(42,3)-(43,18) })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:(42,3)-(43,18) })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:(42,3)-(43,18) })
          (DataFamInstDecl
           (FamEqn
            (EpAnn
@@ -1478,14 +2223,24 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:42:8-9 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:42:8-9 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:42:8-9 })
             (Unqual
              {OccName: D8}))
            (HsOuterImplicit
             (NoExtField))
            [(HsValArg
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:42:11-13 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:42:11-13 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:42:11-13 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:42:11-13 })
@@ -1494,7 +2249,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:42:11-13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:42:11-13 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:42:11-13 })
                 (Unqual
                  {OccName: Int})))))]
            (Prefix)
@@ -1506,7 +2266,12 @@
             (DataTypeCons
              (False)
              [(L
-               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:5-18 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { T17544.hs:43:5-18 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { T17544.hs:43:5-18 })
                (ConDeclGADT
                 (EpAnn
                  (EpaSpan { T17544.hs:43:5-18 })
@@ -1515,7 +2280,12 @@
                   []))
                 (:|
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:5-8 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T17544.hs:43:5-8 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T17544.hs:43:5-8 })
                   (Unqual
                    {OccName: MkD8}))
                  [])
@@ -1524,18 +2294,33 @@
                   (EpaSpan { T17544.hs:43:10-11 }))
                  (HsNormalTok))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:43:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:43:13-18 })
                  (HsOuterImplicit
                   (NoExtField)))
                 (Nothing)
                 (PrefixConGADT
                  [])
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:43:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:43:13-18 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:13-14 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:43:13-14 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:43:13-14 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:43:13-14 })
@@ -1544,11 +2329,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:13-14 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:43:13-14 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:43:13-14 })
                      (Unqual
                       {OccName: D8}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:16-18 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:43:16-18 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:43:16-18 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:43:16-18 })
@@ -1557,7 +2352,12 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:16-18 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:43:16-18 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:43:16-18 })
                      (Unqual
                       {OccName: Int}))))))
                 (Nothing)))])
@@ -1594,13 +2394,23 @@
         (HsTok)))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:7-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:46:7-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:46:7-8 })
        (Unqual
         {OccName: C9}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:46:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:46:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:46:10 })
@@ -1609,7 +2419,12 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:46:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:46:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
@@ -1618,7 +2433,12 @@
       {Bag(LocatedA (HsBind GhcPs)):
        []}
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:20-28 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:46:20-28 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:46:20-28 })
         (FamilyDecl
          (EpAnn
           (EpaSpan { T17544.hs:46:20-28 })
@@ -1628,13 +2448,23 @@
          (DataFamily)
          (NotTopLevel)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:25-26 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:46:25-26 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:46:25-26 })
           (Unqual
            {OccName: D9}))
          (HsQTvs
           (NoExtField)
           [(L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:28 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:46:28 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:46:28 })
             (UserTyVar
              (EpAnn
               (EpaSpan { T17544.hs:46:28 })
@@ -1643,13 +2473,22 @@
                []))
              (HsBndrRequired)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:28 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:46:28 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:46:28 })
               (Unqual
                {OccName: a}))))])
          (Prefix)
          (L
           (SrcSpanAnn
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaSpan { <no location info> })
+            (NoEpAnns)
+            (EpaComments
+             []))
            { <no location info> })
           (NoSig
            (NoExtField)))
@@ -1678,17 +2517,32 @@
           []))
         (NoAnnSortKey))
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:47:10-15 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:47:10-15 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:47:10-15 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:47:10-15 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:47:10-15 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:47:10-15 })
           (HsAppTy
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:47:10-11 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:47:10-11 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:47:10-11 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:47:10-11 })
@@ -1697,11 +2551,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:47:10-11 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:47:10-11 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:47:10-11 })
               (Unqual
                {OccName: C9}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:47:13-15 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:47:13-15 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:47:13-15 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:47:13-15 })
@@ -1710,7 +2574,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:47:13-15 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:47:13-15 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:47:13-15 })
               (Unqual
                {OccName: Int}))))))))
        {Bag(LocatedA (HsBind GhcPs)):
@@ -1718,7 +2587,12 @@
        []
        []
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:(48,3)-(49,18) })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:(48,3)-(49,18) })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:(48,3)-(49,18) })
          (DataFamInstDecl
           (FamEqn
            (EpAnn
@@ -1728,14 +2602,24 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:48:8-9 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:48:8-9 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:48:8-9 })
             (Unqual
              {OccName: D9}))
            (HsOuterImplicit
             (NoExtField))
            [(HsValArg
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:48:11-13 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:48:11-13 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:48:11-13 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:48:11-13 })
@@ -1744,7 +2628,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:48:11-13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:48:11-13 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:48:11-13 })
                 (Unqual
                  {OccName: Int})))))]
            (Prefix)
@@ -1756,7 +2645,12 @@
             (DataTypeCons
              (False)
              [(L
-               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:5-18 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { T17544.hs:49:5-18 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { T17544.hs:49:5-18 })
                (ConDeclGADT
                 (EpAnn
                  (EpaSpan { T17544.hs:49:5-18 })
@@ -1765,7 +2659,12 @@
                   []))
                 (:|
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:5-8 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T17544.hs:49:5-8 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T17544.hs:49:5-8 })
                   (Unqual
                    {OccName: MkD9}))
                  [])
@@ -1774,18 +2673,33 @@
                   (EpaSpan { T17544.hs:49:10-11 }))
                  (HsNormalTok))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:49:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:49:13-18 })
                  (HsOuterImplicit
                   (NoExtField)))
                 (Nothing)
                 (PrefixConGADT
                  [])
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:13-18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:49:13-18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:49:13-18 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:13-14 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:49:13-14 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:49:13-14 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:49:13-14 })
@@ -1794,11 +2708,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:13-14 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:49:13-14 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:49:13-14 })
                      (Unqual
                       {OccName: D9}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:16-18 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:49:16-18 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:49:16-18 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:49:16-18 })
@@ -1807,7 +2731,12 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:16-18 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:49:16-18 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:49:16-18 })
                      (Unqual
                       {OccName: Int}))))))
                 (Nothing)))])
@@ -1844,13 +2773,23 @@
         (HsTok)))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:7-9 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544.hs:52:7-9 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544.hs:52:7-9 })
        (Unqual
         {OccName: C10}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:11 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:52:11 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:52:11 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544.hs:52:11 })
@@ -1859,7 +2798,12 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:11 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544.hs:52:11 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544.hs:52:11 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
@@ -1868,7 +2812,12 @@
       {Bag(LocatedA (HsBind GhcPs)):
        []}
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:21-30 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:52:21-30 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:52:21-30 })
         (FamilyDecl
          (EpAnn
           (EpaSpan { T17544.hs:52:21-30 })
@@ -1878,13 +2827,23 @@
          (DataFamily)
          (NotTopLevel)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:26-28 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:52:26-28 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:52:26-28 })
           (Unqual
            {OccName: D10}))
          (HsQTvs
           (NoExtField)
           [(L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:30 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:52:30 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:52:30 })
             (UserTyVar
              (EpAnn
               (EpaSpan { T17544.hs:52:30 })
@@ -1893,13 +2852,22 @@
                []))
              (HsBndrRequired)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:30 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:52:30 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:52:30 })
               (Unqual
                {OccName: a}))))])
          (Prefix)
          (L
           (SrcSpanAnn
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaSpan { <no location info> })
+            (NoEpAnns)
+            (EpaComments
+             []))
            { <no location info> })
           (NoSig
            (NoExtField)))
@@ -1928,17 +2896,32 @@
           []))
         (NoAnnSortKey))
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:53:10-16 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544.hs:53:10-16 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544.hs:53:10-16 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:53:10-16 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544.hs:53:10-16 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544.hs:53:10-16 })
           (HsAppTy
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:53:10-12 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:53:10-12 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:53:10-12 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:53:10-12 })
@@ -1947,11 +2930,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:53:10-12 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:53:10-12 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:53:10-12 })
               (Unqual
                {OccName: C10}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:53:14-16 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:53:14-16 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:53:14-16 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544.hs:53:14-16 })
@@ -1960,7 +2953,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:53:14-16 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:53:14-16 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:53:14-16 })
               (Unqual
                {OccName: Int}))))))))
        {Bag(LocatedA (HsBind GhcPs)):
@@ -1968,7 +2966,12 @@
        []
        []
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:(54,3)-(55,20) })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544.hs:(54,3)-(55,20) })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544.hs:(54,3)-(55,20) })
          (DataFamInstDecl
           (FamEqn
            (EpAnn
@@ -1978,14 +2981,24 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:54:8-10 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544.hs:54:8-10 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { T17544.hs:54:8-10 })
             (Unqual
              {OccName: D10}))
            (HsOuterImplicit
             (NoExtField))
            [(HsValArg
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:54:12-14 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544.hs:54:12-14 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T17544.hs:54:12-14 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T17544.hs:54:12-14 })
@@ -1994,7 +3007,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:54:12-14 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T17544.hs:54:12-14 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T17544.hs:54:12-14 })
                 (Unqual
                  {OccName: Int})))))]
            (Prefix)
@@ -2006,7 +3024,12 @@
             (DataTypeCons
              (False)
              [(L
-               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:5-20 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { T17544.hs:55:5-20 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { T17544.hs:55:5-20 })
                (ConDeclGADT
                 (EpAnn
                  (EpaSpan { T17544.hs:55:5-20 })
@@ -2015,7 +3038,12 @@
                   []))
                 (:|
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:5-9 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T17544.hs:55:5-9 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T17544.hs:55:5-9 })
                   (Unqual
                    {OccName: MkD10}))
                  [])
@@ -2024,18 +3052,33 @@
                   (EpaSpan { T17544.hs:55:11-12 }))
                  (HsNormalTok))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:14-20 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:55:14-20 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:55:14-20 })
                  (HsOuterImplicit
                   (NoExtField)))
                 (Nothing)
                 (PrefixConGADT
                  [])
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:14-20 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T17544.hs:55:14-20 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T17544.hs:55:14-20 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:14-16 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:55:14-16 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:55:14-16 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:55:14-16 })
@@ -2044,11 +3087,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:14-16 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:55:14-16 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:55:14-16 })
                      (Unqual
                       {OccName: D10}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:18-20 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T17544.hs:55:18-20 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T17544.hs:55:18-20 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T17544.hs:55:18-20 })
@@ -2057,14 +3110,24 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:18-20 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T17544.hs:55:18-20 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T17544.hs:55:18-20 })
                      (Unqual
                       {OccName: Int}))))))
                 (Nothing)))])
             []))))]
        (Nothing)))))
   ,(L
-    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:56:1-38 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T17544.hs:56:1-38 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T17544.hs:56:1-38 })
     (DocD
      (NoExtField)
      (DocCommentPrev
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/T17544_kw.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/T17544_kw.stderr
index b2cf28ea9ada..b73efbb948fd 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/T17544_kw.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/T17544_kw.stderr
@@ -36,7 +36,12 @@
       []))))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:13:3-11 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T17544_kw.hs:13:3-11 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T17544_kw.hs:13:3-11 })
     {ModuleName: T17544_kw}))
   (Nothing)
   []
@@ -57,7 +62,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:15:6-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544_kw.hs:15:6-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544_kw.hs:15:6-8 })
        (Unqual
         {OccName: Foo}))
       (HsQTvs
@@ -72,7 +82,12 @@
        (DataTypeCons
         (False)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:16:9-20 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544_kw.hs:16:9-20 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544_kw.hs:16:9-20 })
           (ConDeclGADT
            (EpAnn
             (EpaSpan { T17544_kw.hs:16:9-20 })
@@ -81,7 +96,12 @@
              []))
            (:|
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:16:9-13 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T17544_kw.hs:16:9-13 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T17544_kw.hs:16:9-13 })
              (Unqual
               {OccName: MkFoo}))
             [])
@@ -90,14 +110,24 @@
              (EpaSpan { T17544_kw.hs:16:15-16 }))
             (HsNormalTok))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:16:18-20 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544_kw.hs:16:18-20 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544_kw.hs:16:18-20 })
             (HsOuterImplicit
              (NoExtField)))
            (Nothing)
            (PrefixConGADT
             [])
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:16:18-20 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544_kw.hs:16:18-20 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544_kw.hs:16:18-20 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544_kw.hs:16:18-20 })
@@ -106,7 +136,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:16:18-20 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544_kw.hs:16:18-20 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544_kw.hs:16:18-20 })
               (Unqual
                {OccName: Foo}))))
            (Just
@@ -140,7 +175,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:18:9-11 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544_kw.hs:18:9-11 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544_kw.hs:18:9-11 })
        (Unqual
         {OccName: Bar}))
       (HsQTvs
@@ -154,7 +194,12 @@
        (Nothing)
        (NewTypeCon
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:19:9-26 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544_kw.hs:19:9-26 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544_kw.hs:19:9-26 })
          (ConDeclGADT
           (EpAnn
            (EpaSpan { T17544_kw.hs:19:9-26 })
@@ -163,7 +208,12 @@
             []))
           (:|
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:19:9-13 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544_kw.hs:19:9-13 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { T17544_kw.hs:19:9-13 })
             (Unqual
              {OccName: MkBar}))
            [])
@@ -172,7 +222,12 @@
             (EpaSpan { T17544_kw.hs:19:15-16 }))
            (HsNormalTok))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:19:18-26 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544_kw.hs:19:18-26 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T17544_kw.hs:19:18-26 })
            (HsOuterImplicit
             (NoExtField)))
           (Nothing)
@@ -202,7 +257,12 @@
                (HsBoxedOrConstraintTuple)
                [])))])
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:19:24-26 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544_kw.hs:19:24-26 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T17544_kw.hs:19:24-26 })
            (HsTyVar
             (EpAnn
              (EpaSpan { T17544_kw.hs:19:24-26 })
@@ -211,7 +271,12 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:19:24-26 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T17544_kw.hs:19:24-26 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T17544_kw.hs:19:24-26 })
              (Unqual
               {OccName: Bar}))))
           (Just
@@ -250,13 +315,23 @@
        (5))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:21:7-9 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T17544_kw.hs:21:7-9 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T17544_kw.hs:21:7-9 })
        (Unqual
         {OccName: Cls}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:21:11 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T17544_kw.hs:21:11 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T17544_kw.hs:21:11 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T17544_kw.hs:21:11 })
@@ -265,13 +340,23 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:21:11 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544_kw.hs:21:11 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544_kw.hs:21:11 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
       []
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:24:5-18 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544_kw.hs:24:5-18 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544_kw.hs:24:5-18 })
         (ClassOpSig
          (EpAnn
           (EpaSpan { T17544_kw.hs:24:5-18 })
@@ -282,17 +367,32 @@
            []))
          (False)
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:24:5-13 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T17544_kw.hs:24:5-13 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T17544_kw.hs:24:5-13 })
            (Unqual
             {OccName: clsmethod}))]
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:24:18 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T17544_kw.hs:24:18 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T17544_kw.hs:24:18 })
           (HsSig
            (NoExtField)
            (HsOuterImplicit
             (NoExtField))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:24:18 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T17544_kw.hs:24:18 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T17544_kw.hs:24:18 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T17544_kw.hs:24:18 })
@@ -301,7 +401,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:24:18 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T17544_kw.hs:24:18 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T17544_kw.hs:24:18 })
               (Unqual
                {OccName: a}))))))))]
       {Bag(LocatedA (HsBind GhcPs)):
@@ -309,7 +414,12 @@
       []
       []
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:22:5-34 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T17544_kw.hs:22:5-34 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T17544_kw.hs:22:5-34 })
         (DocCommentNext
          (L
           { T17544_kw.hs:22:5-34 }
diff --git a/testsuite/tests/module/mod185.stderr b/testsuite/tests/module/mod185.stderr
index 27f06996d33a..faa8482a1749 100644
--- a/testsuite/tests/module/mod185.stderr
+++ b/testsuite/tests/module/mod185.stderr
@@ -24,7 +24,12 @@
   (Nothing)
   (Nothing)
   [(L
-    (SrcSpanAnn (EpAnnNotUsed) { mod185.hs:3:1-24 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { mod185.hs:3:1-24 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { mod185.hs:3:1-24 })
     (ImportDecl
      (XImportDeclPass
       (EpAnn
@@ -42,7 +47,12 @@
       (NoSourceText)
       (False))
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { mod185.hs:3:8-14 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { mod185.hs:3:8-14 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { mod185.hs:3:8-14 })
       {ModuleName: Prelude})
      (NoRawPkgQual)
      (NotBoot)
@@ -62,15 +72,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { mod185.hs:5:1-4 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { mod185.hs:5:1-4 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { mod185.hs:5:1-4 })
        (Unqual
         {OccName: main}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { mod185.hs:5:1-24 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { mod185.hs:5:1-24 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { mod185.hs:5:1-24 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { mod185.hs:5:1-24 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { mod185.hs:5:1-24 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { mod185.hs:5:1-24 })
           (Match
            (EpAnn
             (EpaSpan { mod185.hs:5:1-24 })
@@ -79,7 +108,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { mod185.hs:5:1-4 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { mod185.hs:5:1-4 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { mod185.hs:5:1-4 })
              (Unqual
               {OccName: main}))
             (Prefix)
@@ -90,7 +124,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { mod185.hs:5:6-24 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { mod185.hs:5:6-24 })
               (GRHS
                (EpAnn
@@ -102,11 +140,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { mod185.hs:5:8-24 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { mod185.hs:5:8-24 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { mod185.hs:5:8-24 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { mod185.hs:5:8-24 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { mod185.hs:5:8-24 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { mod185.hs:5:8-24 })
                   (Qual
                    {ModuleName: Prelude}
                    {OccName: undefined}))))))]
diff --git a/testsuite/tests/parser/should_compile/DumpParsedAst.stderr b/testsuite/tests/parser/should_compile/DumpParsedAst.stderr
index 47433ad3b810..866776643b6b 100644
--- a/testsuite/tests/parser/should_compile/DumpParsedAst.stderr
+++ b/testsuite/tests/parser/should_compile/DumpParsedAst.stderr
@@ -24,11 +24,21 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:4:8-20 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { DumpParsedAst.hs:4:8-20 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { DumpParsedAst.hs:4:8-20 })
     {ModuleName: DumpParsedAst}))
   (Nothing)
   [(L
-    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:5:1-16 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { DumpParsedAst.hs:5:1-16 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { DumpParsedAst.hs:5:1-16 })
     (ImportDecl
      (XImportDeclPass
       (EpAnn
@@ -45,7 +55,12 @@
       (NoSourceText)
       (False))
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:5:8-16 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { DumpParsedAst.hs:5:8-16 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { DumpParsedAst.hs:5:8-16 })
       {ModuleName: Data.Kind})
      (NoRawPkgQual)
      (NotBoot)
@@ -70,7 +85,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:7:6-10 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAst.hs:7:6-10 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAst.hs:7:6-10 })
        (Unqual
         {OccName: Peano}))
       (HsQTvs
@@ -99,7 +119,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:7:14-17 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:7:14-17 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:7:14-17 })
             (Unqual
              {OccName: Zero}))
            (False)
@@ -110,7 +135,12 @@
             [])
            (Nothing)))
         ,(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:7:21-30 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAst.hs:7:21-30 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAst.hs:7:21-30 })
           (ConDeclH98
            (EpAnn
             (EpaSpan { DumpParsedAst.hs:7:21-30 })
@@ -118,7 +148,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:7:21-24 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:7:21-24 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:7:21-24 })
             (Unqual
              {OccName: Succ}))
            (False)
@@ -136,7 +171,12 @@
                  (NoTokenLoc)
                  (HsNormalTok))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:7:26-30 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:7:26-30 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:7:26-30 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:7:26-30 })
@@ -145,7 +185,12 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:7:26-30 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:7:26-30 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:7:26-30 })
                  (Unqual
                   {OccName: Peano})))))])
            (Nothing)))])
@@ -167,17 +212,32 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:6-11 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAst.hs:9:6-11 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAst.hs:9:6-11 })
        (Unqual
         {OccName: Length}))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:16-27 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAst.hs:9:16-27 })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAst.hs:9:16-27 })
        (HsSig
         (NoExtField)
         (HsOuterImplicit
          (NoExtField))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:16-27 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpParsedAst.hs:9:16-27 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { DumpParsedAst.hs:9:16-27 })
          (HsFunTy
           (EpAnn
            (EpaSpan { DumpParsedAst.hs:9:16-27 })
@@ -190,7 +250,12 @@
              (EpaSpan { DumpParsedAst.hs:9:20-21 }))
             (HsNormalTok)))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:16-18 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:9:16-18 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:9:16-18 })
            (HsListTy
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:9:16-18 })
@@ -201,7 +266,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:17 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:9:17 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:9:17 })
              (HsTyVar
               (EpAnn
                (EpaSpan { DumpParsedAst.hs:9:17 })
@@ -210,11 +280,21 @@
                 []))
               (NotPromoted)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:17 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:9:17 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:9:17 })
                (Unqual
                 {OccName: k}))))))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:23-27 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:9:23-27 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:9:23-27 })
            (HsTyVar
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:9:23-27 })
@@ -223,7 +303,12 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:23-27 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:9:23-27 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:9:23-27 })
              (Unqual
               {OccName: Peano})))))))))))
   ,(L
@@ -249,7 +334,12 @@
        (ClosedTypeFamily
         (Just
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:3-36 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:11:3-36 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:11:3-36 })
            (FamEqn
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:11:3-36 })
@@ -257,14 +347,24 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:3-8 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:11:3-8 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:11:3-8 })
              (Unqual
               {OccName: Length}))
             (HsOuterImplicit
              (NoExtField))
             [(HsValArg
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:10-17 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:11:10-17 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:11:10-17 })
                (HsParTy
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:11:10-17 })
@@ -275,12 +375,26 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:11-16 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:11:11-16 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:11:11-16 })
                  (HsOpTy
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:11 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:11:11 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:11:11 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { DumpParsedAst.hs:11:11 })
@@ -289,15 +403,30 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:11 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpParsedAst.hs:11:11 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpParsedAst.hs:11:11 })
                      (Unqual
                       {OccName: a}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:13 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:11:13 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:11:13 })
                    (Exact
                     {Name: :}))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:15-16 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:11:15-16 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:11:15-16 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { DumpParsedAst.hs:11:15-16 })
@@ -306,16 +435,31 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:15-16 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpParsedAst.hs:11:15-16 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpParsedAst.hs:11:15-16 })
                      (Unqual
                       {OccName: as})))))))))]
             (Prefix)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:21-36 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:11:21-36 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:11:21-36 })
              (HsAppTy
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:21-24 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:11:21-24 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:11:21-24 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:11:21-24 })
@@ -324,11 +468,21 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:21-24 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:11:21-24 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:11:21-24 })
                  (Unqual
                   {OccName: Succ}))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:26-36 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:11:26-36 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:11:26-36 })
                (HsParTy
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:11:26-36 })
@@ -339,11 +493,21 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:27-35 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:11:27-35 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:11:27-35 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:27-32 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:11:27-32 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:11:27-32 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { DumpParsedAst.hs:11:27-32 })
@@ -352,11 +516,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:27-32 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpParsedAst.hs:11:27-32 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpParsedAst.hs:11:27-32 })
                      (Unqual
                       {OccName: Length}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:34-35 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:11:34-35 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:11:34-35 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { DumpParsedAst.hs:11:34-35 })
@@ -365,11 +539,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:34-35 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpParsedAst.hs:11:34-35 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpParsedAst.hs:11:34-35 })
                      (Unqual
                       {OccName: as}))))))))))))
          ,(L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:12:3-24 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:12:3-24 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:12:3-24 })
            (FamEqn
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:12:3-24 })
@@ -377,14 +561,24 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:12:3-8 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:12:3-8 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:12:3-8 })
              (Unqual
               {OccName: Length}))
             (HsOuterImplicit
              (NoExtField))
             [(HsValArg
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:12:10-12 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:12:10-12 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:12:10-12 })
                (HsExplicitListTy
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:12:10-12 })
@@ -397,7 +591,12 @@
                 [])))]
             (Prefix)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:12:21-24 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:12:21-24 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:12:21-24 })
              (HsTyVar
               (EpAnn
                (EpaSpan { DumpParsedAst.hs:12:21-24 })
@@ -406,18 +605,33 @@
                 []))
               (NotPromoted)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:12:21-24 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:12:21-24 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:12:21-24 })
                (Unqual
                 {OccName: Zero}))))))]))
        (TopLevel)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:13-18 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpParsedAst.hs:10:13-18 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { DumpParsedAst.hs:10:13-18 })
         (Unqual
          {OccName: Length}))
        (HsQTvs
         (NoExtField)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:20-30 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAst.hs:10:20-30 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAst.hs:10:20-30 })
           (KindedTyVar
            (EpAnn
             (EpaSpan { DumpParsedAst.hs:10:20-30 })
@@ -428,11 +642,21 @@
              []))
            (HsBndrRequired)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:21-22 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:10:21-22 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:10:21-22 })
             (Unqual
              {OccName: as}))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:27-29 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:10:27-29 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:10:27-29 })
             (HsListTy
              (EpAnn
               (EpaSpan { DumpParsedAst.hs:10:27-29 })
@@ -443,7 +667,12 @@
               (EpaComments
                []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:28 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpParsedAst.hs:10:28 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpParsedAst.hs:10:28 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { DumpParsedAst.hs:10:28 })
@@ -452,18 +681,32 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:28 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpParsedAst.hs:10:28 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpParsedAst.hs:10:28 })
                 (Unqual
                  {OccName: k}))))))))])
        (Prefix)
        (L
         (SrcSpanAnn
-         (EpAnnNotUsed)
+         (EpAnn
+          (EpaSpan { DumpParsedAst.hs:10:32-39 })
+          (NoEpAnns)
+          (EpaComments
+           []))
          { DumpParsedAst.hs:10:32-39 })
         (KindSig
          (NoExtField)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:35-39 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAst.hs:10:35-39 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAst.hs:10:35-39 })
           (HsTyVar
            (EpAnn
             (EpaSpan { DumpParsedAst.hs:10:35-39 })
@@ -472,7 +715,12 @@
              []))
            (NotPromoted)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:35-39 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:10:35-39 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:10:35-39 })
             (Unqual
              {OccName: Peano}))))))
        (Nothing)))))
@@ -493,13 +741,23 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:6 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAst.hs:15:6 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAst.hs:15:6 })
        (Unqual
         {OccName: T}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:8 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpParsedAst.hs:15:8 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { DumpParsedAst.hs:15:8 })
          (UserTyVar
           (EpAnn
            (EpaSpan { DumpParsedAst.hs:15:8 })
@@ -508,11 +766,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:8 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:15:8 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:15:8 })
            (Unqual
             {OccName: f}))))
        ,(L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:10-17 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpParsedAst.hs:15:10-17 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { DumpParsedAst.hs:15:10-17 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { DumpParsedAst.hs:15:10-17 })
@@ -523,11 +791,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:11 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:15:11 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:15:11 })
            (Unqual
             {OccName: a}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:16 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:15:16 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:15:16 })
            (HsTyVar
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:15:16 })
@@ -536,7 +814,12 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:16 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:15:16 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:15:16 })
              (Unqual
               {OccName: k}))))))])
       (Prefix)
@@ -548,7 +831,12 @@
        (DataTypeCons
         (False)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:21-29 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAst.hs:15:21-29 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAst.hs:15:21-29 })
           (ConDeclH98
            (EpAnn
             (EpaSpan { DumpParsedAst.hs:15:21-29 })
@@ -556,7 +844,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:21-23 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:15:21-23 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:15:21-23 })
             (Unqual
              {OccName: MkT}))
            (False)
@@ -574,7 +867,12 @@
                  (NoTokenLoc)
                  (HsNormalTok))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:25-29 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:15:25-29 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:15:25-29 })
                (HsParTy
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:15:25-29 })
@@ -585,11 +883,21 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:26-28 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:15:26-28 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:15:26-28 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:26 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:15:26 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:15:26 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { DumpParsedAst.hs:15:26 })
@@ -598,11 +906,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:26 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpParsedAst.hs:15:26 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpParsedAst.hs:15:26 })
                      (Unqual
                       {OccName: f}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:28 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:15:28 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:15:28 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { DumpParsedAst.hs:15:28 })
@@ -611,7 +929,12 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:28 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpParsedAst.hs:15:28 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpParsedAst.hs:15:28 })
                      (Unqual
                       {OccName: a})))))))))])
            (Nothing)))])
@@ -633,17 +956,32 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:6-7 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAst.hs:17:6-7 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAst.hs:17:6-7 })
        (Unqual
         {OccName: F1}))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:12-35 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAst.hs:17:12-35 })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAst.hs:17:12-35 })
        (HsSig
         (NoExtField)
         (HsOuterImplicit
          (NoExtField))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:12-35 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpParsedAst.hs:17:12-35 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { DumpParsedAst.hs:17:12-35 })
          (HsFunTy
           (EpAnn
            (EpaSpan { DumpParsedAst.hs:17:12-35 })
@@ -656,7 +994,12 @@
              (EpaSpan { DumpParsedAst.hs:17:14-15 }))
             (HsNormalTok)))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:12 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:17:12 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:17:12 })
            (HsTyVar
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:17:12 })
@@ -665,11 +1008,21 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:12 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:17:12 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:17:12 })
              (Unqual
               {OccName: k}))))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:17-35 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:17:17-35 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:17:17-35 })
            (HsFunTy
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:17:17-35 })
@@ -682,7 +1035,12 @@
                (EpaSpan { DumpParsedAst.hs:17:29-30 }))
               (HsNormalTok)))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:17-27 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:17:17-27 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:17:17-27 })
              (HsParTy
               (EpAnn
                (EpaSpan { DumpParsedAst.hs:17:17-27 })
@@ -693,7 +1051,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:18-26 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:17:18-26 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:17:18-26 })
                (HsFunTy
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:17:18-26 })
@@ -706,7 +1069,12 @@
                    (EpaSpan { DumpParsedAst.hs:17:20-21 }))
                   (HsNormalTok)))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:18 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:17:18 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:17:18 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { DumpParsedAst.hs:17:18 })
@@ -715,11 +1083,21 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:18 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:17:18 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:17:18 })
                    (Unqual
                     {OccName: k}))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:23-26 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:17:23-26 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:17:23-26 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { DumpParsedAst.hs:17:23-26 })
@@ -728,11 +1106,21 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:23-26 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:17:23-26 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:17:23-26 })
                    (Unqual
                     {OccName: Type}))))))))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:32-35 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:17:32-35 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:17:32-35 })
              (HsTyVar
               (EpAnn
                (EpaSpan { DumpParsedAst.hs:17:32-35 })
@@ -741,7 +1129,12 @@
                 []))
               (NotPromoted)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:32-35 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:17:32-35 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:17:32-35 })
                (Unqual
                 {OccName: Type})))))))))))))
   ,(L
@@ -767,7 +1160,12 @@
        (ClosedTypeFamily
         (Just
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:3-30 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:19:3-30 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:19:3-30 })
            (FamEqn
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:19:3-30 })
@@ -775,7 +1173,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:3-4 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:19:3-4 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:19:3-4 })
              (Unqual
               {OccName: F1}))
             (HsOuterImplicit
@@ -786,7 +1189,12 @@
                 (EpaSpan { DumpParsedAst.hs:19:6 }))
                (HsTok))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:7-11 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:19:7-11 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:19:7-11 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:19:7-11 })
@@ -795,12 +1203,22 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:7-11 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:19:7-11 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:19:7-11 })
                  (Unqual
                   {OccName: Peano})))))
             ,(HsValArg
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:13 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:19:13 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:19:13 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:19:13 })
@@ -809,12 +1227,22 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:13 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:19:13 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:19:13 })
                  (Unqual
                   {OccName: a})))))
             ,(HsValArg
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:15 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:19:15 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:19:15 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:19:15 })
@@ -823,24 +1251,49 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:15 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:19:15 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:19:15 })
                  (Unqual
                   {OccName: f})))))]
             (Prefix)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:19-30 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:19:19-30 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:19:19-30 })
              (HsAppTy
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:19-28 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:19:19-28 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:19:19-28 })
                (HsAppTy
                 (NoExtField)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:19-26 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:19:19-26 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:19:19-26 })
                  (HsAppKindTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:19 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:19:19 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:19:19 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { DumpParsedAst.hs:19:19 })
@@ -849,7 +1302,12 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:19 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpParsedAst.hs:19:19 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpParsedAst.hs:19:19 })
                      (Unqual
                       {OccName: T}))))
                   (L
@@ -857,7 +1315,12 @@
                     (EpaSpan { DumpParsedAst.hs:19:21 }))
                    (HsTok))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:22-26 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:19:22-26 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:19:22-26 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { DumpParsedAst.hs:19:22-26 })
@@ -866,11 +1329,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:22-26 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpParsedAst.hs:19:22-26 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpParsedAst.hs:19:22-26 })
                      (Unqual
                       {OccName: Peano}))))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:28 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:19:28 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:19:28 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { DumpParsedAst.hs:19:28 })
@@ -879,11 +1352,21 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:28 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:19:28 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:19:28 })
                    (Unqual
                     {OccName: f}))))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:30 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:19:30 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:19:30 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:19:30 })
@@ -892,18 +1375,33 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:30 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:19:30 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:19:30 })
                  (Unqual
                   {OccName: a}))))))))]))
        (TopLevel)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:13-14 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpParsedAst.hs:18:13-14 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { DumpParsedAst.hs:18:13-14 })
         (Unqual
          {OccName: F1}))
        (HsQTvs
         (NoExtField)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:16-23 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAst.hs:18:16-23 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAst.hs:18:16-23 })
           (KindedTyVar
            (EpAnn
             (EpaSpan { DumpParsedAst.hs:18:16-23 })
@@ -914,11 +1412,21 @@
              []))
            (HsBndrRequired)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:17 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:18:17 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:18:17 })
             (Unqual
              {OccName: a}))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:22 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:18:22 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:18:22 })
             (HsTyVar
              (EpAnn
               (EpaSpan { DumpParsedAst.hs:18:22 })
@@ -927,11 +1435,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:22 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpParsedAst.hs:18:22 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpParsedAst.hs:18:22 })
               (Unqual
                {OccName: k}))))))
         ,(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:25-40 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAst.hs:18:25-40 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAst.hs:18:25-40 })
           (KindedTyVar
            (EpAnn
             (EpaSpan { DumpParsedAst.hs:18:25-40 })
@@ -942,11 +1460,21 @@
              []))
            (HsBndrRequired)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:26 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:18:26 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:18:26 })
             (Unqual
              {OccName: f}))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:31-39 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:18:31-39 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:18:31-39 })
             (HsFunTy
              (EpAnn
               (EpaSpan { DumpParsedAst.hs:18:31-39 })
@@ -959,7 +1487,12 @@
                 (EpaSpan { DumpParsedAst.hs:18:33-34 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:31 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpParsedAst.hs:18:31 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpParsedAst.hs:18:31 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { DumpParsedAst.hs:18:31 })
@@ -968,11 +1501,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:31 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpParsedAst.hs:18:31 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpParsedAst.hs:18:31 })
                 (Unqual
                  {OccName: k}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:36-39 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpParsedAst.hs:18:36-39 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpParsedAst.hs:18:36-39 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { DumpParsedAst.hs:18:36-39 })
@@ -981,18 +1524,32 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:36-39 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpParsedAst.hs:18:36-39 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpParsedAst.hs:18:36-39 })
                 (Unqual
                  {OccName: Type}))))))))])
        (Prefix)
        (L
         (SrcSpanAnn
-         (EpAnnNotUsed)
+         (EpAnn
+          (EpaSpan { DumpParsedAst.hs:18:42-48 })
+          (NoEpAnns)
+          (EpaComments
+           []))
          { DumpParsedAst.hs:18:42-48 })
         (KindSig
          (NoExtField)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:45-48 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAst.hs:18:45-48 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAst.hs:18:45-48 })
           (HsTyVar
            (EpAnn
             (EpaSpan { DumpParsedAst.hs:18:45-48 })
@@ -1001,7 +1558,12 @@
              []))
            (NotPromoted)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:45-48 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:18:45-48 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:18:45-48 })
             (Unqual
              {OccName: Type}))))))
        (Nothing)))))
@@ -1027,7 +1589,12 @@
        (DataFamily)
        (TopLevel)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:13-15 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpParsedAst.hs:21:13-15 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { DumpParsedAst.hs:21:13-15 })
         (Unqual
          {OccName: Nat}))
        (HsQTvs
@@ -1036,12 +1603,21 @@
        (Prefix)
        (L
         (SrcSpanAnn
-         (EpAnnNotUsed)
+         (EpAnn
+          (EpaSpan { DumpParsedAst.hs:21:17-33 })
+          (NoEpAnns)
+          (EpaComments
+           []))
          { DumpParsedAst.hs:21:17-33 })
         (KindSig
          (NoExtField)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:20-33 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAst.hs:21:20-33 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAst.hs:21:20-33 })
           (HsFunTy
            (EpAnn
             (EpaSpan { DumpParsedAst.hs:21:20-33 })
@@ -1054,7 +1630,12 @@
               (EpaSpan { DumpParsedAst.hs:21:22-23 }))
              (HsNormalTok)))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:20 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:21:20 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:21:20 })
             (HsTyVar
              (EpAnn
               (EpaSpan { DumpParsedAst.hs:21:20 })
@@ -1063,11 +1644,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:20 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpParsedAst.hs:21:20 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpParsedAst.hs:21:20 })
               (Unqual
                {OccName: k}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:25-33 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpParsedAst.hs:21:25-33 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpParsedAst.hs:21:25-33 })
             (HsFunTy
              (EpAnn
               (EpaSpan { DumpParsedAst.hs:21:25-33 })
@@ -1080,7 +1671,12 @@
                 (EpaSpan { DumpParsedAst.hs:21:27-28 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:25 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpParsedAst.hs:21:25 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpParsedAst.hs:21:25 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { DumpParsedAst.hs:21:25 })
@@ -1089,11 +1685,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:25 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpParsedAst.hs:21:25 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpParsedAst.hs:21:25 })
                 (Unqual
                  {OccName: k}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:30-33 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpParsedAst.hs:21:30-33 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpParsedAst.hs:21:30-33 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { DumpParsedAst.hs:21:30-33 })
@@ -1102,7 +1708,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:30-33 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpParsedAst.hs:21:30-33 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpParsedAst.hs:21:30-33 })
                 (Unqual
                  {OccName: Type}))))))))))
        (Nothing)))))
@@ -1128,14 +1739,24 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:18-20 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpParsedAst.hs:22:18-20 })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { DumpParsedAst.hs:22:18-20 })
          (Unqual
           {OccName: Nat}))
         (HsOuterImplicit
          (NoExtField))
         [(HsValArg
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:22-37 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:22:22-37 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:22:22-37 })
            (HsParTy
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:22:22-37 })
@@ -1146,7 +1767,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:23-36 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:22:23-36 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:22:23-36 })
              (HsKindSig
               (EpAnn
                (EpaSpan { DumpParsedAst.hs:22:23-36 })
@@ -1154,7 +1780,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:23 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:22:23 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:22:23 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:22:23 })
@@ -1163,11 +1794,21 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:23 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:22:23 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:22:23 })
                  (Unqual
                   {OccName: a}))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:28-36 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:22:28-36 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:22:28-36 })
                (HsFunTy
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:22:28-36 })
@@ -1180,7 +1821,12 @@
                    (EpaSpan { DumpParsedAst.hs:22:30-31 }))
                   (HsNormalTok)))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:28 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:22:28 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:22:28 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { DumpParsedAst.hs:22:28 })
@@ -1189,11 +1835,21 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:28 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:22:28 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:22:28 })
                    (Unqual
                     {OccName: k}))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:33-36 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:22:33-36 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:22:33-36 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { DumpParsedAst.hs:22:33-36 })
@@ -1202,7 +1858,12 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:33-36 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:22:33-36 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:22:33-36 })
                    (Unqual
                     {OccName: Type})))))))))))]
         (Prefix)
@@ -1212,7 +1873,12 @@
          (Nothing)
          (Just
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:42-60 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:22:42-60 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:22:42-60 })
            (HsFunTy
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:22:42-60 })
@@ -1225,7 +1891,12 @@
                (EpaSpan { DumpParsedAst.hs:22:54-55 }))
               (HsNormalTok)))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:42-52 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:22:42-52 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:22:42-52 })
              (HsParTy
               (EpAnn
                (EpaSpan { DumpParsedAst.hs:22:42-52 })
@@ -1236,7 +1907,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:43-51 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:22:43-51 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:22:43-51 })
                (HsFunTy
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:22:43-51 })
@@ -1249,7 +1925,12 @@
                    (EpaSpan { DumpParsedAst.hs:22:45-46 }))
                   (HsNormalTok)))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:43 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:22:43 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:22:43 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { DumpParsedAst.hs:22:43 })
@@ -1258,11 +1939,21 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:43 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:22:43 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:22:43 })
                    (Unqual
                     {OccName: k}))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:48-51 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:22:48-51 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:22:48-51 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { DumpParsedAst.hs:22:48-51 })
@@ -1271,11 +1962,21 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:48-51 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:22:48-51 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:22:48-51 })
                    (Unqual
                     {OccName: Type}))))))))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:57-60 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:22:57-60 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:22:57-60 })
              (HsTyVar
               (EpAnn
                (EpaSpan { DumpParsedAst.hs:22:57-60 })
@@ -1284,12 +1985,22 @@
                 []))
               (NotPromoted)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:57-60 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:22:57-60 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:22:57-60 })
                (Unqual
                 {OccName: Type})))))))
          (NewTypeCon
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:3-45 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpParsedAst.hs:23:3-45 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpParsedAst.hs:23:3-45 })
            (ConDeclGADT
             (EpAnn
              (EpaSpan { DumpParsedAst.hs:23:3-45 })
@@ -1298,7 +2009,12 @@
               []))
             (:|
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:3-5 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpParsedAst.hs:23:3-5 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpParsedAst.hs:23:3-5 })
               (Unqual
                {OccName: Nat}))
              [])
@@ -1307,7 +2023,12 @@
               (EpaSpan { DumpParsedAst.hs:23:7-8 }))
              (HsNormalTok))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:10-45 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:23:10-45 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:23:10-45 })
              (HsOuterImplicit
               (NoExtField)))
             (Nothing)
@@ -1335,7 +2056,12 @@
                   (EpaComments
                    []))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:11-33 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpParsedAst.hs:23:11-33 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpParsedAst.hs:23:11-33 })
                   (HsForAllTy
                    (NoExtField)
                    (HsForAllInvis
@@ -1347,7 +2073,12 @@
                      (EpaComments
                       []))
                     [(L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:18-19 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpParsedAst.hs:23:18-19 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpParsedAst.hs:23:18-19 })
                       (UserTyVar
                        (EpAnn
                         (EpaSpan { DumpParsedAst.hs:23:18-19 })
@@ -1356,11 +2087,21 @@
                          []))
                        (SpecifiedSpec)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:18-19 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpParsedAst.hs:23:18-19 })
+                                     (NameAnnTrailing
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpParsedAst.hs:23:18-19 })
                         (Unqual
                          {OccName: xx}))))])
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:22-33 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpParsedAst.hs:23:22-33 })
+                                 (AnnListItem
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpParsedAst.hs:23:22-33 })
                     (HsFunTy
                      (EpAnn
                       (EpaSpan { DumpParsedAst.hs:23:22-33 })
@@ -1373,11 +2114,21 @@
                         (EpaSpan { DumpParsedAst.hs:23:27-28 }))
                        (HsNormalTok)))
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:22-25 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpParsedAst.hs:23:22-25 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpParsedAst.hs:23:22-25 })
                       (HsAppTy
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:22 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpParsedAst.hs:23:22 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpParsedAst.hs:23:22 })
                         (HsTyVar
                          (EpAnn
                           (EpaSpan { DumpParsedAst.hs:23:22 })
@@ -1386,11 +2137,21 @@
                            []))
                          (NotPromoted)
                          (L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:22 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpParsedAst.hs:23:22 })
+                                       (NameAnnTrailing
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpParsedAst.hs:23:22 })
                           (Unqual
                            {OccName: f}))))
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:24-25 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpParsedAst.hs:23:24-25 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpParsedAst.hs:23:24-25 })
                         (HsTyVar
                          (EpAnn
                           (EpaSpan { DumpParsedAst.hs:23:24-25 })
@@ -1399,15 +2160,30 @@
                            []))
                          (NotPromoted)
                          (L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:24-25 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpParsedAst.hs:23:24-25 })
+                                       (NameAnnTrailing
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpParsedAst.hs:23:24-25 })
                           (Unqual
                            {OccName: xx}))))))
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:30-33 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpParsedAst.hs:23:30-33 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpParsedAst.hs:23:30-33 })
                       (HsAppTy
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:30 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpParsedAst.hs:23:30 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpParsedAst.hs:23:30 })
                         (HsTyVar
                          (EpAnn
                           (EpaSpan { DumpParsedAst.hs:23:30 })
@@ -1416,11 +2192,21 @@
                            []))
                          (NotPromoted)
                          (L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:30 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpParsedAst.hs:23:30 })
+                                       (NameAnnTrailing
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpParsedAst.hs:23:30 })
                           (Unqual
                            {OccName: g}))))
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:32-33 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpParsedAst.hs:23:32-33 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpParsedAst.hs:23:32-33 })
                         (HsTyVar
                          (EpAnn
                           (EpaSpan { DumpParsedAst.hs:23:32-33 })
@@ -1429,19 +2215,39 @@
                            []))
                          (NotPromoted)
                          (L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:32-33 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpParsedAst.hs:23:32-33 })
+                                       (NameAnnTrailing
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpParsedAst.hs:23:32-33 })
                           (Unqual
                            {OccName: xx})))))))))))))])
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:39-45 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:23:39-45 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:23:39-45 })
              (HsAppTy
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:39-43 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:23:39-43 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:23:39-43 })
                (HsAppTy
                 (NoExtField)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:39-41 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:23:39-41 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:23:39-41 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { DumpParsedAst.hs:23:39-41 })
@@ -1450,11 +2256,21 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:39-41 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:23:39-41 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:23:39-41 })
                    (Unqual
                     {OccName: Nat}))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:43 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:23:43 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:23:43 })
                  (HsTyVar
                   (EpAnn
                    (EpaSpan { DumpParsedAst.hs:23:43 })
@@ -1463,11 +2279,21 @@
                     []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:43 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpParsedAst.hs:23:43 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpParsedAst.hs:23:43 })
                    (Unqual
                     {OccName: f}))))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:45 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpParsedAst.hs:23:45 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpParsedAst.hs:23:45 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { DumpParsedAst.hs:23:45 })
@@ -1476,7 +2302,12 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:45 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpParsedAst.hs:23:45 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpParsedAst.hs:23:45 })
                  (Unqual
                   {OccName: g}))))))
             (Nothing))))
@@ -1493,15 +2324,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:1-4 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAst.hs:25:1-4 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAst.hs:25:1-4 })
        (Unqual
         {OccName: main}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:1-23 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpParsedAst.hs:25:1-23 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpParsedAst.hs:25:1-23 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:1-23 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAst.hs:25:1-23 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAst.hs:25:1-23 })
           (Match
            (EpAnn
             (EpaSpan { DumpParsedAst.hs:25:1-23 })
@@ -1510,7 +2360,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:1-4 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAst.hs:25:1-4 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAst.hs:25:1-4 })
              (Unqual
               {OccName: main}))
             (Prefix)
@@ -1521,7 +2376,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpParsedAst.hs:25:6-23 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpParsedAst.hs:25:6-23 })
               (GRHS
                (EpAnn
@@ -1533,7 +2392,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:8-23 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpParsedAst.hs:25:8-23 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpParsedAst.hs:25:8-23 })
                 (HsApp
                  (EpAnn
                   (EpaSpan { DumpParsedAst.hs:25:8-23 })
@@ -1541,15 +2405,30 @@
                   (EpaComments
                    []))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:8-15 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpParsedAst.hs:25:8-15 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpParsedAst.hs:25:8-15 })
                   (HsVar
                    (NoExtField)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:8-15 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpParsedAst.hs:25:8-15 })
+                                 (NameAnnTrailing
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpParsedAst.hs:25:8-15 })
                     (Unqual
                      {OccName: putStrLn}))))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:17-23 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpParsedAst.hs:25:17-23 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpParsedAst.hs:25:17-23 })
                   (HsLit
                    (EpAnn
                     (EpaSpan { DumpParsedAst.hs:25:17-23 })
diff --git a/testsuite/tests/parser/should_compile/DumpParsedAstComments.stderr b/testsuite/tests/parser/should_compile/DumpParsedAstComments.stderr
index 307dc9c8d51a..b0c9f27d78b2 100644
--- a/testsuite/tests/parser/should_compile/DumpParsedAstComments.stderr
+++ b/testsuite/tests/parser/should_compile/DumpParsedAstComments.stderr
@@ -36,7 +36,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:5:8-28 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { DumpParsedAstComments.hs:5:8-28 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { DumpParsedAstComments.hs:5:8-28 })
     {ModuleName: DumpParsedAstComments}))
   (Nothing)
   []
@@ -64,15 +69,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:9:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAstComments.hs:9:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAstComments.hs:9:1-3 })
        (Unqual
         {OccName: bar}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:9:1-7 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpParsedAstComments.hs:9:1-7 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpParsedAstComments.hs:9:1-7 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:9:1-7 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAstComments.hs:9:1-7 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAstComments.hs:9:1-7 })
           (Match
            (EpAnn
             (EpaSpan { DumpParsedAstComments.hs:9:1-7 })
@@ -81,7 +105,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:9:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAstComments.hs:9:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAstComments.hs:9:1-3 })
              (Unqual
               {OccName: bar}))
             (Prefix)
@@ -92,7 +121,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpParsedAstComments.hs:9:5-7 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpParsedAstComments.hs:9:5-7 })
               (GRHS
                (EpAnn
@@ -104,7 +137,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:9:7 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpParsedAstComments.hs:9:7 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpParsedAstComments.hs:9:7 })
                 (HsOverLit
                  (EpAnn
                   (EpaSpan { DumpParsedAstComments.hs:9:7 })
@@ -150,17 +188,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:14:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAstComments.hs:14:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAstComments.hs:14:1-3 })
        (Unqual
         {OccName: foo}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:(14,1)-(16,3)
-                                      })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpParsedAstComments.hs:(14,1)-(16,3) })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpParsedAstComments.hs:(14,1)-(16,3) })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:(14,1)-(16,3)
-                                        })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAstComments.hs:(14,1)-(16,3) })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAstComments.hs:(14,1)-(16,3) })
           (Match
            (EpAnn
             (EpaSpan { DumpParsedAstComments.hs:(14,1)-(16,3) })
@@ -169,7 +224,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:14:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAstComments.hs:14:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAstComments.hs:14:1-3 })
              (Unqual
               {OccName: foo}))
             (Prefix)
@@ -180,7 +240,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpParsedAstComments.hs:(14,5)-(16,3) })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpParsedAstComments.hs:(14,5)-(16,3) })
               (GRHS
                (EpAnn
@@ -192,8 +256,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:(14,7)-(16,3)
-                                              })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpParsedAstComments.hs:(14,7)-(16,3) })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpParsedAstComments.hs:(14,7)-(16,3) })
                 (HsDo
                  (EpAnn
                   (EpaSpan { DumpParsedAstComments.hs:(14,7)-(16,3) })
@@ -226,11 +294,21 @@
                                (EpaComments
                                 [])) { DumpParsedAstComments.hs:16:3 })
                   [(L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:16:3 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpParsedAstComments.hs:16:3 })
+                                 (AnnListItem
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpParsedAstComments.hs:16:3 })
                     (BodyStmt
                      (NoExtField)
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:16:3 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpParsedAstComments.hs:16:3 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpParsedAstComments.hs:16:3 })
                       (HsOverLit
                        (EpAnn
                         (EpaSpan { DumpParsedAstComments.hs:16:3 })
@@ -266,15 +344,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:1-4 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpParsedAstComments.hs:19:1-4 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpParsedAstComments.hs:19:1-4 })
        (Unqual
         {OccName: main}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:1-23 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpParsedAstComments.hs:19:1-23 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpParsedAstComments.hs:19:1-23 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:1-23 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpParsedAstComments.hs:19:1-23 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpParsedAstComments.hs:19:1-23 })
           (Match
            (EpAnn
             (EpaSpan { DumpParsedAstComments.hs:19:1-23 })
@@ -283,7 +380,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:1-4 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpParsedAstComments.hs:19:1-4 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpParsedAstComments.hs:19:1-4 })
              (Unqual
               {OccName: main}))
             (Prefix)
@@ -294,7 +396,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpParsedAstComments.hs:19:6-23 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpParsedAstComments.hs:19:6-23 })
               (GRHS
                (EpAnn
@@ -306,7 +412,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:8-23 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpParsedAstComments.hs:19:8-23 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpParsedAstComments.hs:19:8-23 })
                 (HsApp
                  (EpAnn
                   (EpaSpan { DumpParsedAstComments.hs:19:8-23 })
@@ -314,15 +425,30 @@
                   (EpaComments
                    []))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:8-15 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpParsedAstComments.hs:19:8-15 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpParsedAstComments.hs:19:8-15 })
                   (HsVar
                    (NoExtField)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:8-15 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpParsedAstComments.hs:19:8-15 })
+                                 (NameAnnTrailing
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpParsedAstComments.hs:19:8-15 })
                     (Unqual
                      {OccName: putStrLn}))))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:17-23 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpParsedAstComments.hs:19:17-23 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpParsedAstComments.hs:19:17-23 })
                   (HsLit
                    (EpAnn
                     (EpaSpan { DumpParsedAstComments.hs:19:17-23 })
@@ -333,4 +459,4 @@
                     (SourceText "hello")
                     {FastString: "hello"})))))))]
             (EmptyLocalBinds
-             (NoExtField)))))])))))]))
+             (NoExtField)))))])))))]))
\ No newline at end of file
diff --git a/testsuite/tests/parser/should_compile/DumpRenamedAst.stderr b/testsuite/tests/parser/should_compile/DumpRenamedAst.stderr
index d46adadb2394..d6afe02450d4 100644
--- a/testsuite/tests/parser/should_compile/DumpRenamedAst.stderr
+++ b/testsuite/tests/parser/should_compile/DumpRenamedAst.stderr
@@ -21,19 +21,47 @@
            {NameSet:
             []}
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:1-4 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:35:1-4 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:35:1-4 })
             {Name: DumpRenamedAst.main})
            (MG
             (FromSource)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:1-23 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:35:1-23 })
+                          (AnnList
+                           (Nothing)
+                           (Nothing)
+                           (Nothing)
+                           []
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:35:1-23 })
              [(L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:1-23 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:35:1-23 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:35:1-23 })
                (Match
-                (EpAnnNotUsed)
+                (EpAnn
+                 (EpaDelta (SameLine 0) [])
+                 []
+                 (EpaComments
+                  []))
                 (FunRhs
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:1-4 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:35:1-4 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:35:1-4 })
                   {Name: DumpRenamedAst.main})
                  (Prefix)
                  (NoSrcStrict))
@@ -43,13 +71,28 @@
                   [])
                  [(L
                    (SrcSpanAnn
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaSpan { DumpRenamedAst.hs:35:6-23 })
+                     (NoEpAnns)
+                     (EpaComments
+                      []))
                     { DumpRenamedAst.hs:35:6-23 })
                    (GRHS
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     (GrhsAnn
+                      (Nothing)
+                      (AddEpAnn Annlarrowtail (EpaDelta (SameLine 0) [])))
+                     (EpaComments
+                      []))
                     []
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:8-23 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:35:8-23 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:35:8-23 })
                      (HsApp
                       (EpAnn
                        (EpaSpan { DumpRenamedAst.hs:35:8-23 })
@@ -57,14 +100,29 @@
                        (EpaComments
                         []))
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:8-15 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:35:8-15 })
+                                    (AnnListItem
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:35:8-15 })
                        (HsVar
                         (NoExtField)
                         (L
-                         (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:8-15 })
+                         (SrcSpanAnn (EpAnn
+                                      (EpaSpan { DumpRenamedAst.hs:35:8-15 })
+                                      (NameAnnTrailing
+                                       [])
+                                      (EpaComments
+                                       [])) { DumpRenamedAst.hs:35:8-15 })
                          {Name: System.IO.putStrLn})))
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:17-23 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:35:17-23 })
+                                    (AnnListItem
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:35:17-23 })
                        (HsLit
                         (EpAnn
                          (EpaSpan { DumpRenamedAst.hs:35:17-23 })
@@ -93,7 +151,12 @@
          {NameSet:
           [{Name: DumpRenamedAst.Peano}]})
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:9:6-10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpRenamedAst.hs:9:6-10 })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { DumpRenamedAst.hs:9:6-10 })
          {Name: DumpRenamedAst.Peano})
         (HsQTvs
          []
@@ -115,9 +178,18 @@
                          (EpaComments
                           [])) { DumpRenamedAst.hs:9:14-17 })
             (ConDeclH98
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaDelta (SameLine 0) [])
+              []
+              (EpaComments
+               []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:9:14-17 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:9:14-17 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:9:14-17 })
               {Name: DumpRenamedAst.Zero})
              (False)
              []
@@ -127,11 +199,25 @@
               [])
              (Nothing)))
           ,(L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:9:21-30 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:9:21-30 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:9:21-30 })
             (ConDeclH98
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaDelta (SameLine 0) [])
+              []
+              (EpaComments
+               []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:9:21-24 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:9:21-24 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:9:21-24 })
               {Name: DumpRenamedAst.Succ})
              (False)
              []
@@ -148,12 +234,26 @@
                    (NoTokenLoc)
                    (HsNormalTok))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:9:26-30 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:9:26-30 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:9:26-30 })
                  (HsTyVar
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:9:26-30 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:9:26-30 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:9:26-30 })
                    {Name: DumpRenamedAst.Peano}))))])
              (Nothing)))])
          [])))]
@@ -172,118 +272,297 @@
        (FamDecl
         (NoExtField)
         (FamilyDecl
-         (EpAnnNotUsed)
+         (EpAnn
+          (EpaDelta (SameLine 0) [])
+          []
+          (EpaComments
+           []))
          (ClosedTypeFamily
           (Just
            [(L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:3-36 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:13:3-36 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:13:3-36 })
              (FamEqn
-              (EpAnnNotUsed)
+              (EpAnn
+               (EpaDelta (SameLine 0) [])
+               []
+               (EpaComments
+                []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:3-8 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:13:3-8 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:13:3-8 })
                {Name: DumpRenamedAst.Length})
               (HsOuterImplicit
                [{Name: a}
                ,{Name: as}])
               [(HsValArg
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:10-17 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:13:10-17 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:13:10-17 })
                  (HsParTy
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   (AnnParen
+                    (AnnParens)
+                    (EpaDelta (SameLine 0) [])
+                    (EpaDelta (SameLine 0) []))
+                   (EpaComments
+                    []))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:11-16 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:13:11-16 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:13:11-16 })
                    (HsOpTy
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:11 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:13:11 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:13:11 })
                      (HsTyVar
-                      (EpAnnNotUsed)
+                      (EpAnn
+                       (EpaDelta (SameLine 0) [])
+                       []
+                       (EpaComments
+                        []))
                       (NotPromoted)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:11 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:13:11 })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:13:11 })
                        {Name: a})))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:13 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:13:13 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:13:13 })
                      {Name: :})
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:15-16 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:13:15-16 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:13:15-16 })
                      (HsTyVar
-                      (EpAnnNotUsed)
+                      (EpAnn
+                       (EpaDelta (SameLine 0) [])
+                       []
+                       (EpaComments
+                        []))
                       (NotPromoted)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:15-16 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:13:15-16 })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:13:15-16 })
                        {Name: as}))))))))]
               (Prefix)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:21-36 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:13:21-36 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:13:21-36 })
                (HsAppTy
                 (NoExtField)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:21-24 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:13:21-24 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:13:21-24 })
                  (HsTyVar
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:21-24 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:13:21-24 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:13:21-24 })
                    {Name: DumpRenamedAst.Succ})))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:26-36 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:13:26-36 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:13:26-36 })
                  (HsParTy
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   (AnnParen
+                    (AnnParens)
+                    (EpaDelta (SameLine 0) [])
+                    (EpaDelta (SameLine 0) []))
+                   (EpaComments
+                    []))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:27-35 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:13:27-35 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:13:27-35 })
                    (HsAppTy
                     (NoExtField)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:27-32 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:13:27-32 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:13:27-32 })
                      (HsTyVar
-                      (EpAnnNotUsed)
+                      (EpAnn
+                       (EpaDelta (SameLine 0) [])
+                       []
+                       (EpaComments
+                        []))
                       (NotPromoted)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:27-32 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:13:27-32 })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:13:27-32 })
                        {Name: DumpRenamedAst.Length})))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:34-35 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:13:34-35 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:13:34-35 })
                      (HsTyVar
-                      (EpAnnNotUsed)
+                      (EpAnn
+                       (EpaDelta (SameLine 0) [])
+                       []
+                       (EpaComments
+                        []))
                       (NotPromoted)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:13:34-35 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:13:34-35 })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:13:34-35 })
                        {Name: as})))))))))))
            ,(L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:14:3-24 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:14:3-24 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:14:3-24 })
              (FamEqn
-              (EpAnnNotUsed)
+              (EpAnn
+               (EpaDelta (SameLine 0) [])
+               []
+               (EpaComments
+                []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:14:3-8 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:14:3-8 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:14:3-8 })
                {Name: DumpRenamedAst.Length})
               (HsOuterImplicit
                [])
               [(HsValArg
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:14:10-12 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:14:10-12 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:14:10-12 })
                  (HsExplicitListTy
                   (NoExtField)
                   (IsPromoted)
                   [])))]
               (Prefix)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:14:21-24 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:14:21-24 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:14:21-24 })
                (HsTyVar
-                (EpAnnNotUsed)
+                (EpAnn
+                 (EpaDelta (SameLine 0) [])
+                 []
+                 (EpaComments
+                  []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:14:21-24 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:14:21-24 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:14:21-24 })
                  {Name: DumpRenamedAst.Zero})))))]))
          (TopLevel)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:13-18 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpRenamedAst.hs:12:13-18 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { DumpRenamedAst.hs:12:13-18 })
           {Name: DumpRenamedAst.Length})
          (HsQTvs
           [{Name: k}]
           [(L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:20-30 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:12:20-30 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:12:20-30 })
             (KindedTyVar
              (EpAnn
               (EpaSpan { DumpRenamedAst.hs:12:20-30 })
@@ -294,10 +573,20 @@
                []))
              (HsBndrRequired)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:21-22 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:12:21-22 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:12:21-22 })
               {Name: as})
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:27-29 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:12:27-29 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:12:27-29 })
               (HsListTy
                (EpAnn
                 (EpaSpan { DumpRenamedAst.hs:12:27-29 })
@@ -308,27 +597,59 @@
                 (EpaComments
                  []))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:28 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:12:28 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:12:28 })
                 (HsTyVar
-                 (EpAnnNotUsed)
+                 (EpAnn
+                  (EpaDelta (SameLine 0) [])
+                  []
+                  (EpaComments
+                   []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:28 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:12:28 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:12:28 })
                   {Name: k})))))))])
          (Prefix)
          (L
           (SrcSpanAnn
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaSpan { DumpRenamedAst.hs:12:32-39 })
+            (NoEpAnns)
+            (EpaComments
+             []))
            { DumpRenamedAst.hs:12:32-39 })
           (KindSig
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:35-39 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:12:35-39 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:12:35-39 })
             (HsTyVar
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaDelta (SameLine 0) [])
+              []
+              (EpaComments
+               []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:35-39 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:12:35-39 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:12:35-39 })
               {Name: DumpRenamedAst.Peano})))))
          (Nothing))))]
      []
@@ -342,16 +663,31 @@
        (StandaloneKindSig
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:6-11 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpRenamedAst.hs:11:6-11 })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { DumpRenamedAst.hs:11:6-11 })
          {Name: DumpRenamedAst.Length})
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:16-27 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpRenamedAst.hs:11:16-27 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { DumpRenamedAst.hs:11:16-27 })
          (HsSig
           (NoExtField)
           (HsOuterImplicit
            [{Name: k}])
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:16-27 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpRenamedAst.hs:11:16-27 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpRenamedAst.hs:11:16-27 })
            (HsFunTy
             (EpAnn
              (EpaSpan { DumpRenamedAst.hs:11:16-27 })
@@ -364,7 +700,12 @@
                (EpaSpan { DumpRenamedAst.hs:11:20-21 }))
               (HsNormalTok)))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:16-18 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:11:16-18 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:11:16-18 })
              (HsListTy
               (EpAnn
                (EpaSpan { DumpRenamedAst.hs:11:16-18 })
@@ -375,20 +716,48 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:17 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:11:17 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:11:17 })
                (HsTyVar
-                (EpAnnNotUsed)
+                (EpAnn
+                 (EpaDelta (SameLine 0) [])
+                 []
+                 (EpaComments
+                  []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:17 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:11:17 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:11:17 })
                  {Name: k})))))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:23-27 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:11:23-27 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:11:23-27 })
              (HsTyVar
-              (EpAnnNotUsed)
+              (EpAnn
+               (EpaDelta (SameLine 0) [])
+               []
+               (EpaComments
+                []))
               (NotPromoted)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:23-27 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:11:23-27 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:11:23-27 })
                {Name: DumpRenamedAst.Peano})))))))))]
      [])
    ,(TyClGroup
@@ -403,11 +772,20 @@
        (FamDecl
         (NoExtField)
         (FamilyDecl
-         (EpAnnNotUsed)
+         (EpAnn
+          (EpaDelta (SameLine 0) [])
+          []
+          (EpaComments
+           []))
          (DataFamily)
          (TopLevel)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:13-15 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpRenamedAst.hs:16:13-15 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { DumpRenamedAst.hs:16:13-15 })
           {Name: DumpRenamedAst.Nat})
          (HsQTvs
           [{Name: k}]
@@ -415,12 +793,21 @@
          (Prefix)
          (L
           (SrcSpanAnn
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaSpan { DumpRenamedAst.hs:16:17-33 })
+            (NoEpAnns)
+            (EpaComments
+             []))
            { DumpRenamedAst.hs:16:17-33 })
           (KindSig
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:20-33 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:16:20-33 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:16:20-33 })
             (HsFunTy
              (EpAnn
               (EpaSpan { DumpRenamedAst.hs:16:20-33 })
@@ -433,15 +820,34 @@
                 (EpaSpan { DumpRenamedAst.hs:16:22-23 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:20 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:16:20 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:16:20 })
               (HsTyVar
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaDelta (SameLine 0) [])
+                []
+                (EpaComments
+                 []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:20 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:16:20 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:16:20 })
                 {Name: k})))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:25-33 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:16:25-33 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:16:25-33 })
               (HsFunTy
                (EpAnn
                 (EpaSpan { DumpRenamedAst.hs:16:25-33 })
@@ -454,20 +860,48 @@
                   (EpaSpan { DumpRenamedAst.hs:16:27-28 }))
                  (HsNormalTok)))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:25 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:16:25 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:16:25 })
                 (HsTyVar
-                 (EpAnnNotUsed)
+                 (EpAnn
+                  (EpaDelta (SameLine 0) [])
+                  []
+                  (EpaComments
+                   []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:25 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:16:25 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:16:25 })
                   {Name: k})))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:30-33 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:16:30-33 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:16:30-33 })
                 (HsTyVar
-                 (EpAnnNotUsed)
+                 (EpAnn
+                  (EpaDelta (SameLine 0) [])
+                  []
+                  (EpaComments
+                   []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:30-33 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:16:30-33 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:16:30-33 })
                   {Name: GHC.Types.Type})))))))))
          (Nothing))))]
      []
@@ -483,20 +917,46 @@
         (NoExtField)
         (DataFamInstDecl
          (FamEqn
-          (EpAnnNotUsed)
+          (EpAnn
+           (EpaDelta (SameLine 0) [])
+           []
+           (EpaComments
+            []))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:18-20 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpRenamedAst.hs:19:18-20 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { DumpRenamedAst.hs:19:18-20 })
            {Name: DumpRenamedAst.Nat})
           (HsOuterImplicit
            [{Name: a}
            ,{Name: k}])
           [(HsValArg
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:22-37 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:19:22-37 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:19:22-37 })
              (HsParTy
-              (EpAnnNotUsed)
+              (EpAnn
+               (EpaDelta (SameLine 0) [])
+               (AnnParen
+                (AnnParens)
+                (EpaDelta (SameLine 0) [])
+                (EpaDelta (SameLine 0) []))
+               (EpaComments
+                []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:23-36 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:19:23-36 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:19:23-36 })
                (HsKindSig
                 (EpAnn
                  (EpaSpan { DumpRenamedAst.hs:19:23-36 })
@@ -504,15 +964,34 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:23 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:19:23 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:19:23 })
                  (HsTyVar
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:23 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:19:23 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:19:23 })
                    {Name: a})))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:28-36 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:19:28-36 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:19:28-36 })
                  (HsFunTy
                   (EpAnn
                    (EpaSpan { DumpRenamedAst.hs:19:28-36 })
@@ -525,20 +1004,48 @@
                      (EpaSpan { DumpRenamedAst.hs:19:30-31 }))
                     (HsNormalTok)))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:28 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:19:28 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:19:28 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:28 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:19:28 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:19:28 })
                      {Name: k})))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:33-36 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:19:33-36 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:19:33-36 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:33-36 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:19:33-36 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:19:33-36 })
                      {Name: GHC.Types.Type}))))))))))]
           (Prefix)
           (HsDataDefn
@@ -547,7 +1054,12 @@
            (Nothing)
            (Just
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:42-60 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:19:42-60 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:19:42-60 })
              (HsFunTy
               (EpAnn
                (EpaSpan { DumpRenamedAst.hs:19:42-60 })
@@ -560,11 +1072,28 @@
                  (EpaSpan { DumpRenamedAst.hs:19:54-55 }))
                 (HsNormalTok)))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:42-52 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:19:42-52 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:19:42-52 })
                (HsParTy
-                (EpAnnNotUsed)
+                (EpAnn
+                 (EpaDelta (SameLine 0) [])
+                 (AnnParen
+                  (AnnParens)
+                  (EpaDelta (SameLine 0) [])
+                  (EpaDelta (SameLine 0) []))
+                 (EpaComments
+                  []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:43-51 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:19:43-51 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:19:43-51 })
                  (HsFunTy
                   (EpAnn
                    (EpaSpan { DumpRenamedAst.hs:19:43-51 })
@@ -577,37 +1106,93 @@
                      (EpaSpan { DumpRenamedAst.hs:19:45-46 }))
                     (HsNormalTok)))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:43 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:19:43 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:19:43 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:43 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:19:43 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:19:43 })
                      {Name: k})))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:48-51 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:19:48-51 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:19:48-51 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:48-51 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:19:48-51 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:19:48-51 })
                      {Name: GHC.Types.Type})))))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:57-60 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:19:57-60 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:19:57-60 })
                (HsTyVar
-                (EpAnnNotUsed)
+                (EpAnn
+                 (EpaDelta (SameLine 0) [])
+                 []
+                 (EpaComments
+                  []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:57-60 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:19:57-60 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:19:57-60 })
                  {Name: GHC.Types.Type}))))))
            (NewTypeCon
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:3-45 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:20:3-45 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:20:3-45 })
              (ConDeclGADT
-              (EpAnnNotUsed)
+              (EpAnn
+               (EpaDelta (SameLine 0) [])
+               []
+               (EpaComments
+                []))
               (:|
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:3-5 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:20:3-5 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:20:3-5 })
                 {Name: DumpRenamedAst.Nat})
                [])
               (L
@@ -615,7 +1200,12 @@
                 (EpaSpan { DumpRenamedAst.hs:20:7-8 }))
                (HsNormalTok))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:10-45 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:20:10-45 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:20:10-45 })
                (HsOuterImplicit
                 [{Name: f}
                 ,{Name: g}]))
@@ -635,15 +1225,38 @@
                                (EpaComments
                                 [])) { DumpRenamedAst.hs:20:10-34 })
                   (HsParTy
-                   (EpAnnNotUsed)
+                   (EpAnn
+                    (EpaDelta (SameLine 0) [])
+                    (AnnParen
+                     (AnnParens)
+                     (EpaDelta (SameLine 0) [])
+                     (EpaDelta (SameLine 0) []))
+                    (EpaComments
+                     []))
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:11-33 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpRenamedAst.hs:20:11-33 })
+                                 (AnnListItem
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpRenamedAst.hs:20:11-33 })
                     (HsForAllTy
                      (NoExtField)
                      (HsForAllInvis
-                      (EpAnnNotUsed)
+                      (EpAnn
+                       (EpaDelta (SameLine 0) [])
+                       ((,)
+                        (AddEpAnn Annlarrowtail (EpaDelta (SameLine 0) []))
+                        (AddEpAnn Annlarrowtail (EpaDelta (SameLine 0) [])))
+                       (EpaComments
+                        []))
                       [(L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:18-19 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpRenamedAst.hs:20:18-19 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpRenamedAst.hs:20:18-19 })
                         (UserTyVar
                          (EpAnn
                           (EpaSpan { DumpRenamedAst.hs:20:18-19 })
@@ -652,10 +1265,20 @@
                            []))
                          (SpecifiedSpec)
                          (L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:18-19 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpRenamedAst.hs:20:18-19 })
+                                       (NameAnnTrailing
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpRenamedAst.hs:20:18-19 })
                           {Name: xx})))])
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:22-33 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpRenamedAst.hs:20:22-33 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpRenamedAst.hs:20:22-33 })
                       (HsFunTy
                        (EpAnn
                         (EpaSpan { DumpRenamedAst.hs:20:22-33 })
@@ -668,76 +1291,194 @@
                           (EpaSpan { DumpRenamedAst.hs:20:27-28 }))
                          (HsNormalTok)))
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:22-25 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpRenamedAst.hs:20:22-25 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpRenamedAst.hs:20:22-25 })
                         (HsAppTy
                          (NoExtField)
                          (L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:22 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpRenamedAst.hs:20:22 })
+                                       (AnnListItem
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpRenamedAst.hs:20:22 })
                           (HsTyVar
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaDelta (SameLine 0) [])
+                            []
+                            (EpaComments
+                             []))
                            (NotPromoted)
                            (L
-                            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:22 })
+                            (SrcSpanAnn (EpAnn
+                                         (EpaSpan { DumpRenamedAst.hs:20:22 })
+                                         (NameAnnTrailing
+                                          [])
+                                         (EpaComments
+                                          [])) { DumpRenamedAst.hs:20:22 })
                             {Name: f})))
                          (L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:24-25 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpRenamedAst.hs:20:24-25 })
+                                       (AnnListItem
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpRenamedAst.hs:20:24-25 })
                           (HsTyVar
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaDelta (SameLine 0) [])
+                            []
+                            (EpaComments
+                             []))
                            (NotPromoted)
                            (L
-                            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:24-25 })
+                            (SrcSpanAnn (EpAnn
+                                         (EpaSpan { DumpRenamedAst.hs:20:24-25 })
+                                         (NameAnnTrailing
+                                          [])
+                                         (EpaComments
+                                          [])) { DumpRenamedAst.hs:20:24-25 })
                             {Name: xx})))))
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:30-33 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpRenamedAst.hs:20:30-33 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpRenamedAst.hs:20:30-33 })
                         (HsAppTy
                          (NoExtField)
                          (L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:30 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpRenamedAst.hs:20:30 })
+                                       (AnnListItem
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpRenamedAst.hs:20:30 })
                           (HsTyVar
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaDelta (SameLine 0) [])
+                            []
+                            (EpaComments
+                             []))
                            (NotPromoted)
                            (L
-                            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:30 })
+                            (SrcSpanAnn (EpAnn
+                                         (EpaSpan { DumpRenamedAst.hs:20:30 })
+                                         (NameAnnTrailing
+                                          [])
+                                         (EpaComments
+                                          [])) { DumpRenamedAst.hs:20:30 })
                             {Name: g})))
                          (L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:32-33 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpRenamedAst.hs:20:32-33 })
+                                       (AnnListItem
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpRenamedAst.hs:20:32-33 })
                           (HsTyVar
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaDelta (SameLine 0) [])
+                            []
+                            (EpaComments
+                             []))
                            (NotPromoted)
                            (L
-                            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:32-33 })
+                            (SrcSpanAnn (EpAnn
+                                         (EpaSpan { DumpRenamedAst.hs:20:32-33 })
+                                         (NameAnnTrailing
+                                          [])
+                                         (EpaComments
+                                          [])) { DumpRenamedAst.hs:20:32-33 })
                             {Name: xx}))))))))))))])
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:39-45 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:20:39-45 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:20:39-45 })
                (HsAppTy
                 (NoExtField)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:39-43 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:20:39-43 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:20:39-43 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:39-41 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:20:39-41 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:20:39-41 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:39-41 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:20:39-41 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:20:39-41 })
                      {Name: DumpRenamedAst.Nat})))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:43 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:20:43 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:20:43 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:43 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:20:43 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:20:43 })
                      {Name: f})))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:45 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:20:45 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:20:45 })
                  (HsTyVar
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:45 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:20:45 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:20:45 })
                    {Name: g})))))
               (Nothing))))
            [])))))])
@@ -757,12 +1498,22 @@
           [{Name: a}
           ,{Name: f}]})
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:6 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpRenamedAst.hs:22:6 })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { DumpRenamedAst.hs:22:6 })
          {Name: DumpRenamedAst.T})
         (HsQTvs
          [{Name: k}]
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:8 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpRenamedAst.hs:22:8 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpRenamedAst.hs:22:8 })
            (UserTyVar
             (EpAnn
              (EpaSpan { DumpRenamedAst.hs:22:8 })
@@ -771,10 +1522,20 @@
               []))
             (HsBndrRequired)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:8 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:22:8 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:22:8 })
              {Name: f})))
          ,(L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:10-17 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpRenamedAst.hs:22:10-17 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpRenamedAst.hs:22:10-17 })
            (KindedTyVar
             (EpAnn
              (EpaSpan { DumpRenamedAst.hs:22:10-17 })
@@ -785,15 +1546,34 @@
               []))
             (HsBndrRequired)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:11 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:22:11 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:22:11 })
              {Name: a})
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:16 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:22:16 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:22:16 })
              (HsTyVar
-              (EpAnnNotUsed)
+              (EpAnn
+               (EpaDelta (SameLine 0) [])
+               []
+               (EpaComments
+                []))
               (NotPromoted)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:16 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:22:16 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:22:16 })
                {Name: k})))))])
         (Prefix)
         (HsDataDefn
@@ -804,11 +1584,25 @@
          (DataTypeCons
           (False)
           [(L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:21-29 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:22:21-29 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:22:21-29 })
             (ConDeclH98
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaDelta (SameLine 0) [])
+              []
+              (EpaComments
+               []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:21-23 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:22:21-23 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:22:21-23 })
               {Name: DumpRenamedAst.MkT})
              (False)
              []
@@ -825,28 +1619,73 @@
                    (NoTokenLoc)
                    (HsNormalTok))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:25-29 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:22:25-29 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:22:25-29 })
                  (HsParTy
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   (AnnParen
+                    (AnnParens)
+                    (EpaDelta (SameLine 0) [])
+                    (EpaDelta (SameLine 0) []))
+                   (EpaComments
+                    []))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:26-28 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:22:26-28 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:22:26-28 })
                    (HsAppTy
                     (NoExtField)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:26 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:22:26 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:22:26 })
                      (HsTyVar
-                      (EpAnnNotUsed)
+                      (EpAnn
+                       (EpaDelta (SameLine 0) [])
+                       []
+                       (EpaComments
+                        []))
                       (NotPromoted)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:26 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:22:26 })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:22:26 })
                        {Name: f})))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:28 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:22:28 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:22:28 })
                      (HsTyVar
-                      (EpAnnNotUsed)
+                      (EpAnn
+                       (EpaDelta (SameLine 0) [])
+                       []
+                       (EpaComments
+                        []))
                       (NotPromoted)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:28 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:22:28 })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:22:28 })
                        {Name: a}))))))))])
              (Nothing)))])
          [])))]
@@ -865,15 +1704,33 @@
        (FamDecl
         (NoExtField)
         (FamilyDecl
-         (EpAnnNotUsed)
+         (EpAnn
+          (EpaDelta (SameLine 0) [])
+          []
+          (EpaComments
+           []))
          (ClosedTypeFamily
           (Just
            [(L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:3-30 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:26:3-30 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:26:3-30 })
              (FamEqn
-              (EpAnnNotUsed)
+              (EpAnn
+               (EpaDelta (SameLine 0) [])
+               []
+               (EpaComments
+                []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:3-4 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:26:3-4 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:26:3-4 })
                {Name: DumpRenamedAst.F1})
               (HsOuterImplicit
                [{Name: a}
@@ -884,88 +1741,211 @@
                   (EpaSpan { DumpRenamedAst.hs:26:6 }))
                  (HsTok))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:7-11 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:26:7-11 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:26:7-11 })
                  (HsTyVar
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:7-11 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:26:7-11 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:26:7-11 })
                    {Name: DumpRenamedAst.Peano}))))
               ,(HsValArg
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:13 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:26:13 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:26:13 })
                  (HsTyVar
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:13 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:26:13 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:26:13 })
                    {Name: a}))))
               ,(HsValArg
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:15 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:26:15 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:26:15 })
                  (HsTyVar
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:15 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:26:15 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:26:15 })
                    {Name: f}))))]
               (Prefix)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:19-30 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:26:19-30 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:26:19-30 })
                (HsAppTy
                 (NoExtField)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:19-28 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:26:19-28 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:26:19-28 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:19-26 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:26:19-26 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:26:19-26 })
                    (HsAppKindTy
                     (NoExtField)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:19 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:26:19 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:26:19 })
                      (HsTyVar
-                      (EpAnnNotUsed)
+                      (EpAnn
+                       (EpaDelta (SameLine 0) [])
+                       []
+                       (EpaComments
+                        []))
                       (NotPromoted)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:19 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:26:19 })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:26:19 })
                        {Name: DumpRenamedAst.T})))
                     (L
                      (TokenLoc
                       (EpaSpan { DumpRenamedAst.hs:26:21 }))
                      (HsTok))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:22-26 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:26:22-26 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:26:22-26 })
                      (HsTyVar
-                      (EpAnnNotUsed)
+                      (EpAnn
+                       (EpaDelta (SameLine 0) [])
+                       []
+                       (EpaComments
+                        []))
                       (NotPromoted)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:22-26 })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { DumpRenamedAst.hs:26:22-26 })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { DumpRenamedAst.hs:26:22-26 })
                        {Name: DumpRenamedAst.Peano})))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:28 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:26:28 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:26:28 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:28 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:26:28 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:26:28 })
                      {Name: f})))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:30 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:26:30 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:26:30 })
                  (HsTyVar
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:26:30 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:26:30 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:26:30 })
                    {Name: a})))))))]))
          (TopLevel)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:13-14 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpRenamedAst.hs:25:13-14 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { DumpRenamedAst.hs:25:13-14 })
           {Name: DumpRenamedAst.F1})
          (HsQTvs
           [{Name: k}]
           [(L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:16-23 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:25:16-23 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:25:16-23 })
             (KindedTyVar
              (EpAnn
               (EpaSpan { DumpRenamedAst.hs:25:16-23 })
@@ -976,18 +1956,42 @@
                []))
              (HsBndrRequired)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:17 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:25:17 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:25:17 })
               {Name: a})
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:22 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:25:22 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:25:22 })
               (HsTyVar
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaDelta (SameLine 0) [])
+                []
+                (EpaComments
+                 []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:22 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:25:22 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:25:22 })
                 {Name: k})))))
           ,(L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:25-40 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:25:25-40 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:25:25-40 })
             (KindedTyVar
              (EpAnn
               (EpaSpan { DumpRenamedAst.hs:25:25-40 })
@@ -998,10 +2002,20 @@
                []))
              (HsBndrRequired)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:26 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:25:26 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:25:26 })
               {Name: f})
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:31-39 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:25:31-39 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:25:31-39 })
               (HsFunTy
                (EpAnn
                 (EpaSpan { DumpRenamedAst.hs:25:31-39 })
@@ -1014,35 +2028,81 @@
                   (EpaSpan { DumpRenamedAst.hs:25:33-34 }))
                  (HsNormalTok)))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:31 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:25:31 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:25:31 })
                 (HsTyVar
-                 (EpAnnNotUsed)
+                 (EpAnn
+                  (EpaDelta (SameLine 0) [])
+                  []
+                  (EpaComments
+                   []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:31 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:25:31 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:25:31 })
                   {Name: k})))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:36-39 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:25:36-39 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:25:36-39 })
                 (HsTyVar
-                 (EpAnnNotUsed)
+                 (EpAnn
+                  (EpaDelta (SameLine 0) [])
+                  []
+                  (EpaComments
+                   []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:36-39 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:25:36-39 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:25:36-39 })
                   {Name: GHC.Types.Type})))))))])
          (Prefix)
          (L
           (SrcSpanAnn
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaSpan { DumpRenamedAst.hs:25:42-48 })
+            (NoEpAnns)
+            (EpaComments
+             []))
            { DumpRenamedAst.hs:25:42-48 })
           (KindSig
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:45-48 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:25:45-48 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:25:45-48 })
             (HsTyVar
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaDelta (SameLine 0) [])
+              []
+              (EpaComments
+               []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:45-48 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:25:45-48 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:25:45-48 })
               {Name: GHC.Types.Type})))))
          (Nothing))))]
      []
@@ -1056,16 +2116,31 @@
        (StandaloneKindSig
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:6-7 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpRenamedAst.hs:24:6-7 })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { DumpRenamedAst.hs:24:6-7 })
          {Name: DumpRenamedAst.F1})
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:12-35 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpRenamedAst.hs:24:12-35 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { DumpRenamedAst.hs:24:12-35 })
          (HsSig
           (NoExtField)
           (HsOuterImplicit
            [{Name: k}])
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:12-35 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpRenamedAst.hs:24:12-35 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpRenamedAst.hs:24:12-35 })
            (HsFunTy
             (EpAnn
              (EpaSpan { DumpRenamedAst.hs:24:12-35 })
@@ -1078,15 +2153,34 @@
                (EpaSpan { DumpRenamedAst.hs:24:14-15 }))
               (HsNormalTok)))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:12 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:24:12 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:24:12 })
              (HsTyVar
-              (EpAnnNotUsed)
+              (EpAnn
+               (EpaDelta (SameLine 0) [])
+               []
+               (EpaComments
+                []))
               (NotPromoted)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:12 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:24:12 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:24:12 })
                {Name: k})))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:17-35 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:24:17-35 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:24:17-35 })
              (HsFunTy
               (EpAnn
                (EpaSpan { DumpRenamedAst.hs:24:17-35 })
@@ -1099,11 +2193,28 @@
                  (EpaSpan { DumpRenamedAst.hs:24:29-30 }))
                 (HsNormalTok)))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:17-27 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:24:17-27 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:24:17-27 })
                (HsParTy
-                (EpAnnNotUsed)
+                (EpAnn
+                 (EpaDelta (SameLine 0) [])
+                 (AnnParen
+                  (AnnParens)
+                  (EpaDelta (SameLine 0) [])
+                  (EpaDelta (SameLine 0) []))
+                 (EpaComments
+                  []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:18-26 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:24:18-26 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:24:18-26 })
                  (HsFunTy
                   (EpAnn
                    (EpaSpan { DumpRenamedAst.hs:24:18-26 })
@@ -1116,28 +2227,70 @@
                      (EpaSpan { DumpRenamedAst.hs:24:20-21 }))
                     (HsNormalTok)))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:18 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:24:18 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:24:18 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:18 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:24:18 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:24:18 })
                      {Name: k})))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:23-26 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpRenamedAst.hs:24:23-26 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpRenamedAst.hs:24:23-26 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:23-26 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpRenamedAst.hs:24:23-26 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpRenamedAst.hs:24:23-26 })
                      {Name: GHC.Types.Type})))))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:32-35 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpRenamedAst.hs:24:32-35 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { DumpRenamedAst.hs:24:32-35 })
                (HsTyVar
-                (EpAnnNotUsed)
+                (EpAnn
+                 (EpaDelta (SameLine 0) [])
+                 []
+                 (EpaComments
+                  []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:32-35 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { DumpRenamedAst.hs:24:32-35 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { DumpRenamedAst.hs:24:32-35 })
                  {Name: GHC.Types.Type})))))))))))]
      [])
    ,(TyClGroup
@@ -1156,12 +2309,22 @@
          (3))
         (Nothing)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:28:7 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpRenamedAst.hs:28:7 })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { DumpRenamedAst.hs:28:7 })
          {Name: DumpRenamedAst.C})
         (HsQTvs
          []
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:28:9 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpRenamedAst.hs:28:9 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpRenamedAst.hs:28:9 })
            (UserTyVar
             (EpAnn
              (EpaSpan { DumpRenamedAst.hs:28:9 })
@@ -1170,7 +2333,12 @@
               []))
             (HsBndrRequired)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:28:9 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpRenamedAst.hs:28:9 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpRenamedAst.hs:28:9 })
              {Name: a})))])
         (Prefix)
         []
@@ -1178,18 +2346,37 @@
         {Bag(LocatedA (HsBind Name)):
          []}
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:29:3-12 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpRenamedAst.hs:29:3-12 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpRenamedAst.hs:29:3-12 })
           (FamilyDecl
-           (EpAnnNotUsed)
+           (EpAnn
+            (EpaDelta (SameLine 0) [])
+            []
+            (EpaComments
+             []))
            (OpenTypeFamily)
            (NotTopLevel)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:29:8 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:29:8 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:29:8 })
             {Name: DumpRenamedAst.F})
            (HsQTvs
             []
             [(L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:29:10 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:29:10 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:29:10 })
               (UserTyVar
                (EpAnn
                 (EpaSpan { DumpRenamedAst.hs:29:10 })
@@ -1198,10 +2385,20 @@
                  []))
                (HsBndrRequired)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:29:10 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:29:10 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:29:10 })
                 {Name: a})))
             ,(L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:29:12 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:29:12 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:29:12 })
               (UserTyVar
                (EpAnn
                 (EpaSpan { DumpRenamedAst.hs:29:12 })
@@ -1210,12 +2407,21 @@
                  []))
                (HsBndrRequired)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:29:12 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:29:12 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:29:12 })
                 {Name: b})))])
            (Prefix)
            (L
             (SrcSpanAnn
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaSpan { <no location info> })
+              (NoEpAnns)
+              (EpaComments
+               []))
              { <no location info> })
             (NoSig
              (NoExtField)))
@@ -1236,25 +2442,54 @@
         (ClsInstDecl
          (Nothing)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:31:10-14 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpRenamedAst.hs:31:10-14 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpRenamedAst.hs:31:10-14 })
           (HsSig
            (NoExtField)
            (HsOuterImplicit
             [{Name: a}])
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:31:10-14 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:31:10-14 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:31:10-14 })
             (HsAppTy
              (NoExtField)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:31:10 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:31:10 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:31:10 })
               (HsTyVar
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaDelta (SameLine 0) [])
+                []
+                (EpaComments
+                 []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:31:10 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:31:10 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:31:10 })
                 {Name: DumpRenamedAst.C})))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:31:12-14 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:31:12-14 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:31:12-14 })
               (HsListTy
                (EpAnn
                 (EpaSpan { DumpRenamedAst.hs:31:12-14 })
@@ -1265,18 +2500,37 @@
                 (EpaComments
                  []))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:31:13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:31:13 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:31:13 })
                 (HsTyVar
-                 (EpAnnNotUsed)
+                 (EpAnn
+                  (EpaDelta (SameLine 0) [])
+                  []
+                  (EpaComments
+                   []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:31:13 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:31:13 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:31:13 })
                   {Name: a})))))))))
          {Bag(LocatedA (HsBind Name)):
           []}
          []
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:3-27 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpRenamedAst.hs:32:3-27 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpRenamedAst.hs:32:3-27 })
            (TyFamInstDecl
             (EpAnn
              (EpaSpan { DumpRenamedAst.hs:32:3-27 })
@@ -1284,15 +2538,29 @@
              (EpaComments
               []))
             (FamEqn
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaDelta (SameLine 0) [])
+              []
+              (EpaComments
+               []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:8 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:32:8 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:32:8 })
               {Name: DumpRenamedAst.F})
              (HsOuterImplicit
               [{Name: b}])
              [(HsValArg
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:10-12 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:32:10-12 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:32:10-12 })
                 (HsListTy
                  (EpAnn
                   (EpaSpan { DumpRenamedAst.hs:32:10-12 })
@@ -1303,54 +2571,134 @@
                   (EpaComments
                    []))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:11 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:32:11 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:32:11 })
                   (HsTyVar
-                   (EpAnnNotUsed)
+                   (EpAnn
+                    (EpaDelta (SameLine 0) [])
+                    []
+                    (EpaComments
+                     []))
                    (NotPromoted)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:11 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpRenamedAst.hs:32:11 })
+                                 (NameAnnTrailing
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpRenamedAst.hs:32:11 })
                     {Name: a}))))))
              ,(HsValArg
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:14 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:32:14 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:32:14 })
                 (HsTyVar
-                 (EpAnnNotUsed)
+                 (EpAnn
+                  (EpaDelta (SameLine 0) [])
+                  []
+                  (EpaComments
+                   []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:14 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:32:14 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:32:14 })
                   {Name: b}))))]
              (Prefix)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:18-27 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:32:18-27 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:32:18-27 })
               (HsAppTy
                (NoExtField)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:18-25 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:32:18-25 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:32:18-25 })
                 (HsAppTy
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:18-23 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:32:18-23 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:32:18-23 })
                   (HsTyVar
-                   (EpAnnNotUsed)
+                   (EpAnn
+                    (EpaDelta (SameLine 0) [])
+                    []
+                    (EpaComments
+                     []))
                    (NotPromoted)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:18-23 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpRenamedAst.hs:32:18-23 })
+                                 (NameAnnTrailing
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpRenamedAst.hs:32:18-23 })
                     {Name: Data.Either.Either})))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:25 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:32:25 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:32:25 })
                   (HsTyVar
-                   (EpAnnNotUsed)
+                   (EpAnn
+                    (EpaDelta (SameLine 0) [])
+                    []
+                    (EpaComments
+                     []))
                    (NotPromoted)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:25 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpRenamedAst.hs:32:25 })
+                                 (NameAnnTrailing
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpRenamedAst.hs:32:25 })
                     {Name: a})))))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:27 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpRenamedAst.hs:32:27 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpRenamedAst.hs:32:27 })
                 (HsTyVar
-                 (EpAnnNotUsed)
+                 (EpAnn
+                  (EpaDelta (SameLine 0) [])
+                  []
+                  (EpaComments
+                   []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:27 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpRenamedAst.hs:32:27 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpRenamedAst.hs:32:27 })
                   {Name: b}))))))))]
          []
          (Nothing))))])]
@@ -1363,14 +2711,34 @@
    []
    [])
   [(L
-    (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:4:8-21 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { DumpRenamedAst.hs:4:8-21 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { DumpRenamedAst.hs:4:8-21 })
     (ImportDecl
      (XImportDeclPass
-      (EpAnnNotUsed)
+      (EpAnn
+       (EpaDelta (SameLine 0) [])
+       (EpAnnImportDecl
+        (EpaDelta (SameLine 0) [])
+        (Nothing)
+        (Nothing)
+        (Nothing)
+        (Nothing)
+        (Nothing))
+       (EpaComments
+        []))
       (NoSourceText)
       (True))
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:4:8-21 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { DumpRenamedAst.hs:4:8-21 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { DumpRenamedAst.hs:4:8-21 })
       {ModuleName: Prelude})
      (NoPkgQual)
      (NotBoot)
@@ -1379,7 +2747,12 @@
      (Nothing)
      (Nothing)))
   ,(L
-    (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:5:1-16 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { DumpRenamedAst.hs:5:1-16 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { DumpRenamedAst.hs:5:1-16 })
     (ImportDecl
      (XImportDeclPass
       (EpAnn
@@ -1396,7 +2769,12 @@
       (NoSourceText)
       (False))
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:5:8-16 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { DumpRenamedAst.hs:5:8-16 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { DumpRenamedAst.hs:5:8-16 })
       {ModuleName: Data.Kind})
      (NoPkgQual)
      (NotBoot)
@@ -1405,7 +2783,12 @@
      (Nothing)
      (Nothing)))
   ,(L
-    (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:7:1-23 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { DumpRenamedAst.hs:7:1-23 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { DumpRenamedAst.hs:7:1-23 })
     (ImportDecl
      (XImportDeclPass
       (EpAnn
@@ -1422,7 +2805,12 @@
       (NoSourceText)
       (False))
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:7:8-16 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { DumpRenamedAst.hs:7:8-16 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { DumpRenamedAst.hs:7:8-16 })
       {ModuleName: Data.Kind})
      (NoPkgQual)
      (NotBoot)
@@ -1446,17 +2834,36 @@
                      (EpaComments
                       [])) { DumpRenamedAst.hs:7:18-23 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:7:19-22 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpRenamedAst.hs:7:19-22 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpRenamedAst.hs:7:19-22 })
           (IEThingAbs
            ((,)
             (Nothing)
-            (EpAnnNotUsed))
+            (EpAnn
+             (EpaDelta (SameLine 0) [])
+             []
+             (EpaComments
+              [])))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:7:19-22 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpRenamedAst.hs:7:19-22 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpRenamedAst.hs:7:19-22 })
             (IEName
              (NoExtField)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:7:19-22 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpRenamedAst.hs:7:19-22 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpRenamedAst.hs:7:19-22 })
               {Name: GHC.Types.Type})))))])))))]
   (Nothing)
   (Nothing)))
diff --git a/testsuite/tests/parser/should_compile/DumpSemis.stderr b/testsuite/tests/parser/should_compile/DumpSemis.stderr
index 44dd141acd0c..a0cca938758e 100644
--- a/testsuite/tests/parser/should_compile/DumpSemis.stderr
+++ b/testsuite/tests/parser/should_compile/DumpSemis.stderr
@@ -35,7 +35,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:1:8-16 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { DumpSemis.hs:1:8-16 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { DumpSemis.hs:1:8-16 })
     {ModuleName: DumpSemis}))
   (Nothing)
   [(L
@@ -66,7 +71,12 @@
       (NoSourceText)
       (False))
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:5:8-16 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { DumpSemis.hs:5:8-16 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { DumpSemis.hs:5:8-16 })
       {ModuleName: Data.List})
      (NoRawPkgQual)
      (NotBoot)
@@ -118,7 +128,12 @@
       (NoSourceText)
       (False))
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:7:8-16 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { DumpSemis.hs:7:8-16 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { DumpSemis.hs:7:8-16 })
       {ModuleName: Data.Kind})
      (NoRawPkgQual)
      (NotBoot)
@@ -144,23 +159,43 @@
        (EpaComments
         []))
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:9:1-3 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:9:1-3 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:9:1-3 })
         (Unqual
          {OccName: foo}))]
       (HsWC
        (NoExtField)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:9:8-12 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:9:8-12 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:9:8-12 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:9:8-12 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:9:8-12 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:9:8-12 })
           (HsAppTy
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:9:8-9 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpSemis.hs:9:8-9 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpSemis.hs:9:8-9 })
             (HsTyVar
              (EpAnn
               (EpaSpan { DumpSemis.hs:9:8-9 })
@@ -169,11 +204,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:9:8-9 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpSemis.hs:9:8-9 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpSemis.hs:9:8-9 })
               (Unqual
                {OccName: IO}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:9:11-12 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpSemis.hs:9:11-12 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpSemis.hs:9:11-12 })
             (HsTupleTy
              (EpAnn
               (EpaSpan { DumpSemis.hs:9:11-12 })
@@ -202,15 +247,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:10:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:10:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:10:1-3 })
        (Unqual
         {OccName: foo}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(10,1)-(12,3) })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:(10,1)-(12,3) })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:(10,1)-(12,3) })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(10,1)-(12,3) })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:(10,1)-(12,3) })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:(10,1)-(12,3) })
           (Match
            (EpAnn
             (EpaSpan { DumpSemis.hs:(10,1)-(12,3) })
@@ -219,7 +283,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:10:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:10:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:10:1-3 })
              (Unqual
               {OccName: foo}))
             (Prefix)
@@ -230,7 +299,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpSemis.hs:(10,5)-(12,3) })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpSemis.hs:(10,5)-(12,3) })
               (GRHS
                (EpAnn
@@ -242,7 +315,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(10,7)-(12,3) })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:(10,7)-(12,3) })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:(10,7)-(12,3) })
                 (HsDo
                  (EpAnn
                   (EpaSpan { DumpSemis.hs:(10,7)-(12,3) })
@@ -270,11 +348,21 @@
                                (EpaComments
                                 [])) { DumpSemis.hs:(11,3)-(12,3) })
                   [(L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:11:3-15 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpSemis.hs:11:3-15 })
+                                 (AnnListItem
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpSemis.hs:11:3-15 })
                     (BodyStmt
                      (NoExtField)
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:11:3-15 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpSemis.hs:11:3-15 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpSemis.hs:11:3-15 })
                       (HsDo
                        (EpAnn
                         (EpaSpan { DumpSemis.hs:11:3-15 })
@@ -307,15 +395,30 @@
                                      (EpaComments
                                       [])) { DumpSemis.hs:11:6-15 })
                         [(L
-                          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:11:13 })
+                          (SrcSpanAnn (EpAnn
+                                       (EpaSpan { DumpSemis.hs:11:13 })
+                                       (AnnListItem
+                                        [])
+                                       (EpaComments
+                                        [])) { DumpSemis.hs:11:13 })
                           (BodyStmt
                            (NoExtField)
                            (L
-                            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:11:13 })
+                            (SrcSpanAnn (EpAnn
+                                         (EpaSpan { DumpSemis.hs:11:13 })
+                                         (AnnListItem
+                                          [])
+                                         (EpaComments
+                                          [])) { DumpSemis.hs:11:13 })
                             (HsVar
                              (NoExtField)
                              (L
-                              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:11:13 })
+                              (SrcSpanAnn (EpAnn
+                                           (EpaSpan { DumpSemis.hs:11:13 })
+                                           (NameAnnTrailing
+                                            [])
+                                           (EpaComments
+                                            [])) { DumpSemis.hs:11:13 })
                               (Unqual
                                {OccName: a}))))
                            (NoExtField)
@@ -323,15 +426,30 @@
                      (NoExtField)
                      (NoExtField)))
                   ,(L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:12:3 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpSemis.hs:12:3 })
+                                 (AnnListItem
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpSemis.hs:12:3 })
                     (BodyStmt
                      (NoExtField)
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:12:3 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpSemis.hs:12:3 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpSemis.hs:12:3 })
                       (HsVar
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:12:3 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:12:3 })
+                                     (NameAnnTrailing
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:12:3 })
                         (Unqual
                          {OccName: a}))))
                      (NoExtField)
@@ -356,23 +474,43 @@
        (EpaComments
         []))
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:14:1-3 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:14:1-3 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:14:1-3 })
         (Unqual
          {OccName: bar}))]
       (HsWC
        (NoExtField)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:14:8-12 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:14:8-12 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:14:8-12 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:14:8-12 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:14:8-12 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:14:8-12 })
           (HsAppTy
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:14:8-9 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpSemis.hs:14:8-9 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpSemis.hs:14:8-9 })
             (HsTyVar
              (EpAnn
               (EpaSpan { DumpSemis.hs:14:8-9 })
@@ -381,11 +519,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:14:8-9 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpSemis.hs:14:8-9 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpSemis.hs:14:8-9 })
               (Unqual
                {OccName: IO}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:14:11-12 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpSemis.hs:14:11-12 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpSemis.hs:14:11-12 })
             (HsTupleTy
              (EpAnn
               (EpaSpan { DumpSemis.hs:14:11-12 })
@@ -416,15 +564,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:15:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:15:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:15:1-3 })
        (Unqual
         {OccName: bar}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(15,1)-(19,3) })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:(15,1)-(19,3) })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:(15,1)-(19,3) })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(15,1)-(19,3) })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:(15,1)-(19,3) })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:(15,1)-(19,3) })
           (Match
            (EpAnn
             (EpaSpan { DumpSemis.hs:(15,1)-(19,3) })
@@ -433,7 +600,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:15:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:15:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:15:1-3 })
              (Unqual
               {OccName: bar}))
             (Prefix)
@@ -444,7 +616,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpSemis.hs:(15,5)-(19,3) })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpSemis.hs:(15,5)-(19,3) })
               (GRHS
                (EpAnn
@@ -456,7 +632,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(15,7)-(19,3) })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:(15,7)-(19,3) })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:(15,7)-(19,3) })
                 (HsDo
                  (EpAnn
                   (EpaSpan { DumpSemis.hs:(15,7)-(19,3) })
@@ -499,25 +680,50 @@
                     (BodyStmt
                      (NoExtField)
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:17:5 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpSemis.hs:17:5 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpSemis.hs:17:5 })
                       (HsVar
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:17:5 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:17:5 })
+                                     (NameAnnTrailing
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:17:5 })
                         (Unqual
                          {OccName: a}))))
                      (NoExtField)
                      (NoExtField)))
                   ,(L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:18:5 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpSemis.hs:18:5 })
+                                 (AnnListItem
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpSemis.hs:18:5 })
                     (BodyStmt
                      (NoExtField)
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:18:5 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpSemis.hs:18:5 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpSemis.hs:18:5 })
                       (HsVar
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:18:5 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:18:5 })
+                                     (NameAnnTrailing
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:18:5 })
                         (Unqual
                          {OccName: b}))))
                      (NoExtField)
@@ -542,23 +748,43 @@
        (EpaComments
         []))
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:21:1-3 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:21:1-3 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:21:1-3 })
         (Unqual
          {OccName: baz}))]
       (HsWC
        (NoExtField)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:21:8-12 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:21:8-12 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:21:8-12 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:21:8-12 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:21:8-12 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:21:8-12 })
           (HsAppTy
            (NoExtField)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:21:8-9 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpSemis.hs:21:8-9 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpSemis.hs:21:8-9 })
             (HsTyVar
              (EpAnn
               (EpaSpan { DumpSemis.hs:21:8-9 })
@@ -567,11 +793,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:21:8-9 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpSemis.hs:21:8-9 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { DumpSemis.hs:21:8-9 })
               (Unqual
                {OccName: IO}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:21:11-12 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpSemis.hs:21:11-12 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpSemis.hs:21:11-12 })
             (HsTupleTy
              (EpAnn
               (EpaSpan { DumpSemis.hs:21:11-12 })
@@ -596,15 +832,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:22:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:22:1-3 })
        (Unqual
         {OccName: baz}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:1-30 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:22:1-30 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:22:1-30 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:1-30 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:22:1-30 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:22:1-30 })
           (Match
            (EpAnn
             (EpaSpan { DumpSemis.hs:22:1-30 })
@@ -613,7 +868,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:22:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:22:1-3 })
              (Unqual
               {OccName: baz}))
             (Prefix)
@@ -624,7 +884,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpSemis.hs:22:5-30 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpSemis.hs:22:5-30 })
               (GRHS
                (EpAnn
@@ -636,7 +900,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:7-30 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:22:7-30 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:22:7-30 })
                 (HsDo
                  (EpAnn
                   (EpaSpan { DumpSemis.hs:22:7-30 })
@@ -677,11 +946,21 @@
                     (BodyStmt
                      (NoExtField)
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:15 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpSemis.hs:22:15 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpSemis.hs:22:15 })
                       (HsVar
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:15 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:22:15 })
+                                     (NameAnnTrailing
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:22:15 })
                         (Unqual
                          {OccName: s}))))
                      (NoExtField)
@@ -699,11 +978,21 @@
                     (BodyStmt
                      (NoExtField)
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:19 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpSemis.hs:22:19 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpSemis.hs:22:19 })
                       (HsVar
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:19 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:22:19 })
+                                     (NameAnnTrailing
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:22:19 })
                         (Unqual
                          {OccName: s}))))
                      (NoExtField)
@@ -721,11 +1010,21 @@
                     (BodyStmt
                      (NoExtField)
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:25 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { DumpSemis.hs:22:25 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { DumpSemis.hs:22:25 })
                       (HsVar
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:25 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:22:25 })
+                                     (NameAnnTrailing
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:22:25 })
                         (Unqual
                          {OccName: s}))))
                      (NoExtField)
@@ -744,15 +1043,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:24:1 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:24:1 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:24:1 })
        (Unqual
         {OccName: a}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:24:1-13 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:24:1-13 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:24:1-13 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:24:1-13 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:24:1-13 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:24:1-13 })
           (Match
            (EpAnn
             (EpaSpan { DumpSemis.hs:24:1-13 })
@@ -761,7 +1079,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:24:1 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:24:1 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:24:1 })
              (Unqual
               {OccName: a}))
             (Prefix)
@@ -772,7 +1095,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpSemis.hs:24:3-13 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpSemis.hs:24:3-13 })
               (GRHS
                (EpAnn
@@ -784,11 +1111,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:24:5-13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:24:5-13 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:24:5-13 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:24:5-13 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:24:5-13 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:24:5-13 })
                   (Unqual
                    {OccName: undefined}))))))]
             (EmptyLocalBinds
@@ -805,15 +1142,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:25:1 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:25:1 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:25:1 })
        (Unqual
         {OccName: b}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:25:1-13 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:25:1-13 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:25:1-13 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:25:1-13 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:25:1-13 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:25:1-13 })
           (Match
            (EpAnn
             (EpaSpan { DumpSemis.hs:25:1-13 })
@@ -822,7 +1178,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:25:1 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:25:1 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:25:1 })
              (Unqual
               {OccName: b}))
             (Prefix)
@@ -833,7 +1194,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpSemis.hs:25:3-13 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpSemis.hs:25:3-13 })
               (GRHS
                (EpAnn
@@ -845,11 +1210,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:25:5-13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:25:5-13 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:25:5-13 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:25:5-13 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:25:5-13 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:25:5-13 })
                   (Unqual
                    {OccName: undefined}))))))]
             (EmptyLocalBinds
@@ -867,15 +1242,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:26:1 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:26:1 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:26:1 })
        (Unqual
         {OccName: s}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:26:1-13 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:26:1-13 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:26:1-13 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:26:1-13 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:26:1-13 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:26:1-13 })
           (Match
            (EpAnn
             (EpaSpan { DumpSemis.hs:26:1-13 })
@@ -884,7 +1278,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:26:1 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:26:1 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:26:1 })
              (Unqual
               {OccName: s}))
             (Prefix)
@@ -895,7 +1294,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpSemis.hs:26:3-13 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpSemis.hs:26:3-13 })
               (GRHS
                (EpAnn
@@ -907,11 +1310,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:26:5-13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:26:5-13 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:26:5-13 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:26:5-13 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:26:5-13 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:26:5-13 })
                   (Unqual
                    {OccName: undefined}))))))]
             (EmptyLocalBinds
@@ -939,13 +1352,23 @@
        (3))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:28:7-19 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:28:7-19 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:28:7-19 })
        (Unqual
         {OccName: LiftingMonad2}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:28:22-38 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { DumpSemis.hs:28:22-38 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { DumpSemis.hs:28:22-38 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { DumpSemis.hs:28:22-38 })
@@ -958,11 +1381,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:28:24-28 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpSemis.hs:28:24-28 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { DumpSemis.hs:28:24-28 })
            (Unqual
             {OccName: trans}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:28:33-36 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpSemis.hs:28:33-36 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { DumpSemis.hs:28:33-36 })
            (HsTyVar
             (EpAnn
              (EpaSpan { DumpSemis.hs:28:33-36 })
@@ -971,13 +1404,23 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:28:33-36 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:28:33-36 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:28:33-36 })
              (Unqual
               {OccName: Type}))))))])
       (Prefix)
       []
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:3-23 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:29:3-23 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:29:3-23 })
         (ClassOpSig
          (EpAnn
           (EpaSpan { DumpSemis.hs:29:3-23 })
@@ -988,17 +1431,32 @@
            []))
          (False)
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:3-7 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpSemis.hs:29:3-7 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { DumpSemis.hs:29:3-7 })
            (Unqual
             {OccName: proof}))]
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:12-23 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:29:12-23 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:29:12-23 })
           (HsSig
            (NoExtField)
            (HsOuterImplicit
             (NoExtField))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:12-23 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpSemis.hs:29:12-23 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpSemis.hs:29:12-23 })
             (HsFunTy
              (EpAnn
               (EpaSpan { DumpSemis.hs:29:12-23 })
@@ -1011,7 +1469,12 @@
                 (EpaSpan { DumpSemis.hs:29:18-19 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:12-16 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpSemis.hs:29:12-16 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpSemis.hs:29:12-16 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { DumpSemis.hs:29:12-16 })
@@ -1020,11 +1483,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:12-16 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:29:12-16 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:29:12-16 })
                 (Unqual
                  {OccName: trans}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:21-23 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpSemis.hs:29:21-23 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpSemis.hs:29:21-23 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { DumpSemis.hs:29:21-23 })
@@ -1033,7 +1506,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:21-23 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:29:21-23 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:29:21-23 })
                 (Unqual
                  {OccName: Int}))))))))))]
       {Bag(LocatedA (HsBind GhcPs)):
@@ -1059,19 +1537,34 @@
        (EpaComments
         []))
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:1 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:31:1 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:31:1 })
         (Unqual
          {OccName: f}))]
       (HsWC
        (NoExtField)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:6-30 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:31:6-30 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:31:6-30 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:6-30 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:31:6-30 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:31:6-30 })
           (HsQualTy
            (NoExtField)
            (L
@@ -1099,7 +1592,12 @@
               (HsAppTy
                (NoExtField)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:8-9 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:31:8-9 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:31:8-9 })
                 (HsTyVar
                  (EpAnn
                   (EpaSpan { DumpSemis.hs:31:8-9 })
@@ -1108,11 +1606,21 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:8-9 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:31:8-9 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:31:8-9 })
                   (Unqual
                    {OccName: Eq}))))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:11 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:31:11 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:31:11 })
                 (HsTyVar
                  (EpAnn
                   (EpaSpan { DumpSemis.hs:31:11 })
@@ -1121,15 +1629,30 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:11 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:31:11 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:31:11 })
                   (Unqual
                    {OccName: a}))))))
             ,(L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:14-18 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpSemis.hs:31:14-18 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpSemis.hs:31:14-18 })
               (HsAppTy
                (NoExtField)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:14-16 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:31:14-16 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:31:14-16 })
                 (HsTyVar
                  (EpAnn
                   (EpaSpan { DumpSemis.hs:31:14-16 })
@@ -1138,11 +1661,21 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:14-16 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:31:14-16 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:31:14-16 })
                   (Unqual
                    {OccName: Ord}))))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:18 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:31:18 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:31:18 })
                 (HsTyVar
                  (EpAnn
                   (EpaSpan { DumpSemis.hs:31:18 })
@@ -1151,11 +1684,21 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:18 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:31:18 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:31:18 })
                   (Unqual
                    {OccName: a}))))))])
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:25-30 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { DumpSemis.hs:31:25-30 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { DumpSemis.hs:31:25-30 })
             (HsFunTy
              (EpAnn
               (EpaSpan { DumpSemis.hs:31:25-30 })
@@ -1168,7 +1711,12 @@
                 (EpaSpan { DumpSemis.hs:31:27-28 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:25 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpSemis.hs:31:25 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpSemis.hs:31:25 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { DumpSemis.hs:31:25 })
@@ -1177,11 +1725,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:25 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:31:25 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:31:25 })
                 (Unqual
                  {OccName: a}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:30 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { DumpSemis.hs:31:30 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { DumpSemis.hs:31:30 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { DumpSemis.hs:31:30 })
@@ -1190,7 +1748,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:30 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:31:30 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:31:30 })
                 (Unqual
                  {OccName: a}))))))))))))))
   ,(L
@@ -1210,13 +1773,27 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:32:1 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:32:1 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:32:1 })
        (Unqual
         {OccName: f}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:32:1-7 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:32:1-7 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:32:1-7 })
         [(L
           (SrcSpanAnn (EpAnn
                        (EpaSpan { DumpSemis.hs:32:1-7 })
@@ -1232,17 +1809,32 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:32:1 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:32:1 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:32:1 })
              (Unqual
               {OccName: f}))
             (Prefix)
             (NoSrcStrict))
            [(L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:32:3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:32:3 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:32:3 })
              (VarPat
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:32:3 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpSemis.hs:32:3 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpSemis.hs:32:3 })
                (Unqual
                 {OccName: x}))))]
            (GRHSs
@@ -1250,7 +1842,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpSemis.hs:32:5-7 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpSemis.hs:32:5-7 })
               (GRHS
                (EpAnn
@@ -1262,11 +1858,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:32:7 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:32:7 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:32:7 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:32:7 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:32:7 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:32:7 })
                   (Unqual
                    {OccName: x}))))))]
             (EmptyLocalBinds
@@ -1286,15 +1892,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:34:8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:34:8 })
        (Unqual
         {OccName: x}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:8-35 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:34:8-35 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:34:8-35 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:8-35 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpSemis.hs:34:8-35 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { DumpSemis.hs:34:8-35 })
           (Match
            (EpAnn
             (EpaSpan { DumpSemis.hs:34:8-35 })
@@ -1303,7 +1928,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:8 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:34:8 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:34:8 })
              (Unqual
               {OccName: x}))
             (Prefix)
@@ -1314,7 +1944,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpSemis.hs:34:9-35 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpSemis.hs:34:9-35 })
               (GRHS
                (EpAnn
@@ -1326,7 +1960,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:10-35 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:34:10-35 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:34:10-35 })
                 (HsLet
                  (EpAnn
                   (EpaSpan { DumpSemis.hs:34:10-35 })
@@ -1371,15 +2010,34 @@
                       (FunBind
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:19 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:34:19 })
+                                     (NameAnnTrailing
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:34:19 })
                         (Unqual
                          {OccName: y}))
                        (MG
                         (FromSource)
                         (L
-                         (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:19-21 })
+                         (SrcSpanAnn (EpAnn
+                                      (EpaSpan { DumpSemis.hs:34:19-21 })
+                                      (AnnList
+                                       (Nothing)
+                                       (Nothing)
+                                       (Nothing)
+                                       []
+                                       [])
+                                      (EpaComments
+                                       [])) { DumpSemis.hs:34:19-21 })
                          [(L
-                           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:19-21 })
+                           (SrcSpanAnn (EpAnn
+                                        (EpaSpan { DumpSemis.hs:34:19-21 })
+                                        (AnnListItem
+                                         [])
+                                        (EpaComments
+                                         [])) { DumpSemis.hs:34:19-21 })
                            (Match
                             (EpAnn
                              (EpaSpan { DumpSemis.hs:34:19-21 })
@@ -1388,7 +2046,12 @@
                               []))
                             (FunRhs
                              (L
-                              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:19 })
+                              (SrcSpanAnn (EpAnn
+                                           (EpaSpan { DumpSemis.hs:34:19 })
+                                           (NameAnnTrailing
+                                            [])
+                                           (EpaComments
+                                            [])) { DumpSemis.hs:34:19 })
                               (Unqual
                                {OccName: y}))
                              (Prefix)
@@ -1399,7 +2062,11 @@
                               [])
                              [(L
                                (SrcSpanAnn
-                                (EpAnnNotUsed)
+                                (EpAnn
+                                 (EpaSpan { DumpSemis.hs:34:20-21 })
+                                 (NoEpAnns)
+                                 (EpaComments
+                                  []))
                                 { DumpSemis.hs:34:20-21 })
                                (GRHS
                                 (EpAnn
@@ -1411,7 +2078,12 @@
                                   []))
                                 []
                                 (L
-                                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:21 })
+                                 (SrcSpanAnn (EpAnn
+                                              (EpaSpan { DumpSemis.hs:34:21 })
+                                              (AnnListItem
+                                               [])
+                                              (EpaComments
+                                               [])) { DumpSemis.hs:34:21 })
                                  (HsOverLit
                                   (EpAnn
                                    (EpaSpan { DumpSemis.hs:34:21 })
@@ -1444,15 +2116,34 @@
                       (FunBind
                        (NoExtField)
                        (L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:24 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:34:24 })
+                                     (NameAnnTrailing
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:34:24 })
                         (Unqual
                          {OccName: z}))
                        (MG
                         (FromSource)
                         (L
-                         (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:24-26 })
+                         (SrcSpanAnn (EpAnn
+                                      (EpaSpan { DumpSemis.hs:34:24-26 })
+                                      (AnnList
+                                       (Nothing)
+                                       (Nothing)
+                                       (Nothing)
+                                       []
+                                       [])
+                                      (EpaComments
+                                       [])) { DumpSemis.hs:34:24-26 })
                          [(L
-                           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:24-26 })
+                           (SrcSpanAnn (EpAnn
+                                        (EpaSpan { DumpSemis.hs:34:24-26 })
+                                        (AnnListItem
+                                         [])
+                                        (EpaComments
+                                         [])) { DumpSemis.hs:34:24-26 })
                            (Match
                             (EpAnn
                              (EpaSpan { DumpSemis.hs:34:24-26 })
@@ -1461,7 +2152,12 @@
                               []))
                             (FunRhs
                              (L
-                              (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:24 })
+                              (SrcSpanAnn (EpAnn
+                                           (EpaSpan { DumpSemis.hs:34:24 })
+                                           (NameAnnTrailing
+                                            [])
+                                           (EpaComments
+                                            [])) { DumpSemis.hs:34:24 })
                               (Unqual
                                {OccName: z}))
                              (Prefix)
@@ -1472,7 +2168,11 @@
                               [])
                              [(L
                                (SrcSpanAnn
-                                (EpAnnNotUsed)
+                                (EpAnn
+                                 (EpaSpan { DumpSemis.hs:34:25-26 })
+                                 (NoEpAnns)
+                                 (EpaComments
+                                  []))
                                 { DumpSemis.hs:34:25-26 })
                                (GRHS
                                 (EpAnn
@@ -1484,7 +2184,12 @@
                                   []))
                                 []
                                 (L
-                                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:26 })
+                                 (SrcSpanAnn (EpAnn
+                                              (EpaSpan { DumpSemis.hs:34:26 })
+                                              (AnnListItem
+                                               [])
+                                              (EpaComments
+                                               [])) { DumpSemis.hs:34:26 })
                                  (HsOverLit
                                   (EpAnn
                                    (EpaSpan { DumpSemis.hs:34:26 })
@@ -1506,11 +2211,21 @@
                    (EpaSpan { DumpSemis.hs:34:32-33 }))
                   (HsTok))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:35 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:34:35 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:34:35 })
                   (HsVar
                    (NoExtField)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:35 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpSemis.hs:34:35 })
+                                 (NameAnnTrailing
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpSemis.hs:34:35 })
                     (Unqual
                      {OccName: y}))))))))]
             (EmptyLocalBinds
@@ -1528,13 +2243,27 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:36:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { DumpSemis.hs:36:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { DumpSemis.hs:36:1-3 })
        (Unqual
         {OccName: fot}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(36,1)-(44,4) })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { DumpSemis.hs:(36,1)-(44,4) })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { DumpSemis.hs:(36,1)-(44,4) })
         [(L
           (SrcSpanAnn (EpAnn
                        (EpaSpan { DumpSemis.hs:(36,1)-(44,4) })
@@ -1550,17 +2279,32 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:36:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:36:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:36:1-3 })
              (Unqual
               {OccName: fot}))
             (Prefix)
             (NoSrcStrict))
            [(L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:36:5 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpSemis.hs:36:5 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpSemis.hs:36:5 })
              (VarPat
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:36:5 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { DumpSemis.hs:36:5 })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { DumpSemis.hs:36:5 })
                (Unqual
                 {OccName: x}))))]
            (GRHSs
@@ -1568,7 +2312,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { DumpSemis.hs:(36,7)-(44,4) })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { DumpSemis.hs:(36,7)-(44,4) })
               (GRHS
                (EpAnn
@@ -1580,7 +2328,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(37,3)-(44,4) })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpSemis.hs:(37,3)-(44,4) })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { DumpSemis.hs:(37,3)-(44,4) })
                 (HsCase
                  (EpAnn
                   (EpaSpan { DumpSemis.hs:(37,3)-(44,4) })
@@ -1591,11 +2344,21 @@
                   (EpaComments
                    []))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:37:8 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { DumpSemis.hs:37:8 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { DumpSemis.hs:37:8 })
                   (HsVar
                    (NoExtField)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:37:8 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { DumpSemis.hs:37:8 })
+                                 (NameAnnTrailing
+                                  [])
+                                 (EpaComments
+                                  [])) { DumpSemis.hs:37:8 })
                     (Unqual
                      {OccName: x}))))
                  (MG
@@ -1632,12 +2395,25 @@
                         []))
                       (CaseAlt)
                       [(L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:39:6 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:39:6 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:39:6 })
                         (NPat
-                         (EpAnnNotUsed)
+                         (EpAnn
+                          (EpaDelta (SameLine 0) [])
+                          []
+                          (EpaComments
+                           []))
                          (L
                           (SrcSpanAnn
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaSpan { DumpSemis.hs:39:6 })
+                            (NoEpAnns)
+                            (EpaComments
+                             []))
                            { DumpSemis.hs:39:6 })
                           (OverLit
                            (NoExtField)
@@ -1653,7 +2429,11 @@
                         [])
                        [(L
                          (SrcSpanAnn
-                          (EpAnnNotUsed)
+                          (EpAnn
+                           (EpaSpan { DumpSemis.hs:39:8-13 })
+                           (NoEpAnns)
+                           (EpaComments
+                            []))
                           { DumpSemis.hs:39:8-13 })
                          (GRHS
                           (EpAnn
@@ -1665,7 +2445,12 @@
                             []))
                           []
                           (L
-                           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:39:11-13 })
+                           (SrcSpanAnn (EpAnn
+                                        (EpaSpan { DumpSemis.hs:39:11-13 })
+                                        (AnnListItem
+                                         [])
+                                        (EpaComments
+                                         [])) { DumpSemis.hs:39:11-13 })
                            (HsLit
                             (EpAnn
                              (EpaSpan { DumpSemis.hs:39:11-13 })
@@ -1693,12 +2478,25 @@
                         []))
                       (CaseAlt)
                       [(L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:40:6 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:40:6 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:40:6 })
                         (NPat
-                         (EpAnnNotUsed)
+                         (EpAnn
+                          (EpaDelta (SameLine 0) [])
+                          []
+                          (EpaComments
+                           []))
                          (L
                           (SrcSpanAnn
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaSpan { DumpSemis.hs:40:6 })
+                            (NoEpAnns)
+                            (EpaComments
+                             []))
                            { DumpSemis.hs:40:6 })
                           (OverLit
                            (NoExtField)
@@ -1714,7 +2512,11 @@
                         [])
                        [(L
                          (SrcSpanAnn
-                          (EpAnnNotUsed)
+                          (EpAnn
+                           (EpaSpan { DumpSemis.hs:40:8-13 })
+                           (NoEpAnns)
+                           (EpaComments
+                            []))
                           { DumpSemis.hs:40:8-13 })
                          (GRHS
                           (EpAnn
@@ -1726,7 +2528,12 @@
                             []))
                           []
                           (L
-                           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:40:11-13 })
+                           (SrcSpanAnn (EpAnn
+                                        (EpaSpan { DumpSemis.hs:40:11-13 })
+                                        (AnnListItem
+                                         [])
+                                        (EpaComments
+                                         [])) { DumpSemis.hs:40:11-13 })
                            (HsLit
                             (EpAnn
                              (EpaSpan { DumpSemis.hs:40:11-13 })
@@ -1756,12 +2563,25 @@
                         []))
                       (CaseAlt)
                       [(L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:41:6 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:41:6 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:41:6 })
                         (NPat
-                         (EpAnnNotUsed)
+                         (EpAnn
+                          (EpaDelta (SameLine 0) [])
+                          []
+                          (EpaComments
+                           []))
                          (L
                           (SrcSpanAnn
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaSpan { DumpSemis.hs:41:6 })
+                            (NoEpAnns)
+                            (EpaComments
+                             []))
                            { DumpSemis.hs:41:6 })
                           (OverLit
                            (NoExtField)
@@ -1777,7 +2597,11 @@
                         [])
                        [(L
                          (SrcSpanAnn
-                          (EpAnnNotUsed)
+                          (EpAnn
+                           (EpaSpan { DumpSemis.hs:41:8-13 })
+                           (NoEpAnns)
+                           (EpaComments
+                            []))
                           { DumpSemis.hs:41:8-13 })
                          (GRHS
                           (EpAnn
@@ -1789,7 +2613,12 @@
                             []))
                           []
                           (L
-                           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:41:11-13 })
+                           (SrcSpanAnn (EpAnn
+                                        (EpaSpan { DumpSemis.hs:41:11-13 })
+                                        (AnnListItem
+                                         [])
+                                        (EpaComments
+                                         [])) { DumpSemis.hs:41:11-13 })
                            (HsLit
                             (EpAnn
                              (EpaSpan { DumpSemis.hs:41:11-13 })
@@ -1821,12 +2650,25 @@
                         []))
                       (CaseAlt)
                       [(L
-                        (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:42:6 })
+                        (SrcSpanAnn (EpAnn
+                                     (EpaSpan { DumpSemis.hs:42:6 })
+                                     (AnnListItem
+                                      [])
+                                     (EpaComments
+                                      [])) { DumpSemis.hs:42:6 })
                         (NPat
-                         (EpAnnNotUsed)
+                         (EpAnn
+                          (EpaDelta (SameLine 0) [])
+                          []
+                          (EpaComments
+                           []))
                          (L
                           (SrcSpanAnn
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaSpan { DumpSemis.hs:42:6 })
+                            (NoEpAnns)
+                            (EpaComments
+                             []))
                            { DumpSemis.hs:42:6 })
                           (OverLit
                            (NoExtField)
@@ -1842,7 +2684,11 @@
                         [])
                        [(L
                          (SrcSpanAnn
-                          (EpAnnNotUsed)
+                          (EpAnn
+                           (EpaSpan { DumpSemis.hs:42:8-13 })
+                           (NoEpAnns)
+                           (EpaComments
+                            []))
                           { DumpSemis.hs:42:8-13 })
                          (GRHS
                           (EpAnn
@@ -1854,7 +2700,12 @@
                             []))
                           []
                           (L
-                           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:42:11-13 })
+                           (SrcSpanAnn (EpAnn
+                                        (EpaSpan { DumpSemis.hs:42:11-13 })
+                                        (AnnListItem
+                                         [])
+                                        (EpaComments
+                                         [])) { DumpSemis.hs:42:11-13 })
                            (HsLit
                             (EpAnn
                              (EpaSpan { DumpSemis.hs:42:11-13 })
diff --git a/testsuite/tests/parser/should_compile/DumpTypecheckedAst.stderr b/testsuite/tests/parser/should_compile/DumpTypecheckedAst.stderr
index f51cb14314b5..3131ae0f9072 100644
--- a/testsuite/tests/parser/should_compile/DumpTypecheckedAst.stderr
+++ b/testsuite/tests/parser/should_compile/DumpTypecheckedAst.stderr
@@ -3,12 +3,22 @@
 
 {Bag(LocatedA (HsBind Var)):
  [(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: DumpTypecheckedAst.$tcT}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -16,7 +26,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -24,7 +39,12 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsApp
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -32,7 +52,12 @@
            (EpaComments
             []))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsApp
             (EpAnn
              (EpaDelta (SameLine 0) [])
@@ -40,7 +65,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -48,7 +78,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsApp
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -56,14 +91,24 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (XExpr
                   (ConLikeTc
                    ({abstract:ConLike})
                    []
                    [])))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (HsLit
                   (EpAnn
                    (EpaDelta (SameLine 0) [])
@@ -72,7 +117,12 @@
                     []))
                   {HsWord{64}Prim (1374752024144278257) (NoSourceText)}))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -81,21 +131,45 @@
                   []))
                 {HsWord{64}Prim (13654949607623281177) (NoSourceText)}))))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsVar
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                {Var: DumpTypecheckedAst.$trModule})))))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsPar
-            (EpAnnNotUsed)
+            (EpAnn
+             (EpaDelta (SameLine 0) [])
+             (NoEpAnns)
+             (EpaComments
+              []))
             (L
              (NoTokenLoc)
              (HsTok))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -103,14 +177,24 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (XExpr
                 (ConLikeTc
                  ({abstract:ConLike})
                  []
                  [])))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -124,7 +208,12 @@
              (NoTokenLoc)
              (HsTok))))))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsLit
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -133,19 +222,39 @@
             []))
           {HsInt{64}Prim (1) (NoSourceText)}))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: $krep})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: DumpTypecheckedAst.$tc'MkT}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -153,7 +262,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -161,7 +275,12 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsApp
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -169,7 +288,12 @@
            (EpaComments
             []))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsApp
             (EpAnn
              (EpaDelta (SameLine 0) [])
@@ -177,7 +301,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -185,7 +314,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsApp
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -193,14 +327,24 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (XExpr
                   (ConLikeTc
                    ({abstract:ConLike})
                    []
                    [])))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (HsLit
                   (EpAnn
                    (EpaDelta (SameLine 0) [])
@@ -209,7 +353,12 @@
                     []))
                   {HsWord{64}Prim (10715337633704422415) (NoSourceText)}))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -218,21 +367,45 @@
                   []))
                 {HsWord{64}Prim (12411373583424111944) (NoSourceText)}))))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsVar
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                {Var: DumpTypecheckedAst.$trModule})))))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsPar
-            (EpAnnNotUsed)
+            (EpAnn
+             (EpaDelta (SameLine 0) [])
+             (NoEpAnns)
+             (EpaComments
+              []))
             (L
              (NoTokenLoc)
              (HsTok))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -240,14 +413,24 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (XExpr
                 (ConLikeTc
                  ({abstract:ConLike})
                  []
                  [])))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -261,7 +444,12 @@
              (NoTokenLoc)
              (HsTok))))))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsLit
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -270,19 +458,39 @@
             []))
           {HsInt{64}Prim (3) (NoSourceText)}))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: $krep})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: DumpTypecheckedAst.$tcPeano}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -290,7 +498,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -298,7 +511,12 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsApp
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -306,7 +524,12 @@
            (EpaComments
             []))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsApp
             (EpAnn
              (EpaDelta (SameLine 0) [])
@@ -314,7 +537,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -322,7 +550,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsApp
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -330,14 +563,24 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (XExpr
                   (ConLikeTc
                    ({abstract:ConLike})
                    []
                    [])))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (HsLit
                   (EpAnn
                    (EpaDelta (SameLine 0) [])
@@ -346,7 +589,12 @@
                     []))
                   {HsWord{64}Prim (14073232900889011755) (NoSourceText)}))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -355,21 +603,45 @@
                   []))
                 {HsWord{64}Prim (2739668351064589274) (NoSourceText)}))))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsVar
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                {Var: DumpTypecheckedAst.$trModule})))))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsPar
-            (EpAnnNotUsed)
+            (EpAnn
+             (EpaDelta (SameLine 0) [])
+             (NoEpAnns)
+             (EpaComments
+              []))
             (L
              (NoTokenLoc)
              (HsTok))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -377,14 +649,24 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (XExpr
                 (ConLikeTc
                  ({abstract:ConLike})
                  []
                  [])))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -398,7 +680,12 @@
              (NoTokenLoc)
              (HsTok))))))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsLit
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -407,19 +694,39 @@
             []))
           {HsInt{64}Prim (0) (NoSourceText)}))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: GHC.Types.krep$*})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: DumpTypecheckedAst.$tc'Zero}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -427,7 +734,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -435,7 +747,12 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsApp
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -443,7 +760,12 @@
            (EpaComments
             []))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsApp
             (EpAnn
              (EpaDelta (SameLine 0) [])
@@ -451,7 +773,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -459,7 +786,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsApp
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -467,14 +799,24 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (XExpr
                   (ConLikeTc
                    ({abstract:ConLike})
                    []
                    [])))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (HsLit
                   (EpAnn
                    (EpaDelta (SameLine 0) [])
@@ -483,7 +825,12 @@
                     []))
                   {HsWord{64}Prim (13760111476013868540) (NoSourceText)}))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -492,21 +839,45 @@
                   []))
                 {HsWord{64}Prim (12314848029315386153) (NoSourceText)}))))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsVar
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                {Var: DumpTypecheckedAst.$trModule})))))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsPar
-            (EpAnnNotUsed)
+            (EpAnn
+             (EpaDelta (SameLine 0) [])
+             (NoEpAnns)
+             (EpaComments
+              []))
             (L
              (NoTokenLoc)
              (HsTok))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -514,14 +885,24 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (XExpr
                 (ConLikeTc
                  ({abstract:ConLike})
                  []
                  [])))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -535,7 +916,12 @@
              (NoTokenLoc)
              (HsTok))))))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsLit
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -544,19 +930,39 @@
             []))
           {HsInt{64}Prim (0) (NoSourceText)}))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: $krep})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: DumpTypecheckedAst.$tc'Succ}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -564,7 +970,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -572,7 +983,12 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsApp
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -580,7 +996,12 @@
            (EpaComments
             []))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsApp
             (EpAnn
              (EpaDelta (SameLine 0) [])
@@ -588,7 +1009,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -596,7 +1022,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsApp
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -604,14 +1035,24 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (XExpr
                   (ConLikeTc
                    ({abstract:ConLike})
                    []
                    [])))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (HsLit
                   (EpAnn
                    (EpaDelta (SameLine 0) [])
@@ -620,7 +1061,12 @@
                     []))
                   {HsWord{64}Prim (1143980031331647856) (NoSourceText)}))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -629,21 +1075,45 @@
                   []))
                 {HsWord{64}Prim (14802086722010293686) (NoSourceText)}))))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsVar
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                {Var: DumpTypecheckedAst.$trModule})))))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsPar
-            (EpAnnNotUsed)
+            (EpAnn
+             (EpaDelta (SameLine 0) [])
+             (NoEpAnns)
+             (EpaComments
+              []))
             (L
              (NoTokenLoc)
              (HsTok))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -651,14 +1121,24 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (XExpr
                 (ConLikeTc
                  ({abstract:ConLike})
                  []
                  [])))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsLit
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -672,7 +1152,12 @@
              (NoTokenLoc)
              (HsTok))))))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsLit
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -681,19 +1166,39 @@
             []))
           {HsInt{64}Prim (0) (NoSourceText)}))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: $krep})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -701,14 +1206,24 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (XExpr
         (ConLikeTc
          ({abstract:ConLike})
          []
          [])))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsLit
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -722,12 +1237,22 @@
           (False)
           (2)))))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -735,14 +1260,24 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (XExpr
         (ConLikeTc
          ({abstract:ConLike})
          []
          [])))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsLit
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -756,12 +1291,22 @@
           (False)
           (1)))))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -769,14 +1314,24 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (XExpr
         (ConLikeTc
          ({abstract:ConLike})
          []
          [])))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsLit
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -790,12 +1345,22 @@
           (False)
           (0)))))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -803,7 +1368,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -811,33 +1381,68 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (XExpr
           (ConLikeTc
            ({abstract:ConLike})
            []
            [])))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsVar
           (NoExtField)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            {Var: $krep})))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: $krep})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -845,7 +1450,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -853,33 +1463,68 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (XExpr
           (ConLikeTc
            ({abstract:ConLike})
            []
            [])))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsVar
           (NoExtField)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            {Var: $krep})))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: GHC.Types.krep$*})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -887,7 +1532,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -895,33 +1545,68 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (XExpr
           (ConLikeTc
            ({abstract:ConLike})
            []
            [])))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsVar
           (NoExtField)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            {Var: $krep})))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: $krep})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -929,7 +1614,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -937,33 +1627,68 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (XExpr
           (ConLikeTc
            ({abstract:ConLike})
            []
            [])))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsVar
           (NoExtField)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            {Var: $krep})))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: $krep})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -971,7 +1696,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -979,33 +1709,68 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (XExpr
           (ConLikeTc
            ({abstract:ConLike})
            []
            [])))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsVar
           (NoExtField)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            {Var: $krep})))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsVar
         (NoExtField)
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          {Var: $krep})))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -1013,7 +1778,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -1021,28 +1791,57 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (XExpr
           (ConLikeTc
            ({abstract:ConLike})
            []
            [])))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsVar
           (NoExtField)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            {Var: DumpTypecheckedAst.$tcT})))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsPar
-        (EpAnnNotUsed)
+        (EpAnn
+         (EpaDelta (SameLine 0) [])
+         (NoEpAnns)
+         (EpaComments
+          []))
         (L
          (NoTokenLoc)
          (HsTok))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsApp
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -1050,7 +1849,12 @@
            (EpaComments
             []))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsApp
             (EpAnn
              (EpaDelta (SameLine 0) [])
@@ -1058,7 +1862,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (XExpr
               (WrapExpr
                (HsWrap
@@ -1072,21 +1881,45 @@
                   []
                   []))))))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsVar
               (NoExtField)
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (NameAnnTrailing
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                {Var: $krep})))))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsPar
-            (EpAnnNotUsed)
+            (EpAnn
+             (EpaDelta (SameLine 0) [])
+             (NoEpAnns)
+             (EpaComments
+              []))
             (L
              (NoTokenLoc)
              (HsTok))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsApp
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -1094,7 +1927,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsApp
                 (EpAnn
                  (EpaDelta (SameLine 0) [])
@@ -1102,7 +1940,12 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (XExpr
                   (WrapExpr
                    (HsWrap
@@ -1116,21 +1959,45 @@
                       []
                       []))))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (HsVar
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { <no location info> })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { <no location info> })
                    {Var: $krep})))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { <no location info> })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { <no location info> })
                (HsPar
-                (EpAnnNotUsed)
+                (EpAnn
+                 (EpaDelta (SameLine 0) [])
+                 (NoEpAnns)
+                 (EpaComments
+                  []))
                 (L
                  (NoTokenLoc)
                  (HsTok))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { <no location info> })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { <no location info> })
                  (HsApp
                   (EpAnn
                    (EpaDelta (SameLine 0) [])
@@ -1138,7 +2005,12 @@
                    (EpaComments
                     []))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { <no location info> })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { <no location info> })
                    (HsApp
                     (EpAnn
                      (EpaDelta (SameLine 0) [])
@@ -1146,7 +2018,12 @@
                      (EpaComments
                       []))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { <no location info> })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { <no location info> })
                      (XExpr
                       (WrapExpr
                        (HsWrap
@@ -1160,14 +2037,29 @@
                           []
                           []))))))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { <no location info> })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { <no location info> })
                      (HsVar
                       (NoExtField)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { <no location info> })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { <no location info> })
                        {Var: $krep})))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { <no location info> })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { <no location info> })
                    (XExpr
                     (WrapExpr
                      (HsWrap
@@ -1190,12 +2082,22 @@
          (NoTokenLoc)
          (HsTok))))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: $krep}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -1203,7 +2105,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -1211,21 +2118,41 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (XExpr
           (ConLikeTc
            ({abstract:ConLike})
            []
            [])))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsVar
           (NoExtField)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            {Var: DumpTypecheckedAst.$tcPeano})))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (XExpr
         (WrapExpr
          (HsWrap
@@ -1239,12 +2166,22 @@
             []
             []))))))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { <no location info> })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { <no location info> })
    (VarBind
     (NoExtField)
     {Var: DumpTypecheckedAst.$trModule}
     (L
-     (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+     (SrcSpanAnn (EpAnn
+                  (EpaSpan { <no location info> })
+                  (AnnListItem
+                   [])
+                  (EpaComments
+                   [])) { <no location info> })
      (HsApp
       (EpAnn
        (EpaDelta (SameLine 0) [])
@@ -1252,7 +2189,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsApp
         (EpAnn
          (EpaDelta (SameLine 0) [])
@@ -1260,21 +2202,40 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (XExpr
           (ConLikeTc
            ({abstract:ConLike})
            []
            [])))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsPar
-          (EpAnnNotUsed)
+          (EpAnn
+           (EpaDelta (SameLine 0) [])
+           (NoEpAnns)
+           (EpaComments
+            []))
           (L
            (NoTokenLoc)
            (HsTok))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsApp
             (EpAnn
              (EpaDelta (SameLine 0) [])
@@ -1282,14 +2243,24 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (XExpr
               (ConLikeTc
                ({abstract:ConLike})
                []
                [])))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { <no location info> })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { <no location info> })
              (HsLit
               (EpAnn
                (EpaDelta (SameLine 0) [])
@@ -1303,14 +2274,28 @@
            (NoTokenLoc)
            (HsTok))))))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <no location info> })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { <no location info> })
        (HsPar
-        (EpAnnNotUsed)
+        (EpAnn
+         (EpaDelta (SameLine 0) [])
+         (NoEpAnns)
+         (EpaComments
+          []))
         (L
          (NoTokenLoc)
          (HsTok))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { <no location info> })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { <no location info> })
          (HsApp
           (EpAnn
            (EpaDelta (SameLine 0) [])
@@ -1318,14 +2303,24 @@
            (EpaComments
             []))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (XExpr
             (ConLikeTc
              ({abstract:ConLike})
              []
              [])))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { <no location info> })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { <no location info> })
            (HsLit
             (EpAnn
              (EpaDelta (SameLine 0) [])
@@ -1339,7 +2334,12 @@
          (NoTokenLoc)
          (HsTok))))))))
  ,(L
-   (SrcSpanAnn (EpAnnNotUsed) { DumpTypecheckedAst.hs:20:1-23 })
+   (SrcSpanAnn (EpAnn
+                (EpaSpan { DumpTypecheckedAst.hs:20:1-23 })
+                (AnnListItem
+                 [])
+                (EpaComments
+                 [])) { DumpTypecheckedAst.hs:20:1-23 })
    (XHsBindsLR
     (AbsBinds
      []
@@ -1364,7 +2364,12 @@
           (WpHole)
           [])
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { DumpTypecheckedAst.hs:20:1-4 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { DumpTypecheckedAst.hs:20:1-4 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { DumpTypecheckedAst.hs:20:1-4 })
           {Var: main})
          (MG
           (MatchGroupTc
@@ -1376,14 +2381,37 @@
               [])])
            (FromSource))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { DumpTypecheckedAst.hs:20:1-23 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { DumpTypecheckedAst.hs:20:1-23 })
+                        (AnnList
+                         (Nothing)
+                         (Nothing)
+                         (Nothing)
+                         []
+                         [])
+                        (EpaComments
+                         [])) { DumpTypecheckedAst.hs:20:1-23 })
            [(L
-             (SrcSpanAnn (EpAnnNotUsed) { DumpTypecheckedAst.hs:20:1-23 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { DumpTypecheckedAst.hs:20:1-23 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { DumpTypecheckedAst.hs:20:1-23 })
              (Match
-              (EpAnnNotUsed)
+              (EpAnn
+               (EpaDelta (SameLine 0) [])
+               []
+               (EpaComments
+                []))
               (FunRhs
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { DumpTypecheckedAst.hs:20:1-4 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { DumpTypecheckedAst.hs:20:1-4 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { DumpTypecheckedAst.hs:20:1-4 })
                 {Name: main})
                (Prefix)
                (NoSrcStrict))
@@ -1393,24 +2421,58 @@
                 [])
                [(L
                  (SrcSpanAnn
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaSpan { DumpTypecheckedAst.hs:20:6-23 })
+                   (NoEpAnns)
+                   (EpaComments
+                    []))
                   { DumpTypecheckedAst.hs:20:6-23 })
                  (GRHS
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   (GrhsAnn
+                    (Nothing)
+                    (AddEpAnn Annlarrowtail (EpaDelta (SameLine 0) [])))
+                   (EpaComments
+                    []))
                   []
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { DumpTypecheckedAst.hs:20:8-23 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { DumpTypecheckedAst.hs:20:8-23 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { DumpTypecheckedAst.hs:20:8-23 })
                    (HsApp
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     (NoEpAnns)
+                     (EpaComments
+                      []))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpTypecheckedAst.hs:20:8-15 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpTypecheckedAst.hs:20:8-15 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpTypecheckedAst.hs:20:8-15 })
                      (HsVar
                       (NoExtField)
                       (L
-                       (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
+                       (SrcSpanAnn (EpAnn
+                                    (EpaSpan { <no location info> })
+                                    (NameAnnTrailing
+                                     [])
+                                    (EpaComments
+                                     [])) { <no location info> })
                        {Var: putStrLn})))
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { DumpTypecheckedAst.hs:20:17-23 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { DumpTypecheckedAst.hs:20:17-23 })
+                                  (AnnListItem
+                                   [])
+                                  (EpaComments
+                                   [])) { DumpTypecheckedAst.hs:20:17-23 })
                      (HsLit
                       (EpAnn
                        (EpaSpan { DumpTypecheckedAst.hs:20:17-23 })
diff --git a/testsuite/tests/parser/should_compile/KindSigs.stderr b/testsuite/tests/parser/should_compile/KindSigs.stderr
index f4fffb4abe82..ec52b49df1b3 100644
--- a/testsuite/tests/parser/should_compile/KindSigs.stderr
+++ b/testsuite/tests/parser/should_compile/KindSigs.stderr
@@ -24,11 +24,21 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:6:8-15 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { KindSigs.hs:6:8-15 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { KindSigs.hs:6:8-15 })
     {ModuleName: KindSigs}))
   (Nothing)
   [(L
-    (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:8:1-16 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { KindSigs.hs:8:1-16 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { KindSigs.hs:8:1-16 })
     (ImportDecl
      (XImportDeclPass
       (EpAnn
@@ -45,7 +55,12 @@
       (NoSourceText)
       (False))
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:8:8-16 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { KindSigs.hs:8:8-16 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { KindSigs.hs:8:8-16 })
       {ModuleName: Data.Kind})
      (NoRawPkgQual)
      (NotBoot)
@@ -75,7 +90,12 @@
        (ClosedTypeFamily
         (Just
          [(L
-           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:3-21 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { KindSigs.hs:12:3-21 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { KindSigs.hs:12:3-21 })
            (FamEqn
             (EpAnn
              (EpaSpan { KindSigs.hs:12:3-21 })
@@ -83,14 +103,24 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:3-5 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { KindSigs.hs:12:3-5 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { KindSigs.hs:12:3-5 })
              (Unqual
               {OccName: Foo}))
             (HsOuterImplicit
              (NoExtField))
             [(HsValArg
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:7 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { KindSigs.hs:12:7 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { KindSigs.hs:12:7 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { KindSigs.hs:12:7 })
@@ -99,12 +129,22 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:7 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { KindSigs.hs:12:7 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { KindSigs.hs:12:7 })
                  (Unqual
                   {OccName: a})))))]
             (Prefix)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:11-21 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { KindSigs.hs:12:11-21 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { KindSigs.hs:12:11-21 })
              (HsKindSig
               (EpAnn
                (EpaSpan { KindSigs.hs:12:11-21 })
@@ -112,7 +152,12 @@
                (EpaComments
                 []))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:11-13 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { KindSigs.hs:12:11-13 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { KindSigs.hs:12:11-13 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { KindSigs.hs:12:11-13 })
@@ -121,11 +166,21 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:11-13 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { KindSigs.hs:12:11-13 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { KindSigs.hs:12:11-13 })
                  (Unqual
                   {OccName: Int}))))
               (L
-               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:18-21 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { KindSigs.hs:12:18-21 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { KindSigs.hs:12:18-21 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { KindSigs.hs:12:18-21 })
@@ -134,18 +189,33 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:18-21 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { KindSigs.hs:12:18-21 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { KindSigs.hs:12:18-21 })
                  (Unqual
                   {OccName: Type}))))))))]))
        (TopLevel)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:11:13-15 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { KindSigs.hs:11:13-15 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { KindSigs.hs:11:13-15 })
         (Unqual
          {OccName: Foo}))
        (HsQTvs
         (NoExtField)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:11:17 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { KindSigs.hs:11:17 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { KindSigs.hs:11:17 })
           (UserTyVar
            (EpAnn
             (EpaSpan { KindSigs.hs:11:17 })
@@ -154,13 +224,22 @@
              []))
            (HsBndrRequired)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:11:17 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:11:17 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:11:17 })
             (Unqual
              {OccName: a}))))])
        (Prefix)
        (L
         (SrcSpanAnn
-         (EpAnnNotUsed)
+         (EpAnn
+          (EpaSpan { <no location info> })
+          (NoEpAnns)
+          (EpaComments
+           []))
          { <no location info> })
         (NoSig
          (NoExtField)))
@@ -182,13 +261,23 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:6-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:15:6-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:15:6-8 })
        (Unqual
         {OccName: Bar}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:10 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { KindSigs.hs:15:10 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { KindSigs.hs:15:10 })
          (UserTyVar
           (EpAnn
            (EpaSpan { KindSigs.hs:15:10 })
@@ -197,12 +286,22 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:10 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { KindSigs.hs:15:10 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { KindSigs.hs:15:10 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:14-51 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:15:14-51 })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:15:14-51 })
        (HsTupleTy
         (EpAnn
          (EpaSpan { KindSigs.hs:15:14-51 })
@@ -228,7 +327,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:16-18 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:15:16-18 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:15:16-18 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:15:16-18 })
@@ -237,11 +341,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:16-18 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:15:16-18 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:15:16-18 })
               (Unqual
                {OccName: Int}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:23-26 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:15:23-26 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:15:23-26 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:15:23-26 })
@@ -250,7 +364,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:23-26 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:15:23-26 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:15:23-26 })
               (Unqual
                {OccName: Type}))))))
         ,(L
@@ -269,11 +388,21 @@
              []))
            (NotPromoted)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:29-32 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:15:29-32 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:15:29-32 })
             (Unqual
              {OccName: Bool}))))
         ,(L
-          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:35-49 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { KindSigs.hs:15:35-49 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { KindSigs.hs:15:35-49 })
           (HsKindSig
            (EpAnn
             (EpaSpan { KindSigs.hs:15:35-49 })
@@ -281,11 +410,21 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:35-41 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:15:35-41 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:15:35-41 })
             (HsAppTy
              (NoExtField)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:35-39 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:15:35-39 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:15:35-39 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { KindSigs.hs:15:35-39 })
@@ -294,11 +433,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:35-39 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:15:35-39 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:15:35-39 })
                 (Unqual
                  {OccName: Maybe}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:41 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:15:41 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:15:41 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { KindSigs.hs:15:41 })
@@ -307,11 +456,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:41 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:15:41 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:15:41 })
                 (Unqual
                  {OccName: a}))))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:46-49 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:15:46-49 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:15:46-49 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:15:46-49 })
@@ -320,7 +479,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:46-49 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:15:46-49 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:15:46-49 })
               (Unqual
                {OccName: Type}))))))])))))
   ,(L
@@ -340,13 +504,23 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:6-9 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:16:6-9 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:16:6-9 })
        (Unqual
         {OccName: Bar'}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:11 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { KindSigs.hs:16:11 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { KindSigs.hs:16:11 })
          (UserTyVar
           (EpAnn
            (EpaSpan { KindSigs.hs:16:11 })
@@ -355,12 +529,22 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:11 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { KindSigs.hs:16:11 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { KindSigs.hs:16:11 })
            (Unqual
             {OccName: a}))))])
       (Prefix)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:15-54 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:16:15-54 })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:16:15-54 })
        (HsTupleTy
         (EpAnn
          (EpaSpan { KindSigs.hs:16:15-54 })
@@ -386,7 +570,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:18-20 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:16:18-20 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:16:18-20 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:16:18-20 })
@@ -395,11 +584,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:18-20 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:16:18-20 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:16:18-20 })
               (Unqual
                {OccName: Int}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:25-28 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:16:25-28 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:16:25-28 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:16:25-28 })
@@ -408,7 +607,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:25-28 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:16:25-28 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:16:25-28 })
               (Unqual
                {OccName: Type}))))))
         ,(L
@@ -427,11 +631,21 @@
              []))
            (NotPromoted)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:31-34 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:16:31-34 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:16:31-34 })
             (Unqual
              {OccName: Bool}))))
         ,(L
-          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:37-51 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { KindSigs.hs:16:37-51 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { KindSigs.hs:16:37-51 })
           (HsKindSig
            (EpAnn
             (EpaSpan { KindSigs.hs:16:37-51 })
@@ -439,11 +653,21 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:37-43 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:16:37-43 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:16:37-43 })
             (HsAppTy
              (NoExtField)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:37-41 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:16:37-41 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:16:37-41 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { KindSigs.hs:16:37-41 })
@@ -452,11 +676,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:37-41 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:16:37-41 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:16:37-41 })
                 (Unqual
                  {OccName: Maybe}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:43 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:16:43 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:16:43 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { KindSigs.hs:16:43 })
@@ -465,11 +699,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:43 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:16:43 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:16:43 })
                 (Unqual
                  {OccName: a}))))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:48-51 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:16:48-51 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:16:48-51 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:16:48-51 })
@@ -478,7 +722,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:48-51 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:16:48-51 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:16:48-51 })
               (Unqual
                {OccName: Type}))))))])))))
   ,(L
@@ -498,7 +747,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:6-8 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:19:6-8 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:19:6-8 })
        (Unqual
         {OccName: Baz}))
       (HsQTvs
@@ -506,7 +760,12 @@
        [])
       (Prefix)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:12-26 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:19:12-26 })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:19:12-26 })
        (HsListTy
         (EpAnn
          (EpaSpan { KindSigs.hs:19:12-26 })
@@ -517,7 +776,12 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:14-24 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { KindSigs.hs:19:14-24 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { KindSigs.hs:19:14-24 })
          (HsKindSig
           (EpAnn
            (EpaSpan { KindSigs.hs:19:14-24 })
@@ -525,7 +789,12 @@
            (EpaComments
             []))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:14-16 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { KindSigs.hs:19:14-16 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { KindSigs.hs:19:14-16 })
            (HsTyVar
             (EpAnn
              (EpaSpan { KindSigs.hs:19:14-16 })
@@ -534,11 +803,21 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:14-16 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { KindSigs.hs:19:14-16 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { KindSigs.hs:19:14-16 })
              (Unqual
               {OccName: Int}))))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:21-24 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { KindSigs.hs:19:21-24 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { KindSigs.hs:19:21-24 })
            (HsTyVar
             (EpAnn
              (EpaSpan { KindSigs.hs:19:21-24 })
@@ -547,7 +826,12 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:21-24 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { KindSigs.hs:19:21-24 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { KindSigs.hs:19:21-24 })
              (Unqual
               {OccName: Type})))))))))))
   ,(L
@@ -568,19 +852,34 @@
        (EpaComments
         []))
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:1-3 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { KindSigs.hs:22:1-3 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { KindSigs.hs:22:1-3 })
         (Unqual
          {OccName: qux}))]
       (HsWC
        (NoExtField)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:8-44 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { KindSigs.hs:22:8-44 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { KindSigs.hs:22:8-44 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:8-44 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { KindSigs.hs:22:8-44 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { KindSigs.hs:22:8-44 })
           (HsFunTy
            (EpAnn
             (EpaSpan { KindSigs.hs:22:8-44 })
@@ -593,7 +892,12 @@
               (EpaSpan { KindSigs.hs:22:22-23 }))
              (HsNormalTok)))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:8-20 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:22:8-20 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:22:8-20 })
             (HsParTy
              (EpAnn
               (EpaSpan { KindSigs.hs:22:8-20 })
@@ -604,7 +908,12 @@
               (EpaComments
                []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:9-19 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:22:9-19 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:22:9-19 })
               (HsKindSig
                (EpAnn
                 (EpaSpan { KindSigs.hs:22:9-19 })
@@ -612,7 +921,12 @@
                 (EpaComments
                  []))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:9-11 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:22:9-11 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:22:9-11 })
                 (HsTyVar
                  (EpAnn
                   (EpaSpan { KindSigs.hs:22:9-11 })
@@ -621,11 +935,21 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:9-11 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { KindSigs.hs:22:9-11 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { KindSigs.hs:22:9-11 })
                   (Unqual
                    {OccName: Int}))))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:16-19 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:22:16-19 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:22:16-19 })
                 (HsTyVar
                  (EpAnn
                   (EpaSpan { KindSigs.hs:22:16-19 })
@@ -634,11 +958,21 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:16-19 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { KindSigs.hs:22:16-19 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { KindSigs.hs:22:16-19 })
                   (Unqual
                    {OccName: Type}))))))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:25-44 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:22:25-44 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:22:25-44 })
             (HsFunTy
              (EpAnn
               (EpaSpan { KindSigs.hs:22:25-44 })
@@ -651,7 +985,12 @@
                 (EpaSpan { KindSigs.hs:22:30-31 }))
                (HsNormalTok)))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:25-28 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:22:25-28 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:22:25-28 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { KindSigs.hs:22:25-28 })
@@ -660,11 +999,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:25-28 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:22:25-28 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:22:25-28 })
                 (Unqual
                  {OccName: Bool}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:33-44 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:22:33-44 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:22:33-44 })
               (HsParTy
                (EpAnn
                 (EpaSpan { KindSigs.hs:22:33-44 })
@@ -675,7 +1024,12 @@
                 (EpaComments
                  []))
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:34-43 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:22:34-43 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:22:34-43 })
                 (HsKindSig
                  (EpAnn
                   (EpaSpan { KindSigs.hs:22:34-43 })
@@ -683,7 +1037,12 @@
                   (EpaComments
                    []))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:34-35 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { KindSigs.hs:22:34-35 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { KindSigs.hs:22:34-35 })
                   (HsTupleTy
                    (EpAnn
                     (EpaSpan { KindSigs.hs:22:34-35 })
@@ -696,7 +1055,12 @@
                    (HsBoxedOrConstraintTuple)
                    []))
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:40-43 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { KindSigs.hs:22:40-43 })
+                               (AnnListItem
+                                [])
+                               (EpaComments
+                                [])) { KindSigs.hs:22:40-43 })
                   (HsTyVar
                    (EpAnn
                     (EpaSpan { KindSigs.hs:22:40-43 })
@@ -705,7 +1069,12 @@
                      []))
                    (NotPromoted)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:40-43 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { KindSigs.hs:22:40-43 })
+                                 (NameAnnTrailing
+                                  [])
+                                 (EpaComments
+                                  [])) { KindSigs.hs:22:40-43 })
                     (Unqual
                      {OccName: Type}))))))))))))))))))
   ,(L
@@ -720,13 +1089,27 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:23:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:23:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:23:1-3 })
        (Unqual
         {OccName: qux}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:23:1-12 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { KindSigs.hs:23:1-12 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { KindSigs.hs:23:1-12 })
         [(L
           (SrcSpanAnn (EpAnn
                        (EpaSpan { KindSigs.hs:23:1-12 })
@@ -742,17 +1125,32 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:23:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { KindSigs.hs:23:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { KindSigs.hs:23:1-3 })
              (Unqual
               {OccName: qux}))
             (Prefix)
             (NoSrcStrict))
            [(L
-             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:23:5 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { KindSigs.hs:23:5 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { KindSigs.hs:23:5 })
              (WildPat
               (NoExtField)))
            ,(L
-             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:23:7 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { KindSigs.hs:23:7 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { KindSigs.hs:23:7 })
              (WildPat
               (NoExtField)))]
            (GRHSs
@@ -760,7 +1158,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { KindSigs.hs:23:9-12 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { KindSigs.hs:23:9-12 })
               (GRHS
                (EpAnn
@@ -772,7 +1174,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:23:11-12 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:23:11-12 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:23:11-12 })
                 (HsVar
                  (NoExtField)
                  (L
@@ -806,7 +1213,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:6-9 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:26:6-9 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:26:6-9 })
        (Unqual
         {OccName: Quux}))
       (HsQTvs
@@ -814,7 +1226,12 @@
        [])
       (Prefix)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:13-29 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:26:13-29 })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:26:13-29 })
        (HsExplicitListTy
         (EpAnn
          (EpaSpan { KindSigs.hs:26:13-29 })
@@ -825,7 +1242,12 @@
           []))
         (IsPromoted)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:16-27 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { KindSigs.hs:26:16-27 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { KindSigs.hs:26:16-27 })
           (HsKindSig
            (EpAnn
             (EpaSpan { KindSigs.hs:26:16-27 })
@@ -833,7 +1255,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:16-19 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:26:16-19 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:26:16-19 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:26:16-19 })
@@ -842,11 +1269,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:16-19 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:26:16-19 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:26:16-19 })
               (Unqual
                {OccName: True}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:24-27 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:26:24-27 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:26:24-27 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:26:24-27 })
@@ -855,7 +1292,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:24-27 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:26:24-27 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:26:24-27 })
               (Unqual
                {OccName: Bool}))))))])))))
   ,(L
@@ -875,7 +1317,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:6-10 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:27:6-10 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:27:6-10 })
        (Unqual
         {OccName: Quux'}))
       (HsQTvs
@@ -883,7 +1330,12 @@
        [])
       (Prefix)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:14-45 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:27:14-45 })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:27:14-45 })
        (HsExplicitListTy
         (EpAnn
          (EpaSpan { KindSigs.hs:27:14-45 })
@@ -907,7 +1359,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:16-19 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:27:16-19 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:27:16-19 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:27:16-19 })
@@ -916,11 +1373,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:16-19 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:27:16-19 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:27:16-19 })
               (Unqual
                {OccName: True}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:24-27 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:27:24-27 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:27:24-27 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:27:24-27 })
@@ -929,11 +1396,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:24-27 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:27:24-27 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:27:24-27 })
               (Unqual
                {OccName: Bool}))))))
         ,(L
-          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:30-42 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { KindSigs.hs:27:30-42 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { KindSigs.hs:27:30-42 })
           (HsKindSig
            (EpAnn
             (EpaSpan { KindSigs.hs:27:30-42 })
@@ -941,7 +1418,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:30-34 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:27:30-34 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:27:30-34 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:27:30-34 })
@@ -950,11 +1432,21 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:30-34 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:27:30-34 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:27:30-34 })
               (Unqual
                {OccName: False}))))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:39-42 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:27:39-42 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:27:39-42 })
             (HsTyVar
              (EpAnn
               (EpaSpan { KindSigs.hs:27:39-42 })
@@ -963,7 +1455,12 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:39-42 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:27:39-42 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:27:39-42 })
               (Unqual
                {OccName: Bool}))))))])))))
   ,(L
@@ -983,13 +1480,23 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:6-10 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:28:6-10 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:28:6-10 })
        (Unqual
         {OccName: Quuux}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:12 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { KindSigs.hs:28:12 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { KindSigs.hs:28:12 })
          (UserTyVar
           (EpAnn
            (EpaSpan { KindSigs.hs:28:12 })
@@ -998,12 +1505,22 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:12 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { KindSigs.hs:28:12 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { KindSigs.hs:28:12 })
            (Unqual
             {OccName: b}))))])
       (Prefix)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:16-44 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:28:16-44 })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:28:16-44 })
        (HsExplicitTupleTy
         (EpAnn
          (EpaSpan { KindSigs.hs:28:16-44 })
@@ -1027,7 +1544,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:19-29 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:28:19-29 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:28:19-29 })
             (HsExplicitListTy
              (EpAnn
               (EpaSpan { KindSigs.hs:28:19-29 })
@@ -1052,11 +1574,21 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:20-22 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { KindSigs.hs:28:20-22 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { KindSigs.hs:28:20-22 })
                  (Unqual
                   {OccName: Int}))))
              ,(L
-               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:25-28 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { KindSigs.hs:28:25-28 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { KindSigs.hs:28:25-28 })
                (HsTyVar
                 (EpAnn
                  (EpaSpan { KindSigs.hs:28:25-28 })
@@ -1065,11 +1597,21 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:25-28 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { KindSigs.hs:28:25-28 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { KindSigs.hs:28:25-28 })
                  (Unqual
                   {OccName: Bool}))))]))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:34-39 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:28:34-39 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:28:34-39 })
             (HsListTy
              (EpAnn
               (EpaSpan { KindSigs.hs:28:34-39 })
@@ -1080,7 +1622,12 @@
               (EpaComments
                []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:35-38 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:28:35-38 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:28:35-38 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { KindSigs.hs:28:35-38 })
@@ -1089,11 +1636,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:35-38 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:28:35-38 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:28:35-38 })
                 (Unqual
                  {OccName: Type}))))))))
         ,(L
-          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:42 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { KindSigs.hs:28:42 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { KindSigs.hs:28:42 })
           (HsTyVar
            (EpAnn
             (EpaSpan { KindSigs.hs:28:42 })
@@ -1102,7 +1659,12 @@
              []))
            (NotPromoted)
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:42 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:28:42 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:28:42 })
             (Unqual
              {OccName: b}))))])))))
   ,(L
@@ -1122,7 +1684,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:31:6-17 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:31:6-17 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:31:6-17 })
        (Unqual
         {OccName: Sarsaparilla}))
       (HsQTvs
@@ -1130,7 +1697,12 @@
        [])
       (Prefix)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:31:21-31 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:31:21-31 })
+                    (AnnListItem
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:31:21-31 })
        (HsKindSig
         (EpAnn
          (EpaSpan { KindSigs.hs:31:21-31 })
@@ -1138,7 +1710,12 @@
          (EpaComments
           []))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:31:21-23 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { KindSigs.hs:31:21-23 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { KindSigs.hs:31:21-23 })
          (HsTyVar
           (EpAnn
            (EpaSpan { KindSigs.hs:31:21-23 })
@@ -1147,11 +1724,21 @@
             []))
           (NotPromoted)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:31:21-23 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { KindSigs.hs:31:21-23 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { KindSigs.hs:31:21-23 })
            (Unqual
             {OccName: Int}))))
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:31:28-31 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { KindSigs.hs:31:28-31 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { KindSigs.hs:31:28-31 })
          (HsTyVar
           (EpAnn
            (EpaSpan { KindSigs.hs:31:28-31 })
@@ -1160,7 +1747,12 @@
             []))
           (NotPromoted)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:31:28-31 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { KindSigs.hs:31:28-31 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { KindSigs.hs:31:28-31 })
            (Unqual
             {OccName: Type})))))))))
   ,(L
@@ -1181,19 +1773,34 @@
        (EpaComments
         []))
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:1-4 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { KindSigs.hs:34:1-4 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { KindSigs.hs:34:1-4 })
         (Unqual
          {OccName: true}))]
       (HsWC
        (NoExtField)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:9-22 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { KindSigs.hs:34:9-22 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { KindSigs.hs:34:9-22 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:9-22 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { KindSigs.hs:34:9-22 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { KindSigs.hs:34:9-22 })
           (HsParTy
            (EpAnn
             (EpaSpan { KindSigs.hs:34:9-22 })
@@ -1204,7 +1811,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:10-21 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { KindSigs.hs:34:10-21 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { KindSigs.hs:34:10-21 })
             (HsKindSig
              (EpAnn
               (EpaSpan { KindSigs.hs:34:10-21 })
@@ -1212,7 +1824,12 @@
               (EpaComments
                []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:10-13 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:34:10-13 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:34:10-13 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { KindSigs.hs:34:10-13 })
@@ -1221,11 +1838,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:10-13 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:34:10-13 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:34:10-13 })
                 (Unqual
                  {OccName: Bool}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:18-21 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { KindSigs.hs:34:18-21 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { KindSigs.hs:34:18-21 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { KindSigs.hs:34:18-21 })
@@ -1234,7 +1861,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:18-21 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:34:18-21 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:34:18-21 })
                 (Unqual
                  {OccName: Type}))))))))))))))
   ,(L
@@ -1249,15 +1881,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:35:1-4 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { KindSigs.hs:35:1-4 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { KindSigs.hs:35:1-4 })
        (Unqual
         {OccName: true}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:35:1-11 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { KindSigs.hs:35:1-11 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { KindSigs.hs:35:1-11 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:35:1-11 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { KindSigs.hs:35:1-11 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { KindSigs.hs:35:1-11 })
           (Match
            (EpAnn
             (EpaSpan { KindSigs.hs:35:1-11 })
@@ -1266,7 +1917,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:35:1-4 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { KindSigs.hs:35:1-4 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { KindSigs.hs:35:1-4 })
              (Unqual
               {OccName: true}))
             (Prefix)
@@ -1277,7 +1933,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { KindSigs.hs:35:6-11 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { KindSigs.hs:35:6-11 })
               (GRHS
                (EpAnn
@@ -1289,11 +1949,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:35:8-11 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { KindSigs.hs:35:8-11 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { KindSigs.hs:35:8-11 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:35:8-11 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { KindSigs.hs:35:8-11 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { KindSigs.hs:35:8-11 })
                   (Unqual
                    {OccName: True}))))))]
             (EmptyLocalBinds
diff --git a/testsuite/tests/parser/should_compile/T14189.stderr b/testsuite/tests/parser/should_compile/T14189.stderr
index 69fdd31a420f..881f50bae7cc 100644
--- a/testsuite/tests/parser/should_compile/T14189.stderr
+++ b/testsuite/tests/parser/should_compile/T14189.stderr
@@ -25,7 +25,12 @@
          {NameSet:
           [{Name: GHC.Types.Int}]})
         (L
-         (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:6-11 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T14189.hs:6:6-11 })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { T14189.hs:6:6-11 })
          {Name: T14189.MyType})
         (HsQTvs
          []
@@ -47,9 +52,18 @@
                          (EpaComments
                           [])) { T14189.hs:6:15-20 })
             (ConDeclH98
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaDelta (SameLine 0) [])
+              []
+              (EpaComments
+               []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:15-16 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T14189.hs:6:15-16 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T14189.hs:6:15-16 })
               {Name: T14189.MT})
              (False)
              []
@@ -66,12 +80,26 @@
                    (NoTokenLoc)
                    (HsNormalTok))))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:18-20 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T14189.hs:6:18-20 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T14189.hs:6:18-20 })
                  (HsTyVar
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   (NotPromoted)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:18-20 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T14189.hs:6:18-20 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { T14189.hs:6:18-20 })
                    {Name: GHC.Types.Int}))))])
              (Nothing)))
           ,(L
@@ -83,9 +111,18 @@
                          (EpaComments
                           [])) { T14189.hs:6:24-25 })
             (ConDeclH98
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaDelta (SameLine 0) [])
+              []
+              (EpaComments
+               []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:24-25 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T14189.hs:6:24-25 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T14189.hs:6:24-25 })
               {Name: T14189.NT})
              (False)
              []
@@ -95,11 +132,25 @@
               [])
              (Nothing)))
           ,(L
-            (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:29-42 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T14189.hs:6:29-42 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T14189.hs:6:29-42 })
             (ConDeclH98
-             (EpAnnNotUsed)
+             (EpAnn
+              (EpaDelta (SameLine 0) [])
+              []
+              (EpaComments
+               []))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:29 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T14189.hs:6:29 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T14189.hs:6:29 })
               {Name: T14189.F})
              (False)
              []
@@ -120,24 +171,57 @@
                             (EpaComments
                              [])) { T14189.hs:6:31-42 })
                [(L
-                 (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:33-40 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T14189.hs:6:33-40 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T14189.hs:6:33-40 })
                  (ConDeclField
-                  (EpAnnNotUsed)
+                  (EpAnn
+                   (EpaDelta (SameLine 0) [])
+                   []
+                   (EpaComments
+                    []))
                   [(L
-                    (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:33 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { T14189.hs:6:33 })
+                                 (AnnListItem
+                                  [])
+                                 (EpaComments
+                                  [])) { T14189.hs:6:33 })
                     (FieldOcc
                      {Name: T14189.f}
                      (L
-                      (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:33 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { T14189.hs:6:33 })
+                                   (NameAnnTrailing
+                                    [])
+                                   (EpaComments
+                                    [])) { T14189.hs:6:33 })
                       (Unqual
                        {OccName: f}))))]
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:38-40 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T14189.hs:6:38-40 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T14189.hs:6:38-40 })
                    (HsTyVar
-                    (EpAnnNotUsed)
+                    (EpAnn
+                     (EpaDelta (SameLine 0) [])
+                     []
+                     (EpaComments
+                      []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:38-40 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T14189.hs:6:38-40 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T14189.hs:6:38-40 })
                      {Name: GHC.Types.Int})))
                   (Nothing)))]))
              (Nothing)))])
@@ -154,14 +238,34 @@
    []
    [])
   [(L
-    (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:1:8-13 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T14189.hs:1:8-13 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T14189.hs:1:8-13 })
     (ImportDecl
      (XImportDeclPass
-      (EpAnnNotUsed)
+      (EpAnn
+       (EpaDelta (SameLine 0) [])
+       (EpAnnImportDecl
+        (EpaDelta (SameLine 0) [])
+        (Nothing)
+        (Nothing)
+        (Nothing)
+        (Nothing)
+        (Nothing))
+       (EpaComments
+        []))
       (NoSourceText)
       (True))
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:1:8-13 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { T14189.hs:1:8-13 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { T14189.hs:1:8-13 })
       {ModuleName: Prelude})
      (NoPkgQual)
      (NotBoot)
@@ -172,7 +276,12 @@
   (Just
    [((,)
      (L
-      (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:3:3-15 })
+      (SrcSpanAnn (EpAnn
+                   (EpaSpan { T14189.hs:3:3-15 })
+                   (AnnListItem
+                    [])
+                   (EpaComments
+                    [])) { T14189.hs:3:3-15 })
       (IEThingWith
        ((,)
         (Nothing)
@@ -183,11 +292,21 @@
          (EpaComments
           [])))
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:3:3-8 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T14189.hs:3:3-8 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T14189.hs:3:3-8 })
         (IEName
          (NoExtField)
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:3:3-8 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T14189.hs:3:3-8 })
+                       (NameAnnTrailing
+                        [])
+                       (EpaComments
+                        [])) { T14189.hs:3:3-8 })
           {Name: T14189.MyType})))
        (NoIEWildcard)
        [(L
@@ -201,14 +320,29 @@
          (IEName
           (NoExtField)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:3:11 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T14189.hs:3:11 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T14189.hs:3:11 })
            {Name: T14189.f})))
        ,(L
-         (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:3:13-14 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T14189.hs:3:13-14 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T14189.hs:3:13-14 })
          (IEName
           (NoExtField)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:3:13-14 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T14189.hs:3:13-14 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T14189.hs:3:13-14 })
            {Name: T14189.NT})))]))
      [(AvailTC
        {Name: T14189.MyType}
diff --git a/testsuite/tests/parser/should_compile/T15279.stderr b/testsuite/tests/parser/should_compile/T15279.stderr
index f004212266cb..8e7d98a995b3 100644
--- a/testsuite/tests/parser/should_compile/T15279.stderr
+++ b/testsuite/tests/parser/should_compile/T15279.stderr
@@ -1,4 +1,395 @@
-(MG
-(NoExtField)
+
+==================== Parser AST ====================
+
 (L
-(SrcSpanAnn (EpAnnNotUsed) { <combineSrcSpans: files differ> })
+ { T15279.hs:1:1 }
+ (HsModule
+  (XModulePs
+   (EpAnn
+    (EpaSpan { T15279.hs:1:1 })
+    (AnnsModule
+     [(AddEpAnn AnnModule (EpaSpan { T15279.hs:3:1-6 }))
+     ,(AddEpAnn AnnWhere (EpaSpan { T15279.hs:3:15-19 }))]
+     []
+     (Just
+      ((,)
+       { T15279.hs:8:1 }
+       { T15279.hs:7:9-11 })))
+    (EpaCommentsBalanced
+     []
+     []))
+   (VirtualBraces
+    (1))
+   (Nothing)
+   (Nothing))
+  (Just
+   (L
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T15279.hs:3:8-13 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T15279.hs:3:8-13 })
+    {ModuleName: T15279}))
+  (Nothing)
+  []
+  [(L
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T15279.hs:5:1-19 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T15279.hs:5:1-19 })
+    (SigD
+     (NoExtField)
+     (TypeSig
+      (EpAnn
+       (EpaSpan { T15279.hs:5:1-19 })
+       (AnnSig
+        (AddEpAnn AnnDcolon (EpaSpan { T15279.hs:5:5-6 }))
+        [])
+       (EpaComments
+        []))
+      [(L
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T15279.hs:5:1-3 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { T15279.hs:5:1-3 })
+        (Unqual
+         {OccName: foo}))]
+      (HsWC
+       (NoExtField)
+       (L
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T15279.hs:5:8-19 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T15279.hs:5:8-19 })
+        (HsSig
+         (NoExtField)
+         (HsOuterImplicit
+          (NoExtField))
+         (L
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T15279.hs:5:8-19 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T15279.hs:5:8-19 })
+          (HsFunTy
+           (EpAnn
+            (EpaSpan { T15279.hs:5:8-19 })
+            (NoEpAnns)
+            (EpaComments
+             []))
+           (HsUnrestrictedArrow
+            (L
+             (TokenLoc
+              (EpaSpan { T15279.hs:5:13-14 }))
+             (HsNormalTok)))
+           (L
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T15279.hs:5:8-11 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T15279.hs:5:8-11 })
+            (HsTyVar
+             (EpAnn
+              (EpaSpan { T15279.hs:5:8-11 })
+              []
+              (EpaComments
+               []))
+             (NotPromoted)
+             (L
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T15279.hs:5:8-11 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T15279.hs:5:8-11 })
+              (Unqual
+               {OccName: Char}))))
+           (L
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T15279.hs:5:16-19 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T15279.hs:5:16-19 })
+            (HsTyVar
+             (EpAnn
+              (EpaSpan { T15279.hs:5:16-19 })
+              []
+              (EpaComments
+               []))
+             (NotPromoted)
+             (L
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T15279.hs:5:16-19 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T15279.hs:5:16-19 })
+              (Unqual
+               {OccName: Char}))))))))))))
+  ,(L
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { foo:-1:-1 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { <combineSrcSpans: files differ> })
+    (ValD
+     (NoExtField)
+     (FunBind
+      (NoExtField)
+      (L
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T15279.hs-incl:1:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T15279.hs-incl:1:1-3 })
+       (Unqual
+        {OccName: foo}))
+      (MG
+       (FromSource)
+       (L
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { <combineSrcSpans: files differ> })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { <combineSrcSpans: files differ> })
+        [(L
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T15279.hs-incl:1:1-13 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T15279.hs-incl:1:1-13 })
+          (Match
+           (EpAnn
+            (EpaSpan { T15279.hs-incl:1:1-13 })
+            []
+            (EpaComments
+             []))
+           (FunRhs
+            (L
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T15279.hs-incl:1:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T15279.hs-incl:1:1-3 })
+             (Unqual
+              {OccName: foo}))
+            (Prefix)
+            (NoSrcStrict))
+           [(L
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T15279.hs-incl:1:5-7 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { T15279.hs-incl:1:5-7 })
+             (LitPat
+              (NoExtField)
+              (HsChar
+               (SourceText 'a')
+               ('a'))))]
+           (GRHSs
+            (EpaComments
+             [])
+            [(L
+              (SrcSpanAnn
+               (EpAnn
+                (EpaSpan { T15279.hs-incl:1:9-13 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
+               { T15279.hs-incl:1:9-13 })
+              (GRHS
+               (EpAnn
+                (EpaSpan { T15279.hs-incl:1:9-13 })
+                (GrhsAnn
+                 (Nothing)
+                 (AddEpAnn AnnEqual (EpaSpan { T15279.hs-incl:1:9 })))
+                (EpaComments
+                 []))
+               []
+               (L
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T15279.hs-incl:1:11-13 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { T15279.hs-incl:1:11-13 })
+                (HsLit
+                 (EpAnn
+                  (EpaSpan { T15279.hs-incl:1:11-13 })
+                  (NoEpAnns)
+                  (EpaComments
+                   []))
+                 (HsChar
+                  (SourceText 'b')
+                  ('b'))))))]
+            (EmptyLocalBinds
+             (NoExtField)))))
+        ,(L
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T15279.hs-incl:2:1-13 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T15279.hs-incl:2:1-13 })
+          (Match
+           (EpAnn
+            (EpaSpan { T15279.hs-incl:2:1-13 })
+            []
+            (EpaComments
+             []))
+           (FunRhs
+            (L
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T15279.hs-incl:2:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T15279.hs-incl:2:1-3 })
+             (Unqual
+              {OccName: foo}))
+            (Prefix)
+            (NoSrcStrict))
+           [(L
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T15279.hs-incl:2:5-7 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { T15279.hs-incl:2:5-7 })
+             (LitPat
+              (NoExtField)
+              (HsChar
+               (SourceText 'b')
+               ('b'))))]
+           (GRHSs
+            (EpaComments
+             [])
+            [(L
+              (SrcSpanAnn
+               (EpAnn
+                (EpaSpan { T15279.hs-incl:2:9-13 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
+               { T15279.hs-incl:2:9-13 })
+              (GRHS
+               (EpAnn
+                (EpaSpan { T15279.hs-incl:2:9-13 })
+                (GrhsAnn
+                 (Nothing)
+                 (AddEpAnn AnnEqual (EpaSpan { T15279.hs-incl:2:9 })))
+                (EpaComments
+                 []))
+               []
+               (L
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T15279.hs-incl:2:11-13 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { T15279.hs-incl:2:11-13 })
+                (HsLit
+                 (EpAnn
+                  (EpaSpan { T15279.hs-incl:2:11-13 })
+                  (NoEpAnns)
+                  (EpaComments
+                   []))
+                 (HsChar
+                  (SourceText 'c')
+                  ('c'))))))]
+            (EmptyLocalBinds
+             (NoExtField)))))
+        ,(L
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T15279.hs:7:1-11 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T15279.hs:7:1-11 })
+          (Match
+           (EpAnn
+            (EpaSpan { T15279.hs:7:1-11 })
+            []
+            (EpaComments
+             []))
+           (FunRhs
+            (L
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T15279.hs:7:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T15279.hs:7:1-3 })
+             (Unqual
+              {OccName: foo}))
+            (Prefix)
+            (NoSrcStrict))
+           [(L
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T15279.hs:7:5 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { T15279.hs:7:5 })
+             (WildPat
+              (NoExtField)))]
+           (GRHSs
+            (EpaComments
+             [])
+            [(L
+              (SrcSpanAnn
+               (EpAnn
+                (EpaSpan { T15279.hs:7:7-11 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
+               { T15279.hs:7:7-11 })
+              (GRHS
+               (EpAnn
+                (EpaSpan { T15279.hs:7:7-11 })
+                (GrhsAnn
+                 (Nothing)
+                 (AddEpAnn AnnEqual (EpaSpan { T15279.hs:7:7 })))
+                (EpaComments
+                 []))
+               []
+               (L
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T15279.hs:7:9-11 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { T15279.hs:7:9-11 })
+                (HsLit
+                 (EpAnn
+                  (EpaSpan { T15279.hs:7:9-11 })
+                  (NoEpAnns)
+                  (EpaComments
+                   []))
+                 (HsChar
+                  (SourceText 'a')
+                  ('a'))))))]
+            (EmptyLocalBinds
+             (NoExtField)))))])))))]))
+
+
diff --git a/testsuite/tests/parser/should_compile/T15323.stderr b/testsuite/tests/parser/should_compile/T15323.stderr
index c3dfb247427a..386e3b923600 100644
--- a/testsuite/tests/parser/should_compile/T15323.stderr
+++ b/testsuite/tests/parser/should_compile/T15323.stderr
@@ -24,7 +24,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:3:8-13 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T15323.hs:3:8-13 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T15323.hs:3:8-13 })
     {ModuleName: T15323}))
   (Nothing)
   []
@@ -45,13 +50,23 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:5:6-17 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T15323.hs:5:6-17 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T15323.hs:5:6-17 })
        (Unqual
         {OccName: MaybeDefault}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:5:19 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T15323.hs:5:19 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T15323.hs:5:19 })
          (UserTyVar
           (EpAnn
            (EpaSpan { T15323.hs:5:19 })
@@ -60,7 +75,12 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:5:19 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T15323.hs:5:19 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T15323.hs:5:19 })
            (Unqual
             {OccName: v}))))])
       (Prefix)
@@ -72,7 +92,12 @@
        (DataTypeCons
         (False)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:5-54 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T15323.hs:6:5-54 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T15323.hs:6:5-54 })
           (ConDeclGADT
            (EpAnn
             (EpaSpan { T15323.hs:6:5-54 })
@@ -81,7 +106,12 @@
              []))
            (:|
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:5-14 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T15323.hs:6:5-14 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T15323.hs:6:5-14 })
              (Unqual
               {OccName: TestParens}))
             [])
@@ -105,7 +135,12 @@
               (EpaComments
                []))
              [(L
-               (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:27 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { T15323.hs:6:27 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { T15323.hs:6:27 })
                (UserTyVar
                 (EpAnn
                  (EpaSpan { T15323.hs:6:27 })
@@ -114,7 +149,12 @@
                   []))
                 (SpecifiedSpec)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:27 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T15323.hs:6:27 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { T15323.hs:6:27 })
                  (Unqual
                   {OccName: v}))))]))
            (Just
@@ -131,7 +171,12 @@
                           (EpaComments
                            [])) { T15323.hs:6:31-36 })
              [(L
-               (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:31-36 })
+               (SrcSpanAnn (EpAnn
+                            (EpaSpan { T15323.hs:6:31-36 })
+                            (AnnListItem
+                             [])
+                            (EpaComments
+                             [])) { T15323.hs:6:31-36 })
                (HsParTy
                 (EpAnn
                  (EpaSpan { T15323.hs:6:31-36 })
@@ -142,11 +187,21 @@
                  (EpaComments
                   []))
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:32-35 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T15323.hs:6:32-35 })
+                              (AnnListItem
+                               [])
+                              (EpaComments
+                               [])) { T15323.hs:6:32-35 })
                  (HsAppTy
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:32-33 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T15323.hs:6:32-33 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T15323.hs:6:32-33 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T15323.hs:6:32-33 })
@@ -155,11 +210,21 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:32-33 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T15323.hs:6:32-33 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T15323.hs:6:32-33 })
                      (Unqual
                       {OccName: Eq}))))
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:35 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { T15323.hs:6:35 })
+                                (AnnListItem
+                                 [])
+                                (EpaComments
+                                 [])) { T15323.hs:6:35 })
                    (HsTyVar
                     (EpAnn
                      (EpaSpan { T15323.hs:6:35 })
@@ -168,17 +233,32 @@
                       []))
                     (NotPromoted)
                     (L
-                     (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:35 })
+                     (SrcSpanAnn (EpAnn
+                                  (EpaSpan { T15323.hs:6:35 })
+                                  (NameAnnTrailing
+                                   [])
+                                  (EpaComments
+                                   [])) { T15323.hs:6:35 })
                      (Unqual
                       {OccName: v}))))))))]))
            (PrefixConGADT
             [])
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:41-54 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T15323.hs:6:41-54 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T15323.hs:6:41-54 })
             (HsAppTy
              (NoExtField)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:41-52 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T15323.hs:6:41-52 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T15323.hs:6:41-52 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T15323.hs:6:41-52 })
@@ -187,11 +267,21 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:41-52 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T15323.hs:6:41-52 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T15323.hs:6:41-52 })
                 (Unqual
                  {OccName: MaybeDefault}))))
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:54 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T15323.hs:6:54 })
+                           (AnnListItem
+                            [])
+                           (EpaComments
+                            [])) { T15323.hs:6:54 })
               (HsTyVar
                (EpAnn
                 (EpaSpan { T15323.hs:6:54 })
@@ -200,7 +290,12 @@
                  []))
                (NotPromoted)
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:54 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T15323.hs:6:54 })
+                             (NameAnnTrailing
+                              [])
+                             (EpaComments
+                              [])) { T15323.hs:6:54 })
                 (Unqual
                  {OccName: v}))))))
            (Nothing)))])
diff --git a/testsuite/tests/parser/should_compile/T20452.stderr b/testsuite/tests/parser/should_compile/T20452.stderr
index 76de96c716cf..f9d64c530edb 100644
--- a/testsuite/tests/parser/should_compile/T20452.stderr
+++ b/testsuite/tests/parser/should_compile/T20452.stderr
@@ -24,7 +24,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:3:8-13 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T20452.hs:3:8-13 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T20452.hs:3:8-13 })
     {ModuleName: T20452}))
   (Nothing)
   []
@@ -45,13 +50,23 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:6-11 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T20452.hs:5:6-11 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T20452.hs:5:6-11 })
        (Unqual
         {OccName: Proxy1}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:14-21 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T20452.hs:5:14-21 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T20452.hs:5:14-21 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { T20452.hs:5:14-21 })
@@ -62,11 +77,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:15 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:5:15 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:5:15 })
            (Unqual
             {OccName: a}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:20 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:5:20 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:5:20 })
            (HsTyVar
             (EpAnn
              (EpaSpan { T20452.hs:5:20 })
@@ -75,7 +100,12 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:20 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T20452.hs:5:20 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T20452.hs:5:20 })
              (Unqual
               {OccName: k}))))))])
       (Prefix)
@@ -87,7 +117,12 @@
        (DataTypeCons
         (False)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:26-31 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T20452.hs:5:26-31 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T20452.hs:5:26-31 })
           (ConDeclH98
            (EpAnn
             (EpaSpan { T20452.hs:5:26-31 })
@@ -95,7 +130,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:26-31 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T20452.hs:5:26-31 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { T20452.hs:5:26-31 })
             (Unqual
              {OccName: Proxy1}))
            (False)
@@ -123,13 +163,23 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:6-11 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T20452.hs:6:6-11 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T20452.hs:6:6-11 })
        (Unqual
         {OccName: Proxy2}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:13-22 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T20452.hs:6:13-22 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T20452.hs:6:13-22 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { T20452.hs:6:13-22 })
@@ -142,11 +192,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:15 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:6:15 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:6:15 })
            (Unqual
             {OccName: a}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:20 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:6:20 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:6:20 })
            (HsTyVar
             (EpAnn
              (EpaSpan { T20452.hs:6:20 })
@@ -155,7 +215,12 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:20 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T20452.hs:6:20 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T20452.hs:6:20 })
              (Unqual
               {OccName: k}))))))])
       (Prefix)
@@ -167,7 +232,12 @@
        (DataTypeCons
         (False)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:26-31 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T20452.hs:6:26-31 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T20452.hs:6:26-31 })
           (ConDeclH98
            (EpAnn
             (EpaSpan { T20452.hs:6:26-31 })
@@ -175,7 +245,12 @@
             (EpaComments
              []))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:26-31 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T20452.hs:6:26-31 })
+                         (NameAnnTrailing
+                          [])
+                         (EpaComments
+                          [])) { T20452.hs:6:26-31 })
             (Unqual
              {OccName: Proxy2}))
            (False)
@@ -217,13 +292,23 @@
         (HsTok)))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:7-12 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T20452.hs:8:7-12 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T20452.hs:8:7-12 })
        (Unqual
         {OccName: Prods1}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:15-26 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T20452.hs:8:15-26 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T20452.hs:8:15-26 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { T20452.hs:8:15-26 })
@@ -234,11 +319,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:16-18 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:8:16-18 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:8:16-18 })
            (Unqual
             {OccName: lhs}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:23-25 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:8:23-25 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:8:23-25 })
            (HsTyVar
             (EpAnn
              (EpaSpan { T20452.hs:8:23-25 })
@@ -247,11 +342,21 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:23-25 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T20452.hs:8:23-25 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T20452.hs:8:23-25 })
              (Unqual
               {OccName: Int}))))))
        ,(L
-         (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:30-45 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T20452.hs:8:30-45 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T20452.hs:8:30-45 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { T20452.hs:8:30-45 })
@@ -262,11 +367,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:31-34 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:8:31-34 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:8:31-34 })
            (Unqual
             {OccName: name}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:39-44 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:8:39-44 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:8:39-44 })
            (HsTyVar
             (EpAnn
              (EpaSpan { T20452.hs:8:39-44 })
@@ -275,11 +390,21 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:39-44 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T20452.hs:8:39-44 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T20452.hs:8:39-44 })
              (Unqual
               {OccName: String}))))))
        ,(L
-         (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:49-75 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T20452.hs:8:49-75 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T20452.hs:8:49-75 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { T20452.hs:8:49-75 })
@@ -290,11 +415,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:50-52 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:8:50-52 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:8:50-52 })
            (Unqual
             {OccName: rhs}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:57-74 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:8:57-74 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:8:57-74 })
            (HsListTy
             (EpAnn
              (EpaSpan { T20452.hs:8:57-74 })
@@ -305,7 +440,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:58-73 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T20452.hs:8:58-73 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { T20452.hs:8:58-73 })
              (HsTupleTy
               (EpAnn
                (EpaSpan { T20452.hs:8:58-73 })
@@ -332,11 +472,21 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:59-64 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T20452.hs:8:59-64 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T20452.hs:8:59-64 })
                   (Unqual
                    {OccName: String}))))
               ,(L
-                (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:67-72 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T20452.hs:8:67-72 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { T20452.hs:8:67-72 })
                 (HsTyVar
                  (EpAnn
                   (EpaSpan { T20452.hs:8:67-72 })
@@ -345,7 +495,12 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:67-72 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T20452.hs:8:67-72 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T20452.hs:8:67-72 })
                   (Unqual
                    {OccName: String}))))]))))))])
       (Prefix)
@@ -387,13 +542,23 @@
         (HsTok)))
       (Nothing)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:7-12 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T20452.hs:9:7-12 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T20452.hs:9:7-12 })
        (Unqual
         {OccName: Prods2}))
       (HsQTvs
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:14-27 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T20452.hs:9:14-27 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T20452.hs:9:14-27 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { T20452.hs:9:14-27 })
@@ -406,11 +571,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:16-18 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:9:16-18 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:9:16-18 })
            (Unqual
             {OccName: lhs}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:23-25 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:9:23-25 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:9:23-25 })
            (HsTyVar
             (EpAnn
              (EpaSpan { T20452.hs:9:23-25 })
@@ -419,11 +594,21 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:23-25 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T20452.hs:9:23-25 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T20452.hs:9:23-25 })
              (Unqual
               {OccName: Int}))))))
        ,(L
-         (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:29-46 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T20452.hs:9:29-46 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T20452.hs:9:29-46 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { T20452.hs:9:29-46 })
@@ -436,11 +621,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:31-34 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:9:31-34 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:9:31-34 })
            (Unqual
             {OccName: name}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:39-44 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:9:39-44 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:9:39-44 })
            (HsTyVar
             (EpAnn
              (EpaSpan { T20452.hs:9:39-44 })
@@ -449,11 +644,21 @@
               []))
             (NotPromoted)
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:39-44 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T20452.hs:9:39-44 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T20452.hs:9:39-44 })
              (Unqual
               {OccName: String}))))))
        ,(L
-         (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:48-76 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T20452.hs:9:48-76 })
+                      (AnnListItem
+                       [])
+                      (EpaComments
+                       [])) { T20452.hs:9:48-76 })
          (KindedTyVar
           (EpAnn
            (EpaSpan { T20452.hs:9:48-76 })
@@ -466,11 +671,21 @@
             []))
           (HsBndrRequired)
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:50-52 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:9:50-52 })
+                        (NameAnnTrailing
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:9:50-52 })
            (Unqual
             {OccName: rhs}))
           (L
-           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:57-74 })
+           (SrcSpanAnn (EpAnn
+                        (EpaSpan { T20452.hs:9:57-74 })
+                        (AnnListItem
+                         [])
+                        (EpaComments
+                         [])) { T20452.hs:9:57-74 })
            (HsListTy
             (EpAnn
              (EpaSpan { T20452.hs:9:57-74 })
@@ -481,7 +696,12 @@
              (EpaComments
               []))
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:58-73 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T20452.hs:9:58-73 })
+                          (AnnListItem
+                           [])
+                          (EpaComments
+                           [])) { T20452.hs:9:58-73 })
              (HsTupleTy
               (EpAnn
                (EpaSpan { T20452.hs:9:58-73 })
@@ -508,11 +728,21 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:59-64 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T20452.hs:9:59-64 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T20452.hs:9:59-64 })
                   (Unqual
                    {OccName: String}))))
               ,(L
-                (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:67-72 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T20452.hs:9:67-72 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { T20452.hs:9:67-72 })
                 (HsTyVar
                  (EpAnn
                   (EpaSpan { T20452.hs:9:67-72 })
@@ -521,7 +751,12 @@
                    []))
                  (NotPromoted)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:67-72 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T20452.hs:9:67-72 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T20452.hs:9:67-72 })
                   (Unqual
                    {OccName: String}))))]))))))])
       (Prefix)
diff --git a/testsuite/tests/parser/should_compile/T20718.stderr b/testsuite/tests/parser/should_compile/T20718.stderr
index a43053219c14..41bf1b3c0b45 100644
--- a/testsuite/tests/parser/should_compile/T20718.stderr
+++ b/testsuite/tests/parser/should_compile/T20718.stderr
@@ -58,7 +58,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T20718.hs:3:8-13 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T20718.hs:3:8-13 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T20718.hs:3:8-13 })
     {ModuleName: T20718}))
   (Nothing)
   []
@@ -74,15 +79,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T20718.hs:8:1 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T20718.hs:8:1 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T20718.hs:8:1 })
        (Unqual
         {OccName: x}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T20718.hs:8:1-5 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T20718.hs:8:1-5 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { T20718.hs:8:1-5 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { T20718.hs:8:1-5 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T20718.hs:8:1-5 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T20718.hs:8:1-5 })
           (Match
            (EpAnn
             (EpaSpan { T20718.hs:8:1-5 })
@@ -91,7 +115,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T20718.hs:8:1 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T20718.hs:8:1 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T20718.hs:8:1 })
              (Unqual
               {OccName: x}))
             (Prefix)
@@ -102,7 +131,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { T20718.hs:8:3-5 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { T20718.hs:8:3-5 })
               (GRHS
                (EpAnn
@@ -114,7 +147,12 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T20718.hs:8:5 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T20718.hs:8:5 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { T20718.hs:8:5 })
                 (HsOverLit
                  (EpAnn
                   (EpaSpan { T20718.hs:8:5 })
@@ -130,3 +168,5 @@
                     (1))))))))]
             (EmptyLocalBinds
              (NoExtField)))))])))))]))
+
+
diff --git a/testsuite/tests/parser/should_compile/T20718b.stderr b/testsuite/tests/parser/should_compile/T20718b.stderr
index de2ca167604d..8bca7b3563f1 100644
--- a/testsuite/tests/parser/should_compile/T20718b.stderr
+++ b/testsuite/tests/parser/should_compile/T20718b.stderr
@@ -47,8 +47,15 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T20718b.hs:4:8-14 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T20718b.hs:4:8-14 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T20718b.hs:4:8-14 })
     {ModuleName: T20718b}))
   (Nothing)
   []
   []))
+
+
diff --git a/testsuite/tests/parser/should_compile/T20846.stderr b/testsuite/tests/parser/should_compile/T20846.stderr
index 21e552dd1b48..7334677b85a4 100644
--- a/testsuite/tests/parser/should_compile/T20846.stderr
+++ b/testsuite/tests/parser/should_compile/T20846.stderr
@@ -24,7 +24,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T20846.hs:1:8-13 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T20846.hs:1:8-13 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T20846.hs:1:8-13 })
     {ModuleName: T20846}))
   (Nothing)
   []
@@ -46,7 +51,12 @@
       (FixitySig
        (NoExtField)
        [(L
-         (SrcSpanAnn (EpAnnNotUsed) { T20846.hs:3:8-11 })
+         (SrcSpanAnn (EpAnn
+                      (EpaSpan { T20846.hs:3:8-11 })
+                      (NameAnnTrailing
+                       [])
+                      (EpaComments
+                       [])) { T20846.hs:3:8-11 })
          (Unqual
           {OccName: ++++}))]
        {Fixity: infixr 9}))))
@@ -77,9 +87,23 @@
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T20846.hs:4:1-18 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T20846.hs:4:1-18 })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { T20846.hs:4:1-18 })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { T20846.hs:4:1-18 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T20846.hs:4:1-18 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T20846.hs:4:1-18 })
           (Match
            (EpAnn
             (EpaSpan { T20846.hs:4:1-18 })
@@ -108,7 +132,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { T20846.hs:4:8-18 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { T20846.hs:4:8-18 })
               (GRHS
                (EpAnn
@@ -120,11 +148,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { T20846.hs:4:10-18 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { T20846.hs:4:10-18 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { T20846.hs:4:10-18 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { T20846.hs:4:10-18 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { T20846.hs:4:10-18 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { T20846.hs:4:10-18 })
                   (Unqual
                    {OccName: undefined}))))))]
             (EmptyLocalBinds
diff --git a/testsuite/tests/parser/should_compile/T23315/T23315.stderr b/testsuite/tests/parser/should_compile/T23315/T23315.stderr
index bc805660ab3d..961b032e9c8b 100644
--- a/testsuite/tests/parser/should_compile/T23315/T23315.stderr
+++ b/testsuite/tests/parser/should_compile/T23315/T23315.stderr
@@ -20,12 +20,22 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T23315.hsig:1:11-16 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T23315.hsig:1:11-16 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T23315.hsig:1:11-16 })
     {ModuleName: T23315}))
   (Nothing)
   []
   [(L
-    (SrcSpanAnn (EpAnnNotUsed) { T23315.hsig:2:1-12 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T23315.hsig:2:1-12 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T23315.hsig:2:1-12 })
     (DocD
      (NoExtField)
      (DocCommentNext
@@ -59,19 +69,34 @@
        (EpaComments
         []))
       [(L
-        (SrcSpanAnn (EpAnnNotUsed) { T23315.hsig:3:1 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T23315.hsig:3:1 })
+                     (NameAnnTrailing
+                      [])
+                     (EpaComments
+                      [])) { T23315.hsig:3:1 })
         (Unqual
          {OccName: a}))]
       (HsWC
        (NoExtField)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { T23315.hsig:3:6-7 })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { T23315.hsig:3:6-7 })
+                     (AnnListItem
+                      [])
+                     (EpaComments
+                      [])) { T23315.hsig:3:6-7 })
         (HsSig
          (NoExtField)
          (HsOuterImplicit
           (NoExtField))
          (L
-          (SrcSpanAnn (EpAnnNotUsed) { T23315.hsig:3:6-7 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T23315.hsig:3:6-7 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T23315.hsig:3:6-7 })
           (HsTupleTy
            (EpAnn
             (EpaSpan { T23315.hsig:3:6-7 })
@@ -84,7 +109,12 @@
            (HsBoxedOrConstraintTuple)
            []))))))))
   ,(L
-    (SrcSpanAnn (EpAnnNotUsed) { T23315.hsig:4:1-14 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T23315.hsig:4:1-14 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T23315.hsig:4:1-14 })
     (DocD
      (NoExtField)
      (DocCommentPrev
@@ -100,3 +130,5 @@
             " More docs"))
           []))
         [])))))]))
+
+
diff --git a/testsuite/tests/parser/should_compile/all.T b/testsuite/tests/parser/should_compile/all.T
index f2ccfcd4383d..5b88fb97b588 100644
--- a/testsuite/tests/parser/should_compile/all.T
+++ b/testsuite/tests/parser/should_compile/all.T
@@ -133,12 +133,13 @@ def only_MG_loc(x):
     """
     Only compares the location embedded inside the MatchGroup, which has the form
     (MG
-      (NoExtField)
+      (FromSource)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { <location> })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { <combineSrcSpans: files differ> })
     """
     ls = x.split("\n")
-    mgLocs = (loc.strip() for (mg,loc) in zip(ls,ls[3:])
+    mgLocs = (loc.strip() for (mg,loc) in zip(ls,ls[4:])
                 if mg.strip().startswith("(MG"))
     return '\n'.join(mgLocs)
 test('T15279', normalise_errmsg_fun(only_MG_loc), compile, [''])
diff --git a/testsuite/tests/printer/T18791.stderr b/testsuite/tests/printer/T18791.stderr
index a3b4dc66f4d2..b39b74633fe9 100644
--- a/testsuite/tests/printer/T18791.stderr
+++ b/testsuite/tests/printer/T18791.stderr
@@ -24,7 +24,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:2:8-13 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { T18791.hs:2:8-13 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { T18791.hs:2:8-13 })
     {ModuleName: T18791}))
   (Nothing)
   []
@@ -45,7 +50,12 @@
        (EpaComments
         []))
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:4:6 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { T18791.hs:4:6 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { T18791.hs:4:6 })
        (Unqual
         {OccName: T}))
       (HsQTvs
@@ -60,7 +70,12 @@
        (DataTypeCons
         (False)
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:5:3-17 })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { T18791.hs:5:3-17 })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { T18791.hs:5:3-17 })
           (ConDeclGADT
            (EpAnn
             (EpaSpan { T18791.hs:5:3-17 })
@@ -69,7 +84,12 @@
              []))
            (:|
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:5:3-5 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { T18791.hs:5:3-5 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { T18791.hs:5:3-5 })
              (Unqual
               {OccName: MkT}))
             [])
@@ -78,7 +98,12 @@
              (EpaSpan { T18791.hs:5:7-8 }))
             (HsNormalTok))
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:5:10-17 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T18791.hs:5:10-17 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T18791.hs:5:10-17 })
             (HsOuterImplicit
              (NoExtField)))
            (Nothing)
@@ -104,11 +129,21 @@
                   []))
                 (NotPromoted)
                 (L
-                 (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:5:10-12 })
+                 (SrcSpanAnn (EpAnn
+                              (EpaSpan { T18791.hs:5:10-12 })
+                              (NameAnnTrailing
+                               [])
+                              (EpaComments
+                               [])) { T18791.hs:5:10-12 })
                  (Unqual
                   {OccName: Int})))))])
            (L
-            (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:5:17 })
+            (SrcSpanAnn (EpAnn
+                         (EpaSpan { T18791.hs:5:17 })
+                         (AnnListItem
+                          [])
+                         (EpaComments
+                          [])) { T18791.hs:5:17 })
             (HsTyVar
              (EpAnn
               (EpaSpan { T18791.hs:5:17 })
@@ -117,8 +152,15 @@
                []))
              (NotPromoted)
              (L
-              (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:5:17 })
+              (SrcSpanAnn (EpAnn
+                           (EpaSpan { T18791.hs:5:17 })
+                           (NameAnnTrailing
+                            [])
+                           (EpaComments
+                            [])) { T18791.hs:5:17 })
               (Unqual
                {OccName: T}))))
            (Nothing)))])
        []))))]))
+
+
diff --git a/testsuite/tests/printer/Test20297.stdout b/testsuite/tests/printer/Test20297.stdout
index 6f35afb9634c..befe03a4bb16 100644
--- a/testsuite/tests/printer/Test20297.stdout
+++ b/testsuite/tests/printer/Test20297.stdout
@@ -29,7 +29,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:2:8-16 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { Test20297.hs:2:8-16 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { Test20297.hs:2:8-16 })
     {ModuleName: Test20297}))
   (Nothing)
   []
@@ -45,15 +50,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:5:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { Test20297.hs:5:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { Test20297.hs:5:1-3 })
        (Unqual
         {OccName: bar}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:(5,1)-(7,7) })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { Test20297.hs:(5,1)-(7,7) })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { Test20297.hs:(5,1)-(7,7) })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:(5,1)-(7,7) })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { Test20297.hs:(5,1)-(7,7) })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { Test20297.hs:(5,1)-(7,7) })
           (Match
            (EpAnn
             (EpaSpan { Test20297.hs:(5,1)-(7,7) })
@@ -62,7 +86,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:5:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { Test20297.hs:5:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { Test20297.hs:5:1-3 })
              (Unqual
               {OccName: bar}))
             (Prefix)
@@ -73,7 +102,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { Test20297.hs:5:5-7 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { Test20297.hs:5:5-7 })
               (GRHS
                (EpAnn
@@ -90,11 +123,21 @@
                     { Test20297.hs:5:7 }))]))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:5:7 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { Test20297.hs:5:7 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { Test20297.hs:5:7 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:5:7 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { Test20297.hs:5:7 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { Test20297.hs:5:7 })
                   (Unqual
                    {OccName: x}))))))]
             (HsValBinds
@@ -131,15 +174,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:9:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { Test20297.hs:9:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { Test20297.hs:9:1-3 })
        (Unqual
         {OccName: foo}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:(9,1)-(11,26) })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { Test20297.hs:(9,1)-(11,26) })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { Test20297.hs:(9,1)-(11,26) })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:(9,1)-(11,26) })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { Test20297.hs:(9,1)-(11,26) })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { Test20297.hs:(9,1)-(11,26) })
           (Match
            (EpAnn
             (EpaSpan { Test20297.hs:(9,1)-(11,26) })
@@ -148,7 +210,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:9:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { Test20297.hs:9:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { Test20297.hs:9:1-3 })
              (Unqual
               {OccName: foo}))
             (Prefix)
@@ -159,7 +226,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { Test20297.hs:9:5-7 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { Test20297.hs:9:5-7 })
               (GRHS
                (EpAnn
@@ -171,11 +242,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:9:7 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { Test20297.hs:9:7 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { Test20297.hs:9:7 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:9:7 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { Test20297.hs:9:7 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { Test20297.hs:9:7 })
                   (Unqual
                    {OccName: x}))))))]
             (HsValBinds
@@ -208,15 +289,34 @@
                  (FunBind
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:9-15 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { Test20297.hs:11:9-15 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { Test20297.hs:11:9-15 })
                    (Unqual
                     {OccName: doStuff}))
                   (MG
                    (FromSource)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:9-26 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { Test20297.hs:11:9-26 })
+                                 (AnnList
+                                  (Nothing)
+                                  (Nothing)
+                                  (Nothing)
+                                  []
+                                  [])
+                                 (EpaComments
+                                  [])) { Test20297.hs:11:9-26 })
                     [(L
-                      (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:9-26 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { Test20297.hs:11:9-26 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { Test20297.hs:11:9-26 })
                       (Match
                        (EpAnn
                         (EpaSpan { Test20297.hs:11:9-26 })
@@ -225,7 +325,12 @@
                          []))
                        (FunRhs
                         (L
-                         (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:9-15 })
+                         (SrcSpanAnn (EpAnn
+                                      (EpaSpan { Test20297.hs:11:9-15 })
+                                      (NameAnnTrailing
+                                       [])
+                                      (EpaComments
+                                       [])) { Test20297.hs:11:9-15 })
                          (Unqual
                           {OccName: doStuff}))
                         (Prefix)
@@ -236,7 +341,11 @@
                          [])
                         [(L
                           (SrcSpanAnn
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaSpan { Test20297.hs:11:17-26 })
+                            (NoEpAnns)
+                            (EpaComments
+                             []))
                            { Test20297.hs:11:17-26 })
                           (GRHS
                            (EpAnn
@@ -248,7 +357,12 @@
                              []))
                            []
                            (L
-                            (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:19-26 })
+                            (SrcSpanAnn (EpAnn
+                                         (EpaSpan { Test20297.hs:11:19-26 })
+                                         (AnnListItem
+                                          [])
+                                         (EpaComments
+                                          [])) { Test20297.hs:11:19-26 })
                             (HsDo
                              (EpAnn
                               (EpaSpan { Test20297.hs:11:19-26 })
@@ -276,15 +390,30 @@
                                            (EpaComments
                                             [])) { Test20297.hs:11:22-26 })
                               [(L
-                                (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:22-26 })
+                                (SrcSpanAnn (EpAnn
+                                             (EpaSpan { Test20297.hs:11:22-26 })
+                                             (AnnListItem
+                                              [])
+                                             (EpaComments
+                                              [])) { Test20297.hs:11:22-26 })
                                 (BodyStmt
                                  (NoExtField)
                                  (L
-                                  (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:22-26 })
+                                  (SrcSpanAnn (EpAnn
+                                               (EpaSpan { Test20297.hs:11:22-26 })
+                                               (AnnListItem
+                                                [])
+                                               (EpaComments
+                                                [])) { Test20297.hs:11:22-26 })
                                   (HsVar
                                    (NoExtField)
                                    (L
-                                    (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:22-26 })
+                                    (SrcSpanAnn (EpAnn
+                                                 (EpaSpan { Test20297.hs:11:22-26 })
+                                                 (NameAnnTrailing
+                                                  [])
+                                                 (EpaComments
+                                                  [])) { Test20297.hs:11:22-26 })
                                     (Unqual
                                      {OccName: stuff}))))
                                  (NoExtField)
@@ -325,7 +454,12 @@
    (Nothing))
   (Just
    (L
-    (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:2:8-16 })
+    (SrcSpanAnn (EpAnn
+                 (EpaSpan { Test20297.ppr.hs:2:8-16 })
+                 (AnnListItem
+                  [])
+                 (EpaComments
+                  [])) { Test20297.ppr.hs:2:8-16 })
     {ModuleName: Test20297}))
   (Nothing)
   []
@@ -341,15 +475,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:3:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { Test20297.ppr.hs:3:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { Test20297.ppr.hs:3:1-3 })
        (Unqual
         {OccName: bar}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:(3,1)-(5,7) })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { Test20297.ppr.hs:(3,1)-(5,7) })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { Test20297.ppr.hs:(3,1)-(5,7) })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:(3,1)-(5,7) })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { Test20297.ppr.hs:(3,1)-(5,7) })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { Test20297.ppr.hs:(3,1)-(5,7) })
           (Match
            (EpAnn
             (EpaSpan { Test20297.ppr.hs:(3,1)-(5,7) })
@@ -358,7 +511,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:3:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { Test20297.ppr.hs:3:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { Test20297.ppr.hs:3:1-3 })
              (Unqual
               {OccName: bar}))
             (Prefix)
@@ -369,7 +527,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { Test20297.ppr.hs:4:3-5 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { Test20297.ppr.hs:4:3-5 })
               (GRHS
                (EpAnn
@@ -381,11 +543,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:4:5 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { Test20297.ppr.hs:4:5 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { Test20297.ppr.hs:4:5 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:4:5 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { Test20297.ppr.hs:4:5 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { Test20297.ppr.hs:4:5 })
                   (Unqual
                    {OccName: x}))))))]
             (HsValBinds
@@ -417,15 +589,34 @@
      (FunBind
       (NoExtField)
       (L
-       (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:6:1-3 })
+       (SrcSpanAnn (EpAnn
+                    (EpaSpan { Test20297.ppr.hs:6:1-3 })
+                    (NameAnnTrailing
+                     [])
+                    (EpaComments
+                     [])) { Test20297.ppr.hs:6:1-3 })
        (Unqual
         {OccName: foo}))
       (MG
        (FromSource)
        (L
-        (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:(6,1)-(9,24) })
+        (SrcSpanAnn (EpAnn
+                     (EpaSpan { Test20297.ppr.hs:(6,1)-(9,24) })
+                     (AnnList
+                      (Nothing)
+                      (Nothing)
+                      (Nothing)
+                      []
+                      [])
+                     (EpaComments
+                      [])) { Test20297.ppr.hs:(6,1)-(9,24) })
         [(L
-          (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:(6,1)-(9,24) })
+          (SrcSpanAnn (EpAnn
+                       (EpaSpan { Test20297.ppr.hs:(6,1)-(9,24) })
+                       (AnnListItem
+                        [])
+                       (EpaComments
+                        [])) { Test20297.ppr.hs:(6,1)-(9,24) })
           (Match
            (EpAnn
             (EpaSpan { Test20297.ppr.hs:(6,1)-(9,24) })
@@ -434,7 +625,12 @@
              []))
            (FunRhs
             (L
-             (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:6:1-3 })
+             (SrcSpanAnn (EpAnn
+                          (EpaSpan { Test20297.ppr.hs:6:1-3 })
+                          (NameAnnTrailing
+                           [])
+                          (EpaComments
+                           [])) { Test20297.ppr.hs:6:1-3 })
              (Unqual
               {OccName: foo}))
             (Prefix)
@@ -445,7 +641,11 @@
              [])
             [(L
               (SrcSpanAnn
-               (EpAnnNotUsed)
+               (EpAnn
+                (EpaSpan { Test20297.ppr.hs:7:3-5 })
+                (NoEpAnns)
+                (EpaComments
+                 []))
                { Test20297.ppr.hs:7:3-5 })
               (GRHS
                (EpAnn
@@ -457,11 +657,21 @@
                  []))
                []
                (L
-                (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:7:5 })
+                (SrcSpanAnn (EpAnn
+                             (EpaSpan { Test20297.ppr.hs:7:5 })
+                             (AnnListItem
+                              [])
+                             (EpaComments
+                              [])) { Test20297.ppr.hs:7:5 })
                 (HsVar
                  (NoExtField)
                  (L
-                  (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:7:5 })
+                  (SrcSpanAnn (EpAnn
+                               (EpaSpan { Test20297.ppr.hs:7:5 })
+                               (NameAnnTrailing
+                                [])
+                               (EpaComments
+                                [])) { Test20297.ppr.hs:7:5 })
                   (Unqual
                    {OccName: x}))))))]
             (HsValBinds
@@ -489,15 +699,34 @@
                  (FunBind
                   (NoExtField)
                   (L
-                   (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:7-13 })
+                   (SrcSpanAnn (EpAnn
+                                (EpaSpan { Test20297.ppr.hs:9:7-13 })
+                                (NameAnnTrailing
+                                 [])
+                                (EpaComments
+                                 [])) { Test20297.ppr.hs:9:7-13 })
                    (Unqual
                     {OccName: doStuff}))
                   (MG
                    (FromSource)
                    (L
-                    (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:7-24 })
+                    (SrcSpanAnn (EpAnn
+                                 (EpaSpan { Test20297.ppr.hs:9:7-24 })
+                                 (AnnList
+                                  (Nothing)
+                                  (Nothing)
+                                  (Nothing)
+                                  []
+                                  [])
+                                 (EpaComments
+                                  [])) { Test20297.ppr.hs:9:7-24 })
                     [(L
-                      (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:7-24 })
+                      (SrcSpanAnn (EpAnn
+                                   (EpaSpan { Test20297.ppr.hs:9:7-24 })
+                                   (AnnListItem
+                                    [])
+                                   (EpaComments
+                                    [])) { Test20297.ppr.hs:9:7-24 })
                       (Match
                        (EpAnn
                         (EpaSpan { Test20297.ppr.hs:9:7-24 })
@@ -506,7 +735,12 @@
                          []))
                        (FunRhs
                         (L
-                         (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:7-13 })
+                         (SrcSpanAnn (EpAnn
+                                      (EpaSpan { Test20297.ppr.hs:9:7-13 })
+                                      (NameAnnTrailing
+                                       [])
+                                      (EpaComments
+                                       [])) { Test20297.ppr.hs:9:7-13 })
                          (Unqual
                           {OccName: doStuff}))
                         (Prefix)
@@ -517,7 +751,11 @@
                          [])
                         [(L
                           (SrcSpanAnn
-                           (EpAnnNotUsed)
+                           (EpAnn
+                            (EpaSpan { Test20297.ppr.hs:9:15-24 })
+                            (NoEpAnns)
+                            (EpaComments
+                             []))
                            { Test20297.ppr.hs:9:15-24 })
                           (GRHS
                            (EpAnn
@@ -529,7 +767,12 @@
                              []))
                            []
                            (L
-                            (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:17-24 })
+                            (SrcSpanAnn (EpAnn
+                                         (EpaSpan { Test20297.ppr.hs:9:17-24 })
+                                         (AnnListItem
+                                          [])
+                                         (EpaComments
+                                          [])) { Test20297.ppr.hs:9:17-24 })
                             (HsDo
                              (EpAnn
                               (EpaSpan { Test20297.ppr.hs:9:17-24 })
@@ -557,15 +800,30 @@
                                            (EpaComments
                                             [])) { Test20297.ppr.hs:9:20-24 })
                               [(L
-                                (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:20-24 })
+                                (SrcSpanAnn (EpAnn
+                                             (EpaSpan { Test20297.ppr.hs:9:20-24 })
+                                             (AnnListItem
+                                              [])
+                                             (EpaComments
+                                              [])) { Test20297.ppr.hs:9:20-24 })
                                 (BodyStmt
                                  (NoExtField)
                                  (L
-                                  (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:20-24 })
+                                  (SrcSpanAnn (EpAnn
+                                               (EpaSpan { Test20297.ppr.hs:9:20-24 })
+                                               (AnnListItem
+                                                [])
+                                               (EpaComments
+                                                [])) { Test20297.ppr.hs:9:20-24 })
                                   (HsVar
                                    (NoExtField)
                                    (L
-                                    (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:20-24 })
+                                    (SrcSpanAnn (EpAnn
+                                                 (EpaSpan { Test20297.ppr.hs:9:20-24 })
+                                                 (NameAnnTrailing
+                                                  [])
+                                                 (EpaComments
+                                                  [])) { Test20297.ppr.hs:9:20-24 })
                                     (Unqual
                                      {OccName: stuff}))))
                                  (NoExtField)
@@ -573,3 +831,5 @@
                         (EmptyLocalBinds
                          (NoExtField)))))]))))]}
               [])))))])))))]))
+
+
diff --git a/testsuite/tests/profiling/perf/T23103/all.T b/testsuite/tests/profiling/perf/T23103/all.T
index 891b32383ffb..2c1954cc1d93 100644
--- a/testsuite/tests/profiling/perf/T23103/all.T
+++ b/testsuite/tests/profiling/perf/T23103/all.T
@@ -6,7 +6,6 @@ test(
             [
                 '../../../../../utils/check-exact/ExactPrint.hs',
                 '../../../../../utils/check-exact/Lookup.hs',
-                '../../../../../utils/check-exact/Orphans.hs',
                 '../../../../../utils/check-exact/Types.hs',
                 '../../../../../utils/check-exact/Utils.hs',
             ]
diff --git a/testsuite/tests/profiling/perf/T23103/info_table_map_perf.stderr b/testsuite/tests/profiling/perf/T23103/info_table_map_perf.stderr
index bb6a7c12b1ea..8be9188987eb 100644
--- a/testsuite/tests/profiling/perf/T23103/info_table_map_perf.stderr
+++ b/testsuite/tests/profiling/perf/T23103/info_table_map_perf.stderr
@@ -1,5 +1,4 @@
-[1 of 5] Compiling Orphans          ( Orphans.hs, Orphans.o )
-[2 of 5] Compiling Types            ( Types.hs, Types.o )
-[3 of 5] Compiling Lookup           ( Lookup.hs, Lookup.o )
-[4 of 5] Compiling Utils            ( Utils.hs, Utils.o )
-[5 of 5] Compiling ExactPrint       ( ExactPrint.hs, ExactPrint.o )
+[1 of 4] Compiling Types            ( Types.hs, Types.o )
+[2 of 4] Compiling Lookup           ( Lookup.hs, Lookup.o )
+[3 of 4] Compiling Utils            ( Utils.hs, Utils.o )
+[4 of 4] Compiling ExactPrint       ( ExactPrint.hs, ExactPrint.o )
diff --git a/testsuite/tests/simplCore/should_compile/T23864.hs b/testsuite/tests/simplCore/should_compile/T23864.hs
index e51bac7eb2ca..fbfed63cf2e8 100644
--- a/testsuite/tests/simplCore/should_compile/T23864.hs
+++ b/testsuite/tests/simplCore/should_compile/T23864.hs
@@ -59,7 +59,6 @@ insertComments ::
 insertComments cond inserter epa@EpAnn {..} = do
   coms <- drainComments cond
   pure $ epa {comments = inserter comments coms}
-insertComments _ _ EpAnnNotUsed = pure EpAnnNotUsed
 
 insertPriorComments :: EpAnnComments -> [LEpaComment] -> EpAnnComments
 insertPriorComments (EpaComments prior) cs =
diff --git a/testsuite/tests/typecheck/should_compile/T15242.stderr b/testsuite/tests/typecheck/should_compile/T15242.stderr
index 88faad02e299..655ff7aa1b10 100644
--- a/testsuite/tests/typecheck/should_compile/T15242.stderr
+++ b/testsuite/tests/typecheck/should_compile/T15242.stderr
@@ -1,34 +1,34 @@
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:5-41 })
+[])) { T15242.hs:6:5-41 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:6-40 })
+[])) { T15242.hs:6:6-40 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:7-39 })
+[])) { T15242.hs:6:7-39 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:8-35 })
+[])) { T15242.hs:6:8-35 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:9-34 })
+[])) { T15242.hs:6:9-34 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:10-33 })
+[])) { T15242.hs:6:10-33 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:11-29 })
+[])) { T15242.hs:6:11-29 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:12-25 })
+[])) { T15242.hs:6:12-25 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:13-21 })
+[])) { T15242.hs:6:13-21 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:6:14-20 })
+[])) { T15242.hs:6:14-20 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:5:5-17 })
+[])) { T15242.hs:5:5-17 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:5:6-16 })
+[])) { T15242.hs:5:6-16 })
 (HsPar
 [])))
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:5:19-37 })
+[])) { T15242.hs:5:19-37 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:5:20-32 })
+[])) { T15242.hs:5:20-32 })
 (HsPar
-(SrcSpanAnn (EpAnnNotUsed) { T15242.hs:5:21-31 })
+[])) { T15242.hs:5:21-31 })
 (HsPar
 [])))
 (HsPar
diff --git a/utils/check-exact/ExactPrint.hs b/utils/check-exact/ExactPrint.hs
index 738ce002e022..26dbfa8286dd 100644
--- a/utils/check-exact/ExactPrint.hs
+++ b/utils/check-exact/ExactPrint.hs
@@ -68,8 +68,6 @@ import qualified Data.Map.Strict as Map
 import Data.Maybe ( isJust, mapMaybe )
 import Data.Void
 
-import Orphans ()
-
 import Lookup
 import Utils
 import Types
@@ -217,7 +215,6 @@ class HasTrailing a where
 
 setAnchorEpa :: (HasTrailing an, NoAnn an)
              => EpAnn an -> Anchor -> [TrailingAnn] -> EpAnnComments -> EpAnn an
-setAnchorEpa EpAnnNotUsed   anc ts cs = EpAnn anc (setTrailing noAnn ts) cs
 setAnchorEpa (EpAnn _ an _) anc ts cs = EpAnn anc (setTrailing an ts)          cs
 
 setAnchorHsModule :: HsModule GhcPs -> Anchor -> EpAnnComments -> HsModule GhcPs
@@ -228,15 +225,11 @@ setAnchorHsModule hsmod anc cs = hsmod { hsmodExt = (hsmodExt hsmod) {hsmodAnn =
 
 setAnchorAn :: (HasTrailing an, NoAnn an)
              => LocatedAn an a -> Anchor -> [TrailingAnn] -> EpAnnComments -> LocatedAn an a
-setAnchorAn (L (SrcSpanAnn EpAnnNotUsed l)    a) anc ts cs
-  = (L (SrcSpanAnn (EpAnn anc (setTrailing noAnn ts) cs) l) a)
-     -- `debug` ("setAnchorAn: anc=" ++ showAst anc)
 setAnchorAn (L (SrcSpanAnn (EpAnn _ an _) l) a) anc ts cs
   = (L (SrcSpanAnn (EpAnn anc (setTrailing an ts) cs) l) a)
      -- `debug` ("setAnchorAn: anc=" ++ showAst anc)
 
 setAnchorEpaL :: EpAnn AnnList -> Anchor -> [TrailingAnn] -> EpAnnComments -> EpAnn AnnList
-setAnchorEpaL EpAnnNotUsed   anc ts cs = EpAnn anc (setTrailing noAnn ts) cs
 setAnchorEpaL (EpAnn _ an _) anc ts cs = EpAnn anc (setTrailing (an {al_anchor = Nothing}) ts) cs
 
 -- ---------------------------------------------------------------------
@@ -269,12 +262,10 @@ mkEntry :: Anchor -> [TrailingAnn] -> EpAnnComments -> Entry
 mkEntry anc ts cs = Entry anc ts cs NoFlushComments CanUpdateAnchor
 
 instance (HasTrailing an) => HasEntry (SrcSpanAnn' (EpAnn an)) where
-  fromAnn (SrcSpanAnn EpAnnNotUsed ss) = mkEntry (spanAsAnchor ss) [] emptyComments
   fromAnn (SrcSpanAnn an _) = fromAnn an
 
 instance (HasTrailing a) => HasEntry (EpAnn a) where
   fromAnn (EpAnn anc a cs) = mkEntry anc (trailing a) cs
-  fromAnn EpAnnNotUsed = NoEntryVal
 
 -- ---------------------------------------------------------------------
 
@@ -351,7 +342,7 @@ instance HasTrailing AnnExplicitSum where
   trailing _ = []
   setTrailing a _ = a
 
-instance HasTrailing EpAnnUnboundVar where
+instance HasTrailing (Maybe EpAnnUnboundVar) where
   trailing _ = []
   setTrailing a _ = a
 
@@ -620,7 +611,6 @@ flushComments trailing_anns = do
 -- comments. They are removed from the annotation to avoid duplication.
 annotationsToComments :: (Monad m, Monoid w)
   => EpAnn a -> Lens a [AddEpAnn] -> [AnnKeywordId] -> EP w m (EpAnn a)
-annotationsToComments EpAnnNotUsed _ _kws = return EpAnnNotUsed
 annotationsToComments (EpAnn anc a cs) l kws = do
   let (newComments, newAnns) = go ([],[]) (view l a)
   addComments newComments
@@ -707,7 +697,6 @@ printStringAtMLoc' Nothing s = do
 
 printStringAtMLocL :: (Monad m, Monoid w)
   => EpAnn a -> Lens a (Maybe EpaLocation) -> String -> EP w m (EpAnn a)
-printStringAtMLocL EpAnnNotUsed _ _ = return EpAnnNotUsed
 printStringAtMLocL (EpAnn anc an cs) l s = do
   r <- go (view l an) s
   return (EpAnn anc (set l r an) cs)
@@ -722,7 +711,6 @@ printStringAtAA el str = printStringAtAAC CaptureComments el str
 
 printStringAtAAL :: (Monad m, Monoid w)
   => EpAnn a -> Lens a EpaLocation -> String -> EP w m (EpAnn a)
-printStringAtAAL EpAnnNotUsed _ _ = return EpAnnNotUsed
 printStringAtAAL (EpAnn anc an cs) l str = do
   r <- printStringAtAAC CaptureComments (view l an) str
   return (EpAnn anc (set l r an) cs)
@@ -755,7 +743,6 @@ markExternalSourceText l (SourceText txt) _ = printStringAtRs (realSrcSpan l) (u
 -- ---------------------------------------------------------------------
 
 markLensMAA :: (Monad m, Monoid w) => EpAnn a -> Lens a (Maybe AddEpAnn) -> EP w m (EpAnn a)
-markLensMAA EpAnnNotUsed  _  = return EpAnnNotUsed
 markLensMAA (EpAnn anc a cs) l =
   case view l a of
     Nothing -> return (EpAnn anc a cs)
@@ -764,7 +751,6 @@ markLensMAA (EpAnn anc a cs) l =
       return (EpAnn anc (set l (Just aa') a) cs)
 
 markLensAA :: (Monad m, Monoid w) => EpAnn a -> Lens a AddEpAnn -> EP w m (EpAnn a)
-markLensAA EpAnnNotUsed  _  = return EpAnnNotUsed
 markLensAA (EpAnn anc a cs) l = do
   a' <- markKw (view l a)
   return (EpAnn anc (set l a' a) cs)
@@ -773,7 +759,6 @@ markLensAA (EpAnn anc a cs) l = do
 markEpAnnLMS :: (Monad m, Monoid w)
   => EpAnn a -> Lens a [AddEpAnn] -> AnnKeywordId -> Maybe String -> EP w m (EpAnn a)
 markEpAnnLMS an l kw Nothing = markEpAnnL an l kw
-markEpAnnLMS EpAnnNotUsed  _ _ _ = return EpAnnNotUsed
 markEpAnnLMS (EpAnn anc a cs) l kw (Just str) = do
   anns <- mapM go (view l a)
   return (EpAnn anc (set l anns a) cs)
@@ -788,7 +773,6 @@ markEpAnnLMS (EpAnn anc a cs) l kw (Just str) = do
 markEpAnnLMS' :: (Monad m, Monoid w)
                 => EpAnn a -> Lens a AddEpAnn -> AnnKeywordId -> Maybe String -> EP w m (EpAnn a)
 markEpAnnLMS' an l _kw Nothing = markLensKwA an l
-markEpAnnLMS' EpAnnNotUsed  _ _ _ = return EpAnnNotUsed
 markEpAnnLMS' (EpAnn anc a cs) l kw (Just str) = do
   anns <- go (view l a)
   return (EpAnn anc (set l anns a) cs)
@@ -883,7 +867,6 @@ markOpeningParen an = markParen an lfst
 markClosingParen an = markParen an lsnd
 
 markParen :: (Monad m, Monoid w) => EpAnn AnnParen -> (forall a. Lens (a,a) a) -> EP w m (EpAnn AnnParen)
-markParen EpAnnNotUsed _ = return (EpAnnNotUsed)
 markParen (EpAnn anc (AnnParen pt o c) cs) l = do
   loc' <- markKwA (view l $ kw pt) (view l (o, c))
   let (o',c') = set l loc' (o,c)
@@ -1256,14 +1239,12 @@ lsumPatVbarsAfter k parent = fmap (\new -> parent { sumPatVbarsAfter = new })
 
 markLensKwA :: (Monad m, Monoid w)
   => EpAnn a -> Lens a AddEpAnn -> EP w m (EpAnn a)
-markLensKwA EpAnnNotUsed  _    = return EpAnnNotUsed
 markLensKwA (EpAnn anc a cs) l = do
   loc <- markKw (view l a)
   return (EpAnn anc (set l loc a) cs)
 
 markLensKw :: (Monad m, Monoid w)
   => EpAnn a -> Lens a EpaLocation -> AnnKeywordId -> EP w m (EpAnn a)
-markLensKw EpAnnNotUsed  _ _  = return EpAnnNotUsed
 markLensKw (EpAnn anc a cs) l kw = do
   loc <- markKwA kw (view l a)
   return (EpAnn anc (set l loc a) cs)
@@ -1274,14 +1255,12 @@ markAnnKwL = markLensKw
 
 markAnnKwAllL :: (Monad m, Monoid w)
   => EpAnn a -> Lens a [EpaLocation] -> AnnKeywordId -> EP w m (EpAnn a)
-markAnnKwAllL EpAnnNotUsed  _ _  = return EpAnnNotUsed
 markAnnKwAllL (EpAnn anc a cs) l kw = do
   anns <- mapM (markKwA kw) (view l a)
   return (EpAnn anc (set l anns a) cs)
 
 markLensKwM :: (Monad m, Monoid w)
   => EpAnn a -> Lens a (Maybe EpaLocation) -> AnnKeywordId -> EP w m (EpAnn a)
-markLensKwM EpAnnNotUsed  _ _ = return EpAnnNotUsed
 markLensKwM (EpAnn anc a cs) l kw = do
   new <- go (view l a)
   return (EpAnn anc (set l new a) cs)
@@ -1293,14 +1272,12 @@ markLensKwM (EpAnn anc a cs) l kw = do
 
 markEpAnnL :: (Monad m, Monoid w)
   => EpAnn ann -> Lens ann [AddEpAnn] -> AnnKeywordId -> EP w m (EpAnn ann)
-markEpAnnL EpAnnNotUsed _ _ = return EpAnnNotUsed
 markEpAnnL (EpAnn anc a cs) l kw = do
   anns <- mark' (view l a) kw
   return (EpAnn anc (set l anns a) cs)
 
 markEpAnnAllL :: (Monad m, Monoid w)
   => EpAnn ann -> Lens ann [AddEpAnn] -> AnnKeywordId -> EP w m (EpAnn ann)
-markEpAnnAllL EpAnnNotUsed _ _ = return EpAnnNotUsed
 markEpAnnAllL (EpAnn anc a cs) l kw = do
   anns <- mapM doit (view l a)
   return (EpAnn anc (set l anns a) cs)
@@ -1377,8 +1354,6 @@ markAnnListA :: (Monad m, Monoid w)
   => EpAnn AnnList
   -> (EpAnn AnnList -> EP w m (EpAnn AnnList, a))
   -> EP w m (EpAnn AnnList, a)
-markAnnListA EpAnnNotUsed action = do
-  action EpAnnNotUsed
 markAnnListA an action = do
   an0 <- markLensMAA an lal_open
   an1 <- markEpAnnAllL an0 lal_rest AnnSemi
@@ -1552,7 +1527,6 @@ instance ExactPrint (HsModule GhcPs) where
   setAnnotationAnchor hsmod anc _ts cs = setAnchorHsModule hsmod anc cs
                    `debug` ("setAnnotationAnchor hsmod called" ++ showAst (anc,cs))
 
-  exact hsmod@(HsModule {hsmodExt = XModulePs { hsmodAnn = EpAnnNotUsed }}) = withPpr hsmod >> return hsmod
   exact (HsModule (XModulePs an lo mdeprec mbDoc) mmn mexports imports decls) = do
 
     let mbDoc' = mbDoc
@@ -1672,7 +1646,6 @@ instance ExactPrint (ImportDecl GhcPs) where
   setAnnotationAnchor idecl anc ts cs = idecl { ideclExt
                     = (ideclExt idecl) { ideclAnn = setAnchorEpa (ideclAnn $ ideclExt idecl) anc ts cs} }
 
-  exact x@(ImportDecl{ ideclExt = XImportDeclPass{ ideclAnn = EpAnnNotUsed } }) = withPpr x
   exact (ImportDecl (XImportDeclPass ann msrc impl)
                      modname mpkg src safeflag qualFlag mAs hiding) = do
 
@@ -2551,11 +2524,7 @@ instance ExactPrint (HsLocalBinds GhcPs) where
     debugM $ "exact HsValBinds: an=" ++ showAst an
     an0 <- markEpAnnL an lal_rest AnnWhere
 
-    let manc = case an of
-                 EpAnnNotUsed -> Nothing
-                 _ -> al_anchor $ anns an
-
-    case manc of
+    case al_anchor $ anns an of
       Just anc -> do
         when (not $ isEmptyValBinds valbinds) $ setExtraDP (Just anc)
       _ -> return ()
@@ -2853,14 +2822,11 @@ instance ExactPrint (GRHS GhcPs (LocatedA (HsExpr GhcPs))) where
   setAnnotationAnchor (GRHS an a b) anc ts cs = GRHS (setAnchorEpa an anc ts cs) a b
 
   exact (GRHS an guards expr) = do
-    debugM $ "GRHS comments:" ++ showGhc (comments an)
     an0 <- if null guards
              then return an
              else markLensKwM an lga_vbar AnnVbar
     guards' <- markAnnotated guards
-    debugM $ "GRHS before matchSeparator"
     an1 <- markLensAA an0 lga_sep -- Mark the matchSeparator for these GRHSs
-    debugM $ "GRHS after matchSeparator"
     expr' <- markAnnotated expr
     return (GRHS an1 guards' expr')
 
@@ -2916,7 +2882,7 @@ instance ExactPrint (HsExpr GhcPs) where
   getAnnotationEntry (HsPragE{})                  = NoEntryVal
   getAnnotationEntry (HsEmbTy{})                  = NoEntryVal
 
-  setAnnotationAnchor a@(HsVar{})              _ _ _s = a
+  setAnnotationAnchor a@(HsVar{})               _ _ _s = a
   setAnnotationAnchor (HsUnboundVar an a)    anc ts cs = (HsUnboundVar (setAnchorEpa an anc ts cs) a)
   setAnnotationAnchor a@(HsRecSel{})           _ _ _s  = a
   setAnnotationAnchor (HsOverLabel an s a)   anc ts cs = (HsOverLabel (setAnchorEpa an anc ts cs) s a)
@@ -2964,12 +2930,14 @@ instance ExactPrint (HsExpr GhcPs) where
     return (HsVar x n')
   exact x@(HsUnboundVar an _) = do
     case an of
-      EpAnnNotUsed -> withPpr x
-      EpAnn _ (EpAnnUnboundVar (ob,cb) l) _ -> do
+      EpAnn _ (Just (EpAnnUnboundVar (ob,cb) l)) _ -> do
         printStringAtAA ob "`" >> return ()
         printStringAtAA l  "_" >> return ()
         printStringAtAA cb "`" >> return ()
         return x
+      _ -> do
+        printStringAtLsDelta (SameLine 0) "_"
+        return x
   exact x@(HsOverLabel _ src l) = do
     printStringAtLsDelta (SameLine 0) "#"
     case src of
@@ -3436,6 +3404,7 @@ instance ExactPrint (DotFieldOcc GhcPs) where
 
 instance ExactPrint (HsTupArg GhcPs) where
   getAnnotationEntry (Present _ _) = NoEntryVal
+  getAnnotationEntry (Missing (EpAnn _ False _)) = NoEntryVal
   getAnnotationEntry (Missing an)   = fromAnn an
 
   setAnnotationAnchor (Present a b) _ _ _ = Present a b
@@ -3443,7 +3412,7 @@ instance ExactPrint (HsTupArg GhcPs) where
 
   exact (Present a e) = Present a <$> markAnnotated e
 
-  exact a@(Missing EpAnnNotUsed) = return a
+  exact a@(Missing (EpAnn _ False _)) = return a
   exact a@(Missing _) = printStringAdvance "," >> return a
 
 -- ---------------------------------------------------------------------
@@ -3961,7 +3930,7 @@ exactVanillaDeclHead thing tvs@(HsQTvs { hsq_explicit = tyvars }) fixity context
       return (thing', [])
   context' <- mapM markAnnotated context
   (thing', tyvars') <- exact_tyvars tyvars
-  return (EpAnnNotUsed, thing', tvs { hsq_explicit = tyvars' }, (), context')
+  return (noAnn, thing', tvs { hsq_explicit = tyvars' }, (), context')
 
 -- ---------------------------------------------------------------------
 
@@ -4282,9 +4251,6 @@ instance (ExactPrint a) => ExactPrint (LocatedC a) where
   getAnnotationEntry (L sann _) = fromAnn sann
   setAnnotationAnchor = setAnchorAn
 
-  exact (L (SrcSpanAnn EpAnnNotUsed l) a) = do
-    a' <- markAnnotated a
-    return (L (SrcSpanAnn EpAnnNotUsed l) a')
   exact (L (SrcSpanAnn (EpAnn anc (AnnContext ma opens closes) cs) l) a) = do
     opens' <- mapM (markKwA AnnOpenP) opens
     a' <- markAnnotated a
@@ -4321,9 +4287,6 @@ instance ExactPrint (LocatedN RdrName) where
   getAnnotationEntry (L sann _) = fromAnn sann
   setAnnotationAnchor = setAnchorAn
 
-  exact x@(L (SrcSpanAnn EpAnnNotUsed l) n) = do
-    _ <- printUnicode (spanAsAnchor l) n
-    return x
   exact (L (SrcSpanAnn (EpAnn anc ann cs) ll) n) = do
     ann' <-
       case ann of
@@ -4600,7 +4563,6 @@ instance ExactPrint (LocatedP CType) where
   getAnnotationEntry = entryFromLocatedA
   setAnnotationAnchor = setAnchorAn
 
-  exact x@(L (SrcSpanAnn EpAnnNotUsed _) ct) = withPpr ct >> return x
   exact (L (SrcSpanAnn an ll)
          (CType stp mh (stct,ct))) = do
     an0 <- markAnnOpenP an stp "{-# CTYPE"
@@ -5052,7 +5014,6 @@ printStringAtLsDelta cl s = do
   if isGoodDeltaWithOffset cl colOffset
     then do
       printStringAt (undelta p cl colOffset) s
-        -- `debug` ("printStringAtLsDelta:(pos,s):" ++ show (undelta p cl colOffset,s))
       p' <- getPosP
       d <- getPriorEndD
       debugM $ "printStringAtLsDelta:(pos,p,p',d,s):" ++ show (undelta p cl colOffset,p,p',d,s)
diff --git a/utils/check-exact/Main.hs b/utils/check-exact/Main.hs
index 19d2b027c7e0..3da2aad7288f 100644
--- a/utils/check-exact/Main.hs
+++ b/utils/check-exact/Main.hs
@@ -36,8 +36,8 @@ import GHC.Data.FastString
 -- ---------------------------------------------------------------------
 
 _tt :: IO ()
-_tt = testOneFile changers "/home/alanz/mysrc/git.haskell.org/worktree/master/_build/stage1/lib/"
--- _tt = testOneFile changers "/home/alanz/mysrc/git.haskell.org/ghc/_build/stage1/lib/"
+-- _tt = testOneFile changers "/home/alanz/mysrc/git.haskell.org/worktree/master/_build/stage1/lib/"
+_tt = testOneFile changers "/home/alanz/mysrc/git.haskell.org/ghc/_build/stage1/lib/"
 -- _tt = testOneFile changers "/home/alanz/mysrc/git.haskell.org/worktree/exactprint/_build/stage1/lib"
 -- _tt = testOneFile changers "/home/alanz/mysrc/git.haskell.org/worktree/epw/_build/stage1/lib"
 
@@ -127,7 +127,7 @@ _tt = testOneFile changers "/home/alanz/mysrc/git.haskell.org/worktree/master/_b
  -- "../../testsuite/tests/printer/Ppr034.hs" Nothing
  -- "../../testsuite/tests/printer/Ppr035.hs" Nothing
  -- "../../testsuite/tests/printer/Ppr036.hs" Nothing
- -- "../../testsuite/tests/printer/Ppr037.hs" Nothing
+ "../../testsuite/tests/printer/Ppr037.hs" Nothing
  -- "../../testsuite/tests/printer/Ppr038.hs" Nothing
  -- "../../testsuite/tests/printer/Ppr039.hs" Nothing
  -- "../../testsuite/tests/printer/Ppr040.hs" Nothing
@@ -206,7 +206,7 @@ _tt = testOneFile changers "/home/alanz/mysrc/git.haskell.org/worktree/master/_b
  -- "../../testsuite/tests/ghc-api/exactprint/Test20239.hs" Nothing
  -- "../../testsuite/tests/printer/PprArrowLambdaCase.hs" Nothing
  -- "../../testsuite/tests/printer/Test16279.hs" Nothing
- "../../testsuite/tests/printer/HsDocTy.hs" Nothing
+ -- "../../testsuite/tests/printer/HsDocTy.hs" Nothing
 --  "../../testsuite/tests/printer/Test22765.hs" Nothing
  -- "../../testsuite/tests/printer/Test22771.hs" Nothing
  -- "../../testsuite/tests/printer/Test23465.hs" Nothing
diff --git a/utils/check-exact/Orphans.hs b/utils/check-exact/Orphans.hs
deleted file mode 100644
index faf92ef3a4be..000000000000
--- a/utils/check-exact/Orphans.hs
+++ /dev/null
@@ -1,68 +0,0 @@
-{-# OPTIONS_GHC -fno-warn-orphans #-}
-{-# LANGUAGE FlexibleInstances #-}
-
-module Orphans where
-
-import GHC hiding (EpaComment)
-
--- -- ---------------------------------------------------------------------
-
-instance NoAnn [a] where
-  noAnn = []
-
-instance (NoAnn a, NoAnn b) => NoAnn (a, b) where
-  noAnn = (noAnn, noAnn)
-
-instance NoAnn EpaLocation where
-  noAnn = EpaDelta (SameLine 0) []
-
-instance NoAnn EpAnnSumPat where
-  noAnn = EpAnnSumPat [] [] []
-
-instance NoAnn AnnPragma where
-  noAnn = AnnPragma noAnn noAnn []
-
-instance NoAnn AddEpAnn where
-  noAnn = AddEpAnn noAnn noAnn
-
-instance NoAnn AnnKeywordId where
-  noAnn = Annlarrowtail  {- gotta pick one -}
-
-instance NoAnn AnnParen where
-  noAnn = AnnParen AnnParens noAnn noAnn
-
-instance NoAnn AnnsIf where
-  noAnn = AnnsIf noAnn noAnn noAnn Nothing Nothing
-
-instance NoAnn EpAnnHsCase where
-  noAnn = EpAnnHsCase noAnn noAnn noAnn
-
-instance NoAnn AnnFieldLabel where
-  noAnn = AnnFieldLabel Nothing
-
-instance NoAnn AnnProjection where
-  noAnn = AnnProjection noAnn noAnn
-
-instance NoAnn AnnExplicitSum where
-  noAnn = AnnExplicitSum noAnn noAnn noAnn noAnn
-
-instance NoAnn EpAnnUnboundVar where
-  noAnn = EpAnnUnboundVar noAnn  noAnn
-
-instance NoAnn GrhsAnn where
-  noAnn = GrhsAnn Nothing noAnn
-
-instance NoAnn HsRuleAnn where
-  noAnn = HsRuleAnn Nothing Nothing noAnn
-
-instance NoAnn AnnSig where
-  noAnn = AnnSig noAnn noAnn
-
-instance NoAnn EpAnnImportDecl where
-  noAnn = EpAnnImportDecl noAnn  Nothing  Nothing  Nothing  Nothing  Nothing
-
-instance NoAnn AnnsModule where
-  noAnn = AnnsModule [] [] Nothing
-
-instance NoAnn Bool where
-  noAnn = False
diff --git a/utils/check-exact/Parsers.hs b/utils/check-exact/Parsers.hs
index 54e33b37cf2b..6cfd614aae21 100644
--- a/utils/check-exact/Parsers.hs
+++ b/utils/check-exact/Parsers.hs
@@ -277,7 +277,6 @@ fixModuleTrailingComments (GHC.L l p) = GHC.L l p'
   where
     an' = case GHC.hsmodAnn $ GHC.hsmodExt p of
       (GHC.EpAnn a an ocs) -> GHC.EpAnn a an (rebalance ocs)
-      unused -> unused
     p' = p { GHC.hsmodExt = (GHC.hsmodExt p){ GHC.hsmodAnn = an' } }
 
     rebalance :: GHC.EpAnnComments -> GHC.EpAnnComments
diff --git a/utils/check-exact/Transform.hs b/utils/check-exact/Transform.hs
index 2385e593cd8e..1178195b8e68 100644
--- a/utils/check-exact/Transform.hs
+++ b/utils/check-exact/Transform.hs
@@ -86,7 +86,6 @@ module Transform
 
 import Types
 import Utils
-import Orphans () -- NoAnn instances only
 
 import Control.Monad.RWS
 import qualified Control.Monad.Fail as Fail
@@ -94,7 +93,6 @@ import qualified Control.Monad.Fail as Fail
 import GHC  hiding (parseModule, parsedSource)
 import GHC.Data.Bag
 import GHC.Data.FastString
-import qualified GHC.Data.Strict as Strict
 
 import Data.Data
 import Data.Maybe
@@ -219,7 +217,6 @@ captureTypeSigSpacing (L l (SigD x (TypeSig (EpAnn anc (AnnSig dc rs') cs) ns (H
     -- AnnDColon, and to the start of the ty
     AddEpAnn kw dca = dc
     rd = case last ns of
-      L (SrcSpanAnn EpAnnNotUsed   ll) _ -> realSrcSpan ll
       L (SrcSpanAnn (EpAnn anc' _ _) _) _ -> anchor anc' -- TODO MovedAnchor?
     dc' = case dca of
       EpaSpan (RealSrcSpan r _) -> AddEpAnn kw (EpaDelta (ss2delta (ss2posEnd rd) r) [])
@@ -229,13 +226,6 @@ captureTypeSigSpacing (L l (SigD x (TypeSig (EpAnn anc (AnnSig dc rs') cs) ns (H
 
     ty' :: LHsSigType GhcPs
     ty' = case ty of
-      (L (SrcSpanAnn EpAnnNotUsed    ll) b)
-        -> let
-             anc0 = case dca of
-               EpaSpan (RealSrcSpan r _) -> EpaDelta (ss2delta (ss2posEnd r) (realSrcSpan ll)) []
-               EpaSpan (UnhelpfulSpan _) -> EpaDelta (SameLine 1) []
-               EpaDelta _ cs0 -> EpaDelta (SameLine 1) cs0
-           in (L (SrcSpanAnn (EpAnn anc0 noAnn emptyComments) ll) b)
       (L (SrcSpanAnn (EpAnn anc0 a c) ll) b)
         -> let
               anc' = case anc0 of
@@ -265,15 +255,11 @@ setEntryDPDecl d dp = setEntryDP d dp
 -- |Set the true entry 'DeltaPos' from the annotation for a given AST
 -- element. This is the 'DeltaPos' ignoring any comments.
 setEntryDP :: NoAnn t => LocatedAn t a -> DeltaPos -> LocatedAn t a
-setEntryDP (L (SrcSpanAnn EpAnnNotUsed l) a) dp
-  = L (SrcSpanAnn
-           (EpAnn (EpaDelta dp []) noAnn emptyComments)
-           l) a
 setEntryDP (L (SrcSpanAnn (EpAnn (EpaSpan (UnhelpfulSpan _)) an cs) l) a) dp
   = L (SrcSpanAnn
            (EpAnn (EpaDelta dp []) an cs)
            l) a
-setEntryDP (L (SrcSpanAnn (EpAnn (EpaSpan _) an (EpaComments [])) l) a) dp
+setEntryDP (L (SrcSpanAnn (EpAnn (EpaSpan (RealSrcSpan _ _)) an (EpaComments [])) l) a) dp
   = L (SrcSpanAnn
            (EpAnn (EpaDelta dp []) an (EpaComments []))
            l) a
@@ -357,7 +343,6 @@ setEntryDPFromAnchor _off (EpaSpan (UnhelpfulSpan _)) (L la a) = L la a
 setEntryDPFromAnchor  off (EpaSpan (RealSrcSpan anc _)) ll@(L la _) = setEntryDP ll dp'
   where
     dp' = case la of
-      (SrcSpanAnn EpAnnNotUsed l) -> adjustDeltaForOffset off (ss2deltaEnd anc (realSrcSpan l))
       (SrcSpanAnn (EpAnn (EpaSpan (RealSrcSpan r' _)) _ _) _) -> adjustDeltaForOffset off (ss2deltaEnd anc r')
       (SrcSpanAnn (EpAnn (EpaSpan _) _ _) _)               -> adjustDeltaForOffset off (SameLine 0)
       (SrcSpanAnn (EpAnn (EpaDelta dp _) _ _) _) -> adjustDeltaForOffset off dp
@@ -368,12 +353,6 @@ setEntryDPFromAnchor  off (EpaSpan (RealSrcSpan anc _)) ll@(L la _) = setEntryDP
 -- Also transfer any comments occuring before it.
 transferEntryDP :: (Monad m, NoAnn t2, Typeable t1, Typeable t2)
   => LocatedAn t1 a -> LocatedAn t2 b -> TransformT m (LocatedAn t2 b)
-transferEntryDP (L (SrcSpanAnn EpAnnNotUsed l1) _) (L (SrcSpanAnn EpAnnNotUsed _) b) = do
-  logTr $ "transferEntryDP': EpAnnNotUsed,EpAnnNotUsed"
-  return (L (SrcSpanAnn EpAnnNotUsed l1) b)
-transferEntryDP (L (SrcSpanAnn (EpAnn anc _an cs) _l1) _) (L (SrcSpanAnn EpAnnNotUsed l2) b) = do
-  logTr $ "transferEntryDP': EpAnn,EpAnnNotUsed"
-  return (L (SrcSpanAnn (EpAnn anc noAnn cs) l2) b)
 transferEntryDP (L (SrcSpanAnn (EpAnn anc1 an1 cs1) _l1) _) (L (SrcSpanAnn (EpAnn _anc2 an2 cs2) l2) b) = do
   logTr $ "transferEntryDP': EpAnn,EpAnn"
   -- Problem: if the original had preceding comments, blindly
@@ -384,13 +363,6 @@ transferEntryDP (L (SrcSpanAnn (EpAnn anc1 an1 cs1) _l1) _) (L (SrcSpanAnn (EpAn
     (L anc _:_) -> do
       logDataWithAnnsTr "transferEntryDP':priorComments anc=" anc
       return (L (SrcSpanAnn (EpAnn anc1 (combine an1 an2) (cs1 <> cs2)) l2) b)
-transferEntryDP (L (SrcSpanAnn EpAnnNotUsed _l1) _) (L (SrcSpanAnn (EpAnn anc2 an2 cs2) l2) b) = do
-  logTr $ "transferEntryDP': EpAnnNotUsed,EpAnn"
-  return (L (SrcSpanAnn (EpAnn anc2' an2 cs2) l2) b)
-    where
-      anc2' = case anc2 of
-        EpaDelta _ _ -> anc2
-        EpaSpan _ -> EpaSpan (RealSrcSpan (realSrcSpan l2) Strict.Nothing)
 
 
 -- |If a and b are the same type return first arg, else return second
@@ -515,8 +487,6 @@ balanceCommentsMatch (L l (Match am mctxt pats (GRHSs xg grhss binds))) = do
     (l'', grhss', binds', logInfo)
       = case reverse grhss of
           [] -> (l, [], binds,                 (EpaComments [], noSrcSpanA))
-          (L lg g@(GRHS EpAnnNotUsed _grs _rhs):gs)
-            -> (l, reverse (L lg g:gs), binds, (EpaComments [], noSrcSpanA))
           (L lg (GRHS ag grs rhs):gs) ->
             let
               anc1' = setFollowingComments anc1 stay
@@ -674,7 +644,6 @@ splitCommentsStart p (EpaCommentsBalanced cs ts) = EpaCommentsBalanced cs' ts'
 
 moveLeadingComments :: (Data t, Data u, NoAnn t, NoAnn u)
   => LocatedAn t a -> SrcAnn u -> (LocatedAn t a, SrcAnn u)
-moveLeadingComments from@(L (SrcSpanAnn EpAnnNotUsed _) _) to = (from, to)
 moveLeadingComments (L la a) lb = (L la' a, lb')
   `debug` ("moveLeadingComments: (before, after, la', lb'):" ++ showAst (before, after, la', lb'))
   where
@@ -702,15 +671,13 @@ addCommentOrigDeltas (EpaCommentsBalanced pcs fcs)
   = EpaCommentsBalanced (commentOrigDeltas pcs) (commentOrigDeltas fcs)
 
 addCommentOrigDeltasAnn :: (EpAnn a) -> (EpAnn a)
-addCommentOrigDeltasAnn EpAnnNotUsed   = EpAnnNotUsed
 addCommentOrigDeltasAnn (EpAnn e a cs) = EpAnn e a (addCommentOrigDeltas cs)
 
 -- TODO: this is replicating functionality in ExactPrint. Sort out the
 -- import loop`
 anchorFromLocatedA :: LocatedA a -> RealSrcSpan
-anchorFromLocatedA (L (SrcSpanAnn an loc) _)
+anchorFromLocatedA (L (SrcSpanAnn an _loc) _)
   = case an of
-      EpAnnNotUsed    -> realSrcSpan loc
       (EpAnn anc _ _) -> anchor anc
 
 -- ---------------------------------------------------------------------
@@ -725,7 +692,6 @@ balanceSameLineComments (L la (Match anm mctxt pats (GRHSs x grhss lb))) = do
     simpleBreak n (r,_) = r > n
     (la',grhss', logInfo) = case reverse grhss of
       [] -> (la,grhss,[])
-      (L lg g@(GRHS EpAnnNotUsed _gs _rhs):grs) -> (la,reverse $ (L lg g):grs,[])
       (L lg (GRHS ga gs rhs):grs) -> (la'',reverse $ (L lg (GRHS ga' gs rhs)):grs,[(gac,(csp,csf))])
         where
           an1 = la
@@ -780,8 +746,6 @@ dn :: Int -> EpaLocation
 dn n = EpaDelta (SameLine n) []
 
 addComma :: SrcSpanAnnA -> SrcSpanAnnA
-addComma (SrcSpanAnn EpAnnNotUsed l)
-  = (SrcSpanAnn (EpAnn (spanAsAnchor l) (AnnListItem [AddCommaAnn d0]) emptyComments) l)
 addComma (SrcSpanAnn (EpAnn anc (AnnListItem as) cs) l)
   = (SrcSpanAnn (EpAnn anc (AnnListItem (AddCommaAnn d0:as)) cs) l)
 
@@ -1147,18 +1111,6 @@ replaceDeclsValbinds w (EmptyLocalBinds _) new
 
 oldWhereAnnotation :: (Monad m)
   => EpAnn AnnList -> WithWhere -> RealSrcSpan -> TransformT m (EpAnn AnnList)
-oldWhereAnnotation EpAnnNotUsed ww _oldSpan = do
-  let w = case ww of
-        WithWhere -> [AddEpAnn AnnWhere (EpaDelta (SameLine 0) [])]
-        WithoutWhere -> []
-  let anc2' = EpaDelta (SameLine 1) []
-  (anc, anc2) <- do
-          return ( EpaDelta (DifferentLine 1 2) []
-                 , anc2')
-  let an = EpAnn anc
-                  (AnnList (Just anc2) Nothing Nothing w [])
-                  emptyComments
-  return an
 oldWhereAnnotation (EpAnn anc an cs) ww _oldSpan = do
   -- TODO: when we set DP (0,0) for the HsValBinds EpEpaLocation, change the AnnList anchor to have the correct DP too
   let (AnnList ancl o c _r t) = an
diff --git a/utils/check-exact/Utils.hs b/utils/check-exact/Utils.hs
index ed7c6febdb2b..4abfb5b0de6e 100644
--- a/utils/check-exact/Utils.hs
+++ b/utils/check-exact/Utils.hs
@@ -44,7 +44,6 @@ import qualified Data.Map.Strict as Map
 
 import Debug.Trace
 import Types
-import Orphans () -- NoAnn instances only
 
 -- ---------------------------------------------------------------------
 
@@ -241,7 +240,6 @@ insertCppComments (L l p) cs = L l p'
                                               (sortEpaComments $ fc ++ cs_after)
                    where
                      (cs_before,cs_after) = break (\(L ll _) ->   (ss2pos $ anchor ll) < (ss2pos $ anchor ac) ) cs
-      unused -> unused
     p' = p { GHC.hsmodExt = (GHC.hsmodExt p) { GHC.hsmodAnn = an' } }
 
 -- ---------------------------------------------------------------------
@@ -383,7 +381,6 @@ name2String = showPprUnsafe
 -- ---------------------------------------------------------------------
 
 locatedAnAnchor :: LocatedAn a t -> RealSrcSpan
-locatedAnAnchor (L (SrcSpanAnn EpAnnNotUsed l) _) = realSrcSpan l
 locatedAnAnchor (L (SrcSpanAnn (EpAnn a _ _) _) _) = anchor a
 
 -- ---------------------------------------------------------------------
@@ -391,7 +388,6 @@ locatedAnAnchor (L (SrcSpanAnn (EpAnn a _ _) _) _) = anchor a
 -- |Version of l2l that preserves the anchor, immportant if it has an
 -- updated AnchorOperation
 moveAnchor :: NoAnn b => SrcAnn a -> SrcAnn b
-moveAnchor (SrcSpanAnn EpAnnNotUsed l) = noAnnSrcSpan l
 moveAnchor (SrcSpanAnn (EpAnn anc _ cs) l) = SrcSpanAnn (EpAnn anc noAnn cs) l
 
 -- ---------------------------------------------------------------------
diff --git a/utils/check-exact/check-exact.cabal b/utils/check-exact/check-exact.cabal
index 5d7e6c37fcb4..834a2bc35ee0 100644
--- a/utils/check-exact/check-exact.cabal
+++ b/utils/check-exact/check-exact.cabal
@@ -22,7 +22,6 @@ Executable check-exact
     Ghc-Options: -Wall
     other-modules: ExactPrint
                    Lookup
-                   Orphans
                    Parsers
                    Preprocess
                    Transform
diff --git a/utils/haddock b/utils/haddock
index 96e713f77689..c34467ea5b79 160000
--- a/utils/haddock
+++ b/utils/haddock
@@ -1 +1 @@
-Subproject commit 96e713f7768926dab4aeec5175c1854057a833c9
+Subproject commit c34467ea5b79122ac4cf39c33686195dc2f56281
-- 
GitLab