diff --git a/compiler/GHC/Parser.y b/compiler/GHC/Parser.y
index 6329727103e70b448459c1fc7781d10312c9ed53..23d17463cecedf7ca4758ae47c26f4017baa957b 100644
--- a/compiler/GHC/Parser.y
+++ b/compiler/GHC/Parser.y
@@ -4308,7 +4308,7 @@ glRR :: Located a -> RealSrcSpan
 glRR = realSrcSpan . getLoc
 
 glR :: HasLoc a => a -> Anchor
-glR la = Anchor (realSrcSpan $ getHasLoc la) UnchangedAnchor
+glR la = EpaSpan (realSrcSpan $ getHasLoc la) Strict.Nothing
 
 glMR :: Maybe (Located a) -> Located b -> Anchor
 glMR (Just la) _ = glR la
@@ -4318,7 +4318,7 @@ glEE :: (HasLoc a, HasLoc b) => a -> b -> Anchor
 glEE x y = spanAsAnchor $ comb2 x y
 
 anc :: RealSrcSpan -> Anchor
-anc r = Anchor r UnchangedAnchor
+anc r = EpaSpan r Strict.Nothing
 
 glRM :: Located a -> Maybe Anchor
 glRM (L l _) = Just $ spanAsAnchor l
@@ -4442,7 +4442,7 @@ parseSignature :: P (Located (HsModule GhcPs))
 parseSignature = parseSignatureNoHaddock >>= addHaddockToModule
 
 commentsA :: (NoAnn ann) => SrcSpan -> EpAnnComments -> SrcSpanAnn' (EpAnn ann)
-commentsA loc cs = SrcSpanAnn (EpAnn (Anchor (rs loc) UnchangedAnchor) noAnn cs) loc
+commentsA loc cs = SrcSpanAnn (EpAnn (EpaSpan (rs loc) Strict.Nothing) noAnn cs) loc
 
 -- | Instead of getting the *enclosed* comments, this includes the
 -- *preceding* ones.  It is used at the top level to get comments
diff --git a/compiler/GHC/Parser/Annotation.hs b/compiler/GHC/Parser/Annotation.hs
index fc4a918689affea55f05f6806147550979bfe4ab..fd1f85c422805b5caf80fe9b916674bbe4e54f02 100644
--- a/compiler/GHC/Parser/Annotation.hs
+++ b/compiler/GHC/Parser/Annotation.hs
@@ -18,9 +18,11 @@ module GHC.Parser.Annotation (
   getTokenSrcSpan,
   DeltaPos(..), deltaPos, getDeltaLine,
 
-  EpAnn(..), Anchor(..), AnchorOperation(..),
-  NoAnn(..),
+  EpAnn(..), Anchor, AnchorOperation(..),
+  anchor, anchor_op,
   spanAsAnchor, realSpanAsAnchor, spanFromAnchor,
+  noSpanAnchor,
+  NoAnn(..),
 
   -- ** Comments in Annotations
 
@@ -59,7 +61,7 @@ module GHC.Parser.Annotation (
   -- ** Building up annotations
   extraToAnnList, reAnn,
   reAnnL, reAnnC,
-  addAnns, addAnnsA, widenSpan, widenAnchor, widenAnchorR, widenLocatedAn,
+  addAnns, addAnnsA, widenSpan, widenAnchor, widenAnchorR, widenAnchorS, widenLocatedAn,
 
   -- ** Querying annotations
   getLocAnn,
@@ -515,21 +517,6 @@ data EpAnn ann
                   -- e.g. from TH, deriving, etc.
         deriving (Data, Eq, Functor)
 
--- | An 'Anchor' records the base location for the start of the
--- syntactic element holding the annotations, and is used as the point
--- of reference for calculating delta positions for contained
--- annotations.
--- It is also normally used as the reference point for the spacing of
--- the element relative to its container. If it is moved, that
--- relationship is tracked in the 'anchor_op' instead.
-
-data Anchor = Anchor        { anchor :: RealSrcSpan
-                                 -- ^ Base location for the start of
-                                 -- the syntactic element holding
-                                 -- the annotations.
-                            , anchor_op :: AnchorOperation }
-        deriving (Data, Eq, Show)
-
 -- | If tools modify the parsed source, the 'MovedAnchor' variant can
 -- directly provide the spacing for this item relative to the previous
 -- one when printing. This allows AST fragments with a particular
@@ -539,15 +526,36 @@ data AnchorOperation = UnchangedAnchor
                      | MovedAnchor !DeltaPos ![LEpaComment]
         deriving (Data, Eq, Show)
 
+-- | An 'Anchor' records the base location for the start of the
+-- syntactic element holding the annotations, and is used as the point
+-- of reference for calculating delta positions for contained
+-- annotations.
+-- It is also normally used as the reference point for the spacing of
+-- the element relative to its container. If the AST element is moved,
+-- that relationship is tracked in the 'anchor_op' instead.
+type Anchor = EpaLocation -- Transitional
+
+anchor :: Anchor -> RealSrcSpan
+anchor (EpaSpan r _) = r
+anchor _ = panic "anchor"
+
+anchor_op :: Anchor -> AnchorOperation
+anchor_op (EpaSpan _ _) = UnchangedAnchor
+anchor_op (EpaDelta dp cs) = MovedAnchor dp cs
 
 spanAsAnchor :: SrcSpan -> Anchor
-spanAsAnchor s  = Anchor (realSrcSpan s) UnchangedAnchor
+spanAsAnchor (RealSrcSpan r mb) = EpaSpan r mb
+spanAsAnchor s = EpaSpan (realSrcSpan s) Strict.Nothing
 
 realSpanAsAnchor :: RealSrcSpan -> Anchor
-realSpanAsAnchor s  = Anchor s UnchangedAnchor
+realSpanAsAnchor r  = EpaSpan r Strict.Nothing
 
 spanFromAnchor :: Anchor -> SrcSpan
-spanFromAnchor a = RealSrcSpan (anchor a) Strict.Nothing
+spanFromAnchor (EpaSpan r mb) = RealSrcSpan r mb
+spanFromAnchor (EpaDelta _ _) = UnhelpfulSpan (UnhelpfulOther (fsLit "spanFromAnchor"))
+
+noSpanAnchor :: Anchor
+noSpanAnchor =  EpaDelta (SameLine 0) []
 
 -- ---------------------------------------------------------------------
 
@@ -1097,7 +1105,7 @@ 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 (Anchor placeholderRealSpan UnchangedAnchor) as cs
+addAnns EpAnnNotUsed as cs = EpAnn (widenAnchor noSpanAnchor as) as cs
 
 -- AZ:TODO use widenSpan here too
 addAnnsA :: SrcSpanAnnA -> [TrailingAnn] -> EpAnnComments -> SrcSpanAnnA
@@ -1128,11 +1136,46 @@ widenRealSpan s as = foldl combineRealSrcSpans s (go as)
     go (AddEpAnn _ (EpaSpan s _):rest) = s : go rest
     go (AddEpAnn _ (EpaDelta _ _):rest) =     go rest
 
+realSpanFromAnns :: [AddEpAnn] -> Strict.Maybe RealSrcSpan
+realSpanFromAnns as = go Strict.Nothing as
+  where
+    combine Strict.Nothing r  = Strict.Just r
+    combine (Strict.Just l) r = Strict.Just $ combineRealSrcSpans l r
+
+    go acc [] = acc
+    go acc (AddEpAnn _ (EpaSpan s _b):rest) = go (combine acc s) rest
+    go acc (AddEpAnn _ _             :rest) = go acc rest
+
+bufSpanFromAnns :: [AddEpAnn] -> Strict.Maybe BufSpan
+bufSpanFromAnns as =  go Strict.Nothing as
+  where
+    combine Strict.Nothing r  = Strict.Just r
+    combine (Strict.Just l) r = Strict.Just $ combineBufSpans l r
+
+    go acc [] = acc
+    go acc (AddEpAnn _ (EpaSpan _ (Strict.Just mb)):rest) = go (combine acc mb) rest
+    go acc (AddEpAnn _ _:rest) = go acc rest
+
+-- widenAnchor :: Anchor -> [AddEpAnn] -> Anchor
+-- widenAnchor (Anchor s op) as = Anchor (widenRealSpan s as) op
 widenAnchor :: Anchor -> [AddEpAnn] -> Anchor
-widenAnchor (Anchor s op) as = Anchor (widenRealSpan s as) op
+widenAnchor (EpaSpan s mb) as
+  = EpaSpan (widenRealSpan s as) (liftA2 combineBufSpans mb  (bufSpanFromAnns as))
+-- widenAnchor (EpaSpan r mb) _ = EpaSpan r mb
+widenAnchor a@(EpaDelta _ _) as = case (realSpanFromAnns as) of
+                                    Strict.Nothing -> a
+                                    Strict.Just r -> EpaSpan r Strict.Nothing
 
 widenAnchorR :: Anchor -> RealSrcSpan -> Anchor
-widenAnchorR (Anchor s op) r = Anchor (combineRealSrcSpans s r) op
+widenAnchorR (EpaSpan s _) r = EpaSpan (combineRealSrcSpans s r) Strict.Nothing
+widenAnchorR (EpaDelta _ _) r = EpaSpan r Strict.Nothing
+
+widenAnchorS :: Anchor -> SrcSpan -> Anchor
+widenAnchorS (EpaSpan s mbe) (RealSrcSpan r mbr)
+  = EpaSpan (combineRealSrcSpans s r) (liftA2 combineBufSpans mbe mbr)
+widenAnchorS (EpaSpan us mb) _ = EpaSpan us mb
+widenAnchorS (EpaDelta _ _) (RealSrcSpan r mb) = EpaSpan r mb
+widenAnchorS anc _ = anc
 
 widenLocatedAn :: SrcSpanAnn' an -> [AddEpAnn] -> SrcSpanAnn' an
 widenLocatedAn (SrcSpanAnn a l) as = SrcSpanAnn a (widenSpan l as)
@@ -1214,14 +1257,14 @@ data NoEpAnns = NoEpAnns
   deriving (Data,Eq,Ord)
 
 noComments ::EpAnnCO
-noComments = EpAnn (Anchor placeholderRealSpan UnchangedAnchor) NoEpAnns emptyComments
+noComments = EpAnn noSpanAnchor NoEpAnns emptyComments
 
 -- TODO:AZ get rid of this
 placeholderRealSpan :: RealSrcSpan
 placeholderRealSpan = realSrcLocSpan (mkRealSrcLoc (mkFastString "placeholder") (-1) (-1))
 
 comment :: RealSrcSpan -> EpAnnComments -> EpAnnCO
-comment loc cs = EpAnn (Anchor loc UnchangedAnchor) NoEpAnns cs
+comment loc cs = EpAnn (EpaSpan loc Strict.Nothing) NoEpAnns cs
 
 -- ---------------------------------------------------------------------
 -- Utilities for managing comments in an `EpAnn a` structure.
@@ -1231,7 +1274,7 @@ comment loc cs = EpAnn (Anchor loc UnchangedAnchor) NoEpAnns cs
 -- AST prior to exact printing the changed one.
 addCommentsToSrcAnn :: (NoAnn ann) => SrcAnn ann -> EpAnnComments -> SrcAnn ann
 addCommentsToSrcAnn (SrcSpanAnn EpAnnNotUsed loc) cs
-  = SrcSpanAnn (EpAnn (Anchor (realSrcSpan loc) UnchangedAnchor) noAnn cs) loc
+  = SrcSpanAnn (EpAnn (spanAsAnchor loc) noAnn cs) loc
 addCommentsToSrcAnn (SrcSpanAnn (EpAnn a an cs) loc) cs'
   = SrcSpanAnn (EpAnn a an (cs <> cs')) loc
 
@@ -1239,7 +1282,7 @@ addCommentsToSrcAnn (SrcSpanAnn (EpAnn a an cs) loc) cs'
 -- AST prior to exact printing the changed one.
 setCommentsSrcAnn :: (NoAnn ann) => SrcAnn ann -> EpAnnComments -> SrcAnn ann
 setCommentsSrcAnn (SrcSpanAnn EpAnnNotUsed loc) cs
-  = SrcSpanAnn (EpAnn (Anchor (realSrcSpan loc) UnchangedAnchor) noAnn cs) loc
+  = SrcSpanAnn (EpAnn (spanAsAnchor  loc) noAnn cs) loc
 setCommentsSrcAnn (SrcSpanAnn (EpAnn a an _) loc) cs
   = SrcSpanAnn (EpAnn a an cs) loc
 
@@ -1248,7 +1291,7 @@ setCommentsSrcAnn (SrcSpanAnn (EpAnn a an _) loc) cs
 addCommentsToEpAnn :: (NoAnn a)
   => SrcSpan -> EpAnn a -> EpAnnComments -> EpAnn a
 addCommentsToEpAnn loc EpAnnNotUsed cs
-  = EpAnn (Anchor (realSrcSpan loc) UnchangedAnchor) noAnn 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
@@ -1256,7 +1299,7 @@ addCommentsToEpAnn _ (EpAnn a an ocs) ncs = EpAnn a an (ocs <> ncs)
 setCommentsEpAnn :: (NoAnn a)
   => SrcSpan -> EpAnn a -> EpAnnComments -> EpAnn a
 setCommentsEpAnn loc EpAnnNotUsed cs
-  = EpAnn (Anchor (realSrcSpan loc) UnchangedAnchor) noAnn 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
@@ -1268,7 +1311,7 @@ transferAnnsA (SrcSpanAnn (EpAnn a an cs) l) to
   where
     to' = case to of
       (SrcSpanAnn EpAnnNotUsed loc)
-        ->  SrcSpanAnn (EpAnn (Anchor (realSrcSpan loc) UnchangedAnchor) an cs) loc
+        ->  SrcSpanAnn (EpAnn (spanAsAnchor loc) an cs) loc
       (SrcSpanAnn (EpAnn a an' cs') loc)
         -> SrcSpanAnn (EpAnn a (an' <> an) (cs' <> cs)) loc
 
@@ -1363,11 +1406,11 @@ instance (Semigroup a) => Semigroup (EpAnn a) where
    -- annotations must follow it. So we combine them which yields the
    -- largest span
 
-instance Ord Anchor where
-  compare (Anchor s1 _) (Anchor s2 _) = compare s1 s2
-
 instance Semigroup Anchor where
-  Anchor r1 o1 <> Anchor r2 _ = Anchor (combineRealSrcSpans r1 r2) o1
+  EpaSpan s1 m1    <> EpaSpan s2 m2     = EpaSpan (combineRealSrcSpans s1 s2) (liftA2 combineBufSpans m1 m2)
+  EpaSpan s1 m1    <> _                 = EpaSpan s1 m1
+  _                <> EpaSpan s2 m2     = EpaSpan s2 m2
+  EpaDelta dp1 cs1 <> EpaDelta _dp2 cs2 = EpaDelta dp1 (cs1<>cs2)
 
 instance Semigroup EpAnnComments where
   EpaComments cs1 <> EpaComments cs2 = EpaComments (cs1 ++ cs2)
@@ -1414,9 +1457,6 @@ instance (Outputable a) => Outputable (EpAnn a) where
 instance Outputable NoEpAnns where
   ppr NoEpAnns = text "NoEpAnns"
 
-instance Outputable Anchor where
-  ppr (Anchor a o)        = text "Anchor" <+> ppr a <+> ppr o
-
 instance Outputable AnchorOperation where
   ppr UnchangedAnchor    = text "UnchangedAnchor"
   ppr (MovedAnchor d cs) = text "MovedAnchor" <+> ppr d <+> ppr cs
diff --git a/compiler/GHC/Parser/PostProcess.hs b/compiler/GHC/Parser/PostProcess.hs
index 19716cfbe27760f6eb015aa4ecfc61f0498a20f3..2e1e83c71ae305fc389defd792d1089a1e84b47c 100644
--- a/compiler/GHC/Parser/PostProcess.hs
+++ b/compiler/GHC/Parser/PostProcess.hs
@@ -478,10 +478,10 @@ add_where an@(AddEpAnn _ (EpaSpan rs _)) (EpAnn a (AnnList anc o c r t) cs) cs2
   | 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 rs _)) EpAnnNotUsed cs
-  = EpAnn (Anchor rs UnchangedAnchor)
-           (AnnList (Just $ Anchor rs UnchangedAnchor) Nothing Nothing [an] []) cs
-add_where (AddEpAnn _ (EpaDelta _ _)) _ _ = panic "add_where"
+add_where an@(AddEpAnn _ (EpaSpan rs mb)) EpAnnNotUsed cs
+  = EpAnn (EpaSpan rs mb)
+           (AnnList (Just $ EpaSpan rs mb) Nothing Nothing [an] []) cs
+add_where (AddEpAnn _ _) _ _ = panic "add_where"
  -- EpaDelta should only be used for transformations
 
 valid_anchor :: RealSrcSpan -> Bool
@@ -490,9 +490,11 @@ valid_anchor r = srcSpanStartLine r >= 0
 -- If the decl list for where binds is empty, the anchor ends up
 -- invalid. In this case, use the parent one
 patch_anchor :: RealSrcSpan -> Anchor -> Anchor
-patch_anchor r1 (Anchor r0 op) = Anchor r op
+patch_anchor r (EpaDelta _ _) = EpaSpan r Strict.Nothing
+patch_anchor r1 (EpaSpan r0 mb) = EpaSpan r mb
   where
     r = if srcSpanStartLine r0 < 0 then r1 else r0
+-- patch_anchor _ (EpaSpan ss mb) = EpaSpan ss mb
 
 fixValbindsAnn :: EpAnn AnnList -> EpAnn AnnList
 fixValbindsAnn EpAnnNotUsed = EpAnnNotUsed
@@ -502,9 +504,11 @@ fixValbindsAnn (EpAnn anchor (AnnList ma o c r t) cs)
 -- | The 'Anchor' for a stmtlist is based on either the location or
 -- the first semicolon annotion.
 stmtsAnchor :: Located (OrdList AddEpAnn,a) -> Anchor
-stmtsAnchor (L l ((ConsOL (AddEpAnn _ (EpaSpan r _)) _), _))
-  = widenAnchorR (Anchor (realSrcSpan l) UnchangedAnchor) r
-stmtsAnchor (L l _) = Anchor (realSrcSpan l) UnchangedAnchor
+stmtsAnchor (L (RealSrcSpan l mb) ((ConsOL (AddEpAnn _ (EpaSpan r rb)) _), _))
+  = widenAnchorS (EpaSpan l mb) (RealSrcSpan r rb)
+stmtsAnchor (L (RealSrcSpan l mb) _) = EpaSpan l mb
+stmtsAnchor _ = panic "stmtsAnchor"
+-- stmtsAnchor _ = Nothing
 
 stmtsLoc :: Located (OrdList AddEpAnn,a) -> SrcSpan
 stmtsLoc (L l ((ConsOL aa _), _))
@@ -1108,13 +1112,13 @@ checkTyClHdr is_cls ty
     newAnns (SrcSpanAnn EpAnnNotUsed l) (EpAnn as (AnnParen _ o c) cs) =
       let
         lr = combineRealSrcSpans (realSrcSpan l) (anchor as)
-        an = (EpAnn (Anchor lr UnchangedAnchor) (NameAnn NameParens o (srcSpan2e l) c []) cs)
+        an = (EpAnn (EpaSpan 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 = combineRealSrcSpans (anchor ap) (anchor as)
-        an = (EpAnn (Anchor lr UnchangedAnchor) (NameAnn NameParens o (srcSpan2e l) c ta) (csp Semi.<> cs))
+        an = (EpAnn (EpaSpan lr Strict.Nothing) (NameAnn NameParens o (srcSpan2e l) c ta) (csp Semi.<> cs))
       in SrcSpanAnn an (RealSrcSpan lr Strict.Nothing)
 
 -- | Yield a parse error if we have a function applied directly to a do block
diff --git a/testsuite/tests/ghc-api/exactprint/T22919.stderr b/testsuite/tests/ghc-api/exactprint/T22919.stderr
index 5215026856124544525e54bc86df80dd114de31c..3e22fc96c6300ced1161e02cdc86637189359e21 100644
--- a/testsuite/tests/ghc-api/exactprint/T22919.stderr
+++ b/testsuite/tests/ghc-api/exactprint/T22919.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T22919.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T22919.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { T22919.hs:1:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T22919.hs:1:29-33 }))]
@@ -19,9 +17,7 @@
        { T22919.hs:2:7-9 })))
     (EpaCommentsBalanced
      [(L
-       (Anchor
-        { T22919.hs:1:15-27 }
-        (UnchangedAnchor))
+       (EpaSpan { T22919.hs:1:15-27 })
        (EpaComment
         (EpaBlockComment
          "{- comment -}")
@@ -39,9 +35,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T22919.hs:2:1-9 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T22919.hs:2:1-9 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -62,9 +56,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { T22919.hs:2:1-9 })
           (Match
            (EpAnn
-            (Anchor
-             { T22919.hs:2:1-9 }
-             (UnchangedAnchor))
+            (EpaSpan { T22919.hs:2:1-9 })
             []
             (EpaComments
              []))
@@ -85,9 +77,7 @@
                { T22919.hs:2:5-9 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { T22919.hs:2:5-9 }
-                 (UnchangedAnchor))
+                (EpaSpan { T22919.hs:2:5-9 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { T22919.hs:2:5 })))
@@ -98,9 +88,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { T22919.hs:2:7-9 })
                 (HsLit
                  (EpAnn
-                  (Anchor
-                   { T22919.hs:2:7-9 }
-                   (UnchangedAnchor))
+                  (EpaSpan { T22919.hs:2:7-9 })
                   (NoEpAnns)
                   (EpaComments
                    []))
diff --git a/testsuite/tests/ghc-api/exactprint/Test20239.stderr b/testsuite/tests/ghc-api/exactprint/Test20239.stderr
index 877552eeac7ac61e1e724132f3c217cc911dbee8..ba34e6c04f9a9c3d92c520209e398f6d73a05f80 100644
--- a/testsuite/tests/ghc-api/exactprint/Test20239.stderr
+++ b/testsuite/tests/ghc-api/exactprint/Test20239.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { Test20239.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { Test20239.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { Test20239.hs:1:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { Test20239.hs:1:18-22 }))]
@@ -20,9 +18,7 @@
     (EpaCommentsBalanced
      []
      [(L
-       (Anchor
-        { Test20239.hs:8:34-63 }
-        (UnchangedAnchor))
+       (EpaSpan { Test20239.hs:8:34-63 })
        (EpaComment
         (EpaLineComment
          "-- ^ Run any arbitrary IO code")
@@ -39,24 +35,18 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { Test20239.hs:(5,1)-(7,86) }
-                  (UnchangedAnchor))
+                 (EpaSpan { Test20239.hs:(5,1)-(7,86) })
                  (AnnListItem
                   [])
                  (EpaComments
                   [(L
-                    (Anchor
-                     { Test20239.hs:3:1-28 }
-                     (UnchangedAnchor))
+                    (EpaSpan { Test20239.hs:3:1-28 })
                     (EpaComment
                      (EpaLineComment
                       "-- | Leading Haddock Comment")
                      { Test20239.hs:1:18-22 }))
                   ,(L
-                    (Anchor
-                     { Test20239.hs:4:1-25 }
-                     (UnchangedAnchor))
+                    (EpaSpan { Test20239.hs:4:1-25 })
                     (EpaComment
                      (EpaLineComment
                       "-- Running over two lines")
@@ -68,17 +58,13 @@
       (DataFamInstDecl
        (FamEqn
         (EpAnn
-         (Anchor
-          { Test20239.hs:(5,1)-(7,86) }
-          (UnchangedAnchor))
+         (EpaSpan { Test20239.hs:(5,1)-(7,86) })
          [(AddEpAnn AnnData (EpaSpan { Test20239.hs:5:1-4 }))
          ,(AddEpAnn AnnInstance (EpaSpan { Test20239.hs:5:6-13 }))
          ,(AddEpAnn AnnEqual (EpaSpan { Test20239.hs:5:34 }))]
          (EpaComments
           [(L
-            (Anchor
-             { Test20239.hs:6:34-70 }
-             (UnchangedAnchor))
+            (EpaSpan { Test20239.hs:6:34-70 })
             (EpaComment
              (EpaLineComment
               "-- ^ Run a query against the database")
@@ -94,9 +80,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:5:22-32 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { Test20239.hs:5:22-32 }
-              (UnchangedAnchor))
+             (EpaSpan { Test20239.hs:5:22-32 })
              []
              (EpaComments
               []))
@@ -115,9 +99,7 @@
           (False)
           [(L
             (SrcSpanAnn (EpAnn
-                         (Anchor
-                          { Test20239.hs:5:36-55 }
-                          (UnchangedAnchor))
+                         (EpaSpan { Test20239.hs:5:36-55 })
                          (AnnListItem
                           [(AddVbarAnn
                             (EpaSpan { Test20239.hs:7:34 }))])
@@ -125,9 +107,7 @@
                           [])) { Test20239.hs:5:36-55 })
             (ConDeclH98
              (EpAnn
-              (Anchor
-               { Test20239.hs:5:36-55 }
-               (UnchangedAnchor))
+              (EpaSpan { Test20239.hs:5:36-55 })
               []
               (EpaComments
                []))
@@ -153,9 +133,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:5:51-55 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { Test20239.hs:5:51-55 }
-                    (UnchangedAnchor))
+                   (EpaSpan { Test20239.hs:5:51-55 })
                    []
                    (EpaComments
                     []))
@@ -169,9 +147,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:36-86 })
             (ConDeclH98
              (EpAnn
-              (Anchor
-               { Test20239.hs:7:36-86 }
-               (UnchangedAnchor))
+              (EpaSpan { Test20239.hs:7:36-86 })
               []
               (EpaComments
                []))
@@ -197,9 +173,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:50-86 })
                  (HsParTy
                   (EpAnn
-                   (Anchor
-                    { Test20239.hs:7:50-86 }
-                    (UnchangedAnchor))
+                   (EpaSpan { Test20239.hs:7:50-86 })
                    (AnnParen
                     (AnnParens)
                     (EpaSpan { Test20239.hs:7:50 })
@@ -210,9 +184,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:51-85 })
                    (HsFunTy
                     (EpAnn
-                     (Anchor
-                      { Test20239.hs:7:51-85 }
-                      (UnchangedAnchor))
+                     (EpaSpan { Test20239.hs:7:51-85 })
                      (NoEpAnns)
                      (EpaComments
                       []))
@@ -225,9 +197,7 @@
                      (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:51-60 })
                      (HsTyVar
                       (EpAnn
-                       (Anchor
-                        { Test20239.hs:7:51-60 }
-                        (UnchangedAnchor))
+                       (EpaSpan { Test20239.hs:7:51-60 })
                        []
                        (EpaComments
                         []))
@@ -244,9 +214,7 @@
                        (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:65-66 })
                        (HsTyVar
                         (EpAnn
-                         (Anchor
-                          { Test20239.hs:7:65-66 }
-                          (UnchangedAnchor))
+                         (EpaSpan { Test20239.hs:7:65-66 })
                          []
                          (EpaComments
                           []))
@@ -259,9 +227,7 @@
                        (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:68-85 })
                        (HsParTy
                         (EpAnn
-                         (Anchor
-                          { Test20239.hs:7:68-85 }
-                          (UnchangedAnchor))
+                         (EpaSpan { Test20239.hs:7:68-85 })
                          (AnnParen
                           (AnnParens)
                           (EpaSpan { Test20239.hs:7:68 })
@@ -280,9 +246,7 @@
                              (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:69-74 })
                              (HsTyVar
                               (EpAnn
-                               (Anchor
-                                { Test20239.hs:7:69-74 }
-                                (UnchangedAnchor))
+                               (EpaSpan { Test20239.hs:7:69-74 })
                                []
                                (EpaComments
                                 []))
@@ -295,9 +259,7 @@
                              (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:76-81 })
                              (HsTyVar
                               (EpAnn
-                               (Anchor
-                                { Test20239.hs:7:76-81 }
-                                (UnchangedAnchor))
+                               (EpaSpan { Test20239.hs:7:76-81 })
                                []
                                (EpaComments
                                 []))
@@ -310,9 +272,7 @@
                            (SrcSpanAnn (EpAnnNotUsed) { Test20239.hs:7:83-84 })
                            (HsTupleTy
                             (EpAnn
-                             (Anchor
-                              { Test20239.hs:7:83-84 }
-                              (UnchangedAnchor))
+                             (EpaSpan { Test20239.hs:7:83-84 })
                              (AnnParen
                               (AnnParens)
                               (EpaSpan { Test20239.hs:7:83 })
diff --git a/testsuite/tests/ghc-api/exactprint/ZeroWidthSemi.stderr b/testsuite/tests/ghc-api/exactprint/ZeroWidthSemi.stderr
index 7a6c5f2327735041b7abfe98115a15d9bd9410f4..18615d1f47e80a9ea07375fb5af116623f2df709 100644
--- a/testsuite/tests/ghc-api/exactprint/ZeroWidthSemi.stderr
+++ b/testsuite/tests/ghc-api/exactprint/ZeroWidthSemi.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { ZeroWidthSemi.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { ZeroWidthSemi.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { ZeroWidthSemi.hs:1:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { ZeroWidthSemi.hs:1:22-26 }))]
@@ -19,17 +17,13 @@
        { ZeroWidthSemi.hs:8:1-58 })))
     (EpaCommentsBalanced
      [(L
-       (Anchor
-        { ZeroWidthSemi.hs:3:1-19 }
-        (UnchangedAnchor))
+       (EpaSpan { ZeroWidthSemi.hs:3:1-19 })
        (EpaComment
         (EpaLineComment
          "-- leading comments")
         { ZeroWidthSemi.hs:1:22-26 }))]
      [(L
-       (Anchor
-        { ZeroWidthSemi.hs:8:1-58 }
-        (UnchangedAnchor))
+       (EpaSpan { ZeroWidthSemi.hs:8:1-58 })
        (EpaComment
         (EpaLineComment
          "-- Trailing comment, should be in HsModule extension point")
@@ -46,16 +40,12 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { ZeroWidthSemi.hs:6:1-5 }
-                  (UnchangedAnchor))
+                 (EpaSpan { ZeroWidthSemi.hs:6:1-5 })
                  (AnnListItem
                   [])
                  (EpaComments
                   [(L
-                    (Anchor
-                     { ZeroWidthSemi.hs:5:1-19 }
-                     (UnchangedAnchor))
+                    (EpaSpan { ZeroWidthSemi.hs:5:1-19 })
                     (EpaComment
                      (EpaLineComment
                       "-- Function comment")
@@ -76,9 +66,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { ZeroWidthSemi.hs:6:1-5 })
           (Match
            (EpAnn
-            (Anchor
-             { ZeroWidthSemi.hs:6:1-5 }
-             (UnchangedAnchor))
+            (EpaSpan { ZeroWidthSemi.hs:6:1-5 })
             []
             (EpaComments
              []))
@@ -99,9 +87,7 @@
                { ZeroWidthSemi.hs:6:3-5 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { ZeroWidthSemi.hs:6:3-5 }
-                 (UnchangedAnchor))
+                (EpaSpan { ZeroWidthSemi.hs:6:3-5 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { ZeroWidthSemi.hs:6:3 })))
@@ -112,9 +98,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { ZeroWidthSemi.hs:6:5 })
                 (HsOverLit
                  (EpAnn
-                  (Anchor
-                   { ZeroWidthSemi.hs:6:5 }
-                   (UnchangedAnchor))
+                  (EpaSpan { ZeroWidthSemi.hs:6:5 })
                   (NoEpAnns)
                   (EpaComments
                    []))
diff --git a/testsuite/tests/haddock/should_compile_flag_haddock/T17544.stderr b/testsuite/tests/haddock/should_compile_flag_haddock/T17544.stderr
index 2b0581e55bf53750aa56168d1b6d4864748aefe9..e5fc4df7ef680a33d04a3de7c747fa23262a85d2 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/T17544.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/T17544.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T17544.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T17544.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { T17544.hs:3:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:3:15-19 }))]
@@ -32,9 +30,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(5,1)-(6,16) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(5,1)-(6,16) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -44,9 +40,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:(5,1)-(6,16) }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:(5,1)-(6,16) })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:5:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:5:12-16 }))]
         (EpaComments
@@ -65,9 +59,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:5:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:5:10 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:5:10 })
            []
            (EpaComments
             []))
@@ -82,9 +74,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:3-16 })
         (ClassOpSig
          (EpAnn
-          (Anchor
-           { T17544.hs:6:3-16 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:6:3-16 })
           (AnnSig
            (AddEpAnn AnnDcolon (EpaSpan { T17544.hs:6:6-7 }))
            [])
@@ -105,9 +95,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:9-16 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { T17544.hs:6:9-16 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:6:9-16 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -120,9 +108,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:9 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:6:9 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:6:9 })
                 []
                 (EpaComments
                  []))
@@ -139,9 +125,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:6:14-16 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { T17544.hs:6:14-16 }
-                   (UnchangedAnchor))
+                  (EpaSpan { T17544.hs:6:14-16 })
                   []
                   (EpaComments
                    []))
@@ -169,9 +153,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(9,1)-(10,16) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(9,1)-(10,16) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -181,9 +163,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:(9,1)-(10,16) }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:(9,1)-(10,16) })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:9:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:9:12-16 }))]
         (EpaComments
@@ -202,9 +182,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:9:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:9:10 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:9:10 })
            []
            (EpaComments
             []))
@@ -219,9 +197,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:3-16 })
         (ClassOpSig
          (EpAnn
-          (Anchor
-           { T17544.hs:10:3-16 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:10:3-16 })
           (AnnSig
            (AddEpAnn AnnDcolon (EpaSpan { T17544.hs:10:6-7 }))
            [])
@@ -242,9 +218,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:9-16 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { T17544.hs:10:9-16 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:10:9-16 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -257,9 +231,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:9 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:10:9 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:10:9 })
                 []
                 (EpaComments
                  []))
@@ -272,9 +244,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:10:14-16 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:10:14-16 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:10:14-16 })
                 []
                 (EpaComments
                  []))
@@ -304,9 +274,7 @@
            []))))])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(13,1)-(14,16) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(13,1)-(14,16) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -316,9 +284,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:(13,1)-(14,16) }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:(13,1)-(14,16) })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:13:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:13:12-16 }))]
         (EpaComments
@@ -337,9 +303,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:13:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:13:10 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:13:10 })
            []
            (EpaComments
             []))
@@ -354,9 +318,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:3-16 })
         (ClassOpSig
          (EpAnn
-          (Anchor
-           { T17544.hs:14:3-16 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:14:3-16 })
           (AnnSig
            (AddEpAnn AnnDcolon (EpaSpan { T17544.hs:14:6-7 }))
            [])
@@ -377,9 +339,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:9-16 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { T17544.hs:14:9-16 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:14:9-16 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -392,9 +352,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:9 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:14:9 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:14:9 })
                 []
                 (EpaComments
                  []))
@@ -407,9 +365,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:14:14-16 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:14:14-16 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:14:14-16 })
                 []
                 (EpaComments
                  []))
@@ -442,9 +398,7 @@
         [])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(17,1)-(20,16) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(17,1)-(20,16) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -454,9 +408,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:(17,1)-(20,16) }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:(17,1)-(20,16) })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:17:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:17:12-16 }))]
         (EpaComments
@@ -475,9 +427,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:17:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:17:10 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:17:10 })
            []
            (EpaComments
             []))
@@ -492,9 +442,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:3-16 })
         (ClassOpSig
          (EpAnn
-          (Anchor
-           { T17544.hs:18:3-16 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:18:3-16 })
           (AnnSig
            (AddEpAnn AnnDcolon (EpaSpan { T17544.hs:18:6-7 }))
            [])
@@ -515,9 +463,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:9-16 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { T17544.hs:18:9-16 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:18:9-16 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -530,9 +476,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:9 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:18:9 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:18:9 })
                 []
                 (EpaComments
                  []))
@@ -545,9 +489,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:18:14-16 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:18:14-16 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:18:14-16 })
                 []
                 (EpaComments
                  []))
@@ -560,9 +502,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:3-16 })
         (ClassOpSig
          (EpAnn
-          (Anchor
-           { T17544.hs:20:3-16 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:20:3-16 })
           (AnnSig
            (AddEpAnn AnnDcolon (EpaSpan { T17544.hs:20:6-7 }))
            [])
@@ -583,9 +523,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:9-16 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { T17544.hs:20:9-16 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:20:9-16 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -598,9 +536,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:9 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:20:9 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:20:9 })
                 []
                 (EpaComments
                  []))
@@ -613,9 +549,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:20:14-16 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:20:14-16 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:20:14-16 })
                 []
                 (EpaComments
                  []))
@@ -631,9 +565,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:22:1-30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:22:1-30 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -643,9 +575,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:22:1-30 }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:22:1-30 })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:22:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:22:12-16 }))
         ,(AddEpAnn AnnOpenC (EpaSpan { T17544.hs:22:18 }))
@@ -673,9 +603,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:22:10 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:22:10 })
            []
            (EpaComments
             []))
@@ -693,9 +621,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:20-28 })
         (FamilyDecl
          (EpAnn
-          (Anchor
-           { T17544.hs:22:20-28 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:22:20-28 })
           [(AddEpAnn AnnData (EpaSpan { T17544.hs:22:20-23 }))]
           (EpaComments
            []))
@@ -711,9 +637,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:22:28 })
             (UserTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:22:28 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:22:28 })
               []
               (EpaComments
                []))
@@ -734,9 +658,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(23,1)-(25,18) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(23,1)-(25,18) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -749,9 +671,7 @@
        ((,,)
         (Nothing)
         (EpAnn
-         (Anchor
-          { T17544.hs:(23,1)-(25,18) }
-          (UnchangedAnchor))
+         (EpaSpan { T17544.hs:(23,1)-(25,18) })
          [(AddEpAnn AnnInstance (EpaSpan { T17544.hs:23:1-8 }))
          ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:23:17-21 }))]
          (EpaComments
@@ -771,9 +691,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:23:10-11 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:23:10-11 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:23:10-11 })
               []
               (EpaComments
                []))
@@ -786,9 +704,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:23:13-15 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:23:13-15 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:23:13-15 })
               []
               (EpaComments
                []))
@@ -806,9 +722,7 @@
          (DataFamInstDecl
           (FamEqn
            (EpAnn
-            (Anchor
-             { T17544.hs:(24,3)-(25,18) }
-             (UnchangedAnchor))
+            (EpaSpan { T17544.hs:(24,3)-(25,18) })
             [(AddEpAnn AnnData (EpaSpan { T17544.hs:24:3-6 }))
             ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:24:15-19 }))]
             (EpaComments
@@ -824,9 +738,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:24:11-13 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:24:11-13 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:24:11-13 })
                 []
                 (EpaComments
                  []))
@@ -847,9 +759,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:5-18 })
                (ConDeclGADT
                 (EpAnn
-                 (Anchor
-                  { T17544.hs:25:5-18 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:25:5-18 })
                  []
                  (EpaComments
                   []))
@@ -878,9 +788,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:13-14 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:25:13-14 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:25:13-14 })
                      []
                      (EpaComments
                       []))
@@ -893,9 +801,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:25:16-18 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:25:16-18 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:25:16-18 })
                      []
                      (EpaComments
                       []))
@@ -909,9 +815,7 @@
        (Nothing)))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:28:1-30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:28:1-30 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -921,9 +825,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:28:1-30 }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:28:1-30 })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:28:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:28:12-16 }))
         ,(AddEpAnn AnnOpenC (EpaSpan { T17544.hs:28:18 }))
@@ -951,9 +853,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:28:10 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:28:10 })
            []
            (EpaComments
             []))
@@ -971,9 +871,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:20-28 })
         (FamilyDecl
          (EpAnn
-          (Anchor
-           { T17544.hs:28:20-28 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:28:20-28 })
           [(AddEpAnn AnnData (EpaSpan { T17544.hs:28:20-23 }))]
           (EpaComments
            []))
@@ -989,9 +887,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:28:28 })
             (UserTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:28:28 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:28:28 })
               []
               (EpaComments
                []))
@@ -1012,9 +908,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(29,1)-(31,18) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(29,1)-(31,18) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1027,9 +921,7 @@
        ((,,)
         (Nothing)
         (EpAnn
-         (Anchor
-          { T17544.hs:(29,1)-(31,18) }
-          (UnchangedAnchor))
+         (EpaSpan { T17544.hs:(29,1)-(31,18) })
          [(AddEpAnn AnnInstance (EpaSpan { T17544.hs:29:1-8 }))
          ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:29:17-21 }))]
          (EpaComments
@@ -1049,9 +941,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:29:10-11 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:29:10-11 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:29:10-11 })
               []
               (EpaComments
                []))
@@ -1064,9 +954,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:29:13-15 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:29:13-15 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:29:13-15 })
               []
               (EpaComments
                []))
@@ -1084,9 +972,7 @@
          (DataFamInstDecl
           (FamEqn
            (EpAnn
-            (Anchor
-             { T17544.hs:(30,3)-(31,18) }
-             (UnchangedAnchor))
+            (EpaSpan { T17544.hs:(30,3)-(31,18) })
             [(AddEpAnn AnnData (EpaSpan { T17544.hs:30:3-6 }))
             ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:30:15-19 }))]
             (EpaComments
@@ -1102,9 +988,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:30:11-13 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:30:11-13 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:30:11-13 })
                 []
                 (EpaComments
                  []))
@@ -1125,9 +1009,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:5-18 })
                (ConDeclGADT
                 (EpAnn
-                 (Anchor
-                  { T17544.hs:31:5-18 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:31:5-18 })
                  []
                  (EpaComments
                   []))
@@ -1156,9 +1038,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:13-14 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:31:13-14 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:31:13-14 })
                      []
                      (EpaComments
                       []))
@@ -1171,9 +1051,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:31:16-18 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:31:16-18 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:31:16-18 })
                      []
                      (EpaComments
                       []))
@@ -1187,9 +1065,7 @@
        (Nothing)))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:34:1-30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:34:1-30 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1199,9 +1075,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:34:1-30 }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:34:1-30 })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:34:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:34:12-16 }))
         ,(AddEpAnn AnnOpenC (EpaSpan { T17544.hs:34:18 }))
@@ -1229,9 +1103,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:34:10 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:34:10 })
            []
            (EpaComments
             []))
@@ -1249,9 +1121,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:20-28 })
         (FamilyDecl
          (EpAnn
-          (Anchor
-           { T17544.hs:34:20-28 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:34:20-28 })
           [(AddEpAnn AnnData (EpaSpan { T17544.hs:34:20-23 }))]
           (EpaComments
            []))
@@ -1267,9 +1137,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:34:28 })
             (UserTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:34:28 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:34:28 })
               []
               (EpaComments
                []))
@@ -1290,9 +1158,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(35,1)-(37,18) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(35,1)-(37,18) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1305,9 +1171,7 @@
        ((,,)
         (Nothing)
         (EpAnn
-         (Anchor
-          { T17544.hs:(35,1)-(37,18) }
-          (UnchangedAnchor))
+         (EpaSpan { T17544.hs:(35,1)-(37,18) })
          [(AddEpAnn AnnInstance (EpaSpan { T17544.hs:35:1-8 }))
          ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:35:17-21 }))]
          (EpaComments
@@ -1327,9 +1191,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:35:10-11 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:35:10-11 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:35:10-11 })
               []
               (EpaComments
                []))
@@ -1342,9 +1204,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:35:13-15 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:35:13-15 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:35:13-15 })
               []
               (EpaComments
                []))
@@ -1362,9 +1222,7 @@
          (DataFamInstDecl
           (FamEqn
            (EpAnn
-            (Anchor
-             { T17544.hs:(36,3)-(37,18) }
-             (UnchangedAnchor))
+            (EpaSpan { T17544.hs:(36,3)-(37,18) })
             [(AddEpAnn AnnData (EpaSpan { T17544.hs:36:3-6 }))
             ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:36:15-19 }))]
             (EpaComments
@@ -1380,9 +1238,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:36:11-13 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:36:11-13 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:36:11-13 })
                 []
                 (EpaComments
                  []))
@@ -1403,9 +1259,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:5-18 })
                (ConDeclGADT
                 (EpAnn
-                 (Anchor
-                  { T17544.hs:37:5-18 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:37:5-18 })
                  []
                  (EpaComments
                   []))
@@ -1434,9 +1288,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:13-14 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:37:13-14 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:37:13-14 })
                      []
                      (EpaComments
                       []))
@@ -1449,9 +1301,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:37:16-18 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:37:16-18 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:37:16-18 })
                      []
                      (EpaComments
                       []))
@@ -1465,9 +1315,7 @@
        (Nothing)))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:40:1-30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:40:1-30 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1477,9 +1325,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:40:1-30 }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:40:1-30 })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:40:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:40:12-16 }))
         ,(AddEpAnn AnnOpenC (EpaSpan { T17544.hs:40:18 }))
@@ -1507,9 +1353,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:40:10 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:40:10 })
            []
            (EpaComments
             []))
@@ -1527,9 +1371,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:20-28 })
         (FamilyDecl
          (EpAnn
-          (Anchor
-           { T17544.hs:40:20-28 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:40:20-28 })
           [(AddEpAnn AnnData (EpaSpan { T17544.hs:40:20-23 }))]
           (EpaComments
            []))
@@ -1545,9 +1387,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:40:28 })
             (UserTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:40:28 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:40:28 })
               []
               (EpaComments
                []))
@@ -1568,9 +1408,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(41,1)-(43,18) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(41,1)-(43,18) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1583,9 +1421,7 @@
        ((,,)
         (Nothing)
         (EpAnn
-         (Anchor
-          { T17544.hs:(41,1)-(43,18) }
-          (UnchangedAnchor))
+         (EpaSpan { T17544.hs:(41,1)-(43,18) })
          [(AddEpAnn AnnInstance (EpaSpan { T17544.hs:41:1-8 }))
          ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:41:17-21 }))]
          (EpaComments
@@ -1605,9 +1441,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:41:10-11 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:41:10-11 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:41:10-11 })
               []
               (EpaComments
                []))
@@ -1620,9 +1454,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:41:13-15 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:41:13-15 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:41:13-15 })
               []
               (EpaComments
                []))
@@ -1640,9 +1472,7 @@
          (DataFamInstDecl
           (FamEqn
            (EpAnn
-            (Anchor
-             { T17544.hs:(42,3)-(43,18) }
-             (UnchangedAnchor))
+            (EpaSpan { T17544.hs:(42,3)-(43,18) })
             [(AddEpAnn AnnData (EpaSpan { T17544.hs:42:3-6 }))
             ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:42:15-19 }))]
             (EpaComments
@@ -1658,9 +1488,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:42:11-13 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:42:11-13 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:42:11-13 })
                 []
                 (EpaComments
                  []))
@@ -1681,9 +1509,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:5-18 })
                (ConDeclGADT
                 (EpAnn
-                 (Anchor
-                  { T17544.hs:43:5-18 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:43:5-18 })
                  []
                  (EpaComments
                   []))
@@ -1712,9 +1538,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:13-14 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:43:13-14 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:43:13-14 })
                      []
                      (EpaComments
                       []))
@@ -1727,9 +1551,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:43:16-18 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:43:16-18 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:43:16-18 })
                      []
                      (EpaComments
                       []))
@@ -1743,9 +1565,7 @@
        (Nothing)))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:46:1-30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:46:1-30 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1755,9 +1575,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:46:1-30 }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:46:1-30 })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:46:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:46:12-16 }))
         ,(AddEpAnn AnnOpenC (EpaSpan { T17544.hs:46:18 }))
@@ -1785,9 +1603,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:46:10 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:46:10 })
            []
            (EpaComments
             []))
@@ -1805,9 +1621,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:20-28 })
         (FamilyDecl
          (EpAnn
-          (Anchor
-           { T17544.hs:46:20-28 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:46:20-28 })
           [(AddEpAnn AnnData (EpaSpan { T17544.hs:46:20-23 }))]
           (EpaComments
            []))
@@ -1823,9 +1637,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:46:28 })
             (UserTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:46:28 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:46:28 })
               []
               (EpaComments
                []))
@@ -1846,9 +1658,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(47,1)-(49,18) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(47,1)-(49,18) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1861,9 +1671,7 @@
        ((,,)
         (Nothing)
         (EpAnn
-         (Anchor
-          { T17544.hs:(47,1)-(49,18) }
-          (UnchangedAnchor))
+         (EpaSpan { T17544.hs:(47,1)-(49,18) })
          [(AddEpAnn AnnInstance (EpaSpan { T17544.hs:47:1-8 }))
          ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:47:17-21 }))]
          (EpaComments
@@ -1883,9 +1691,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:47:10-11 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:47:10-11 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:47:10-11 })
               []
               (EpaComments
                []))
@@ -1898,9 +1704,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:47:13-15 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:47:13-15 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:47:13-15 })
               []
               (EpaComments
                []))
@@ -1918,9 +1722,7 @@
          (DataFamInstDecl
           (FamEqn
            (EpAnn
-            (Anchor
-             { T17544.hs:(48,3)-(49,18) }
-             (UnchangedAnchor))
+            (EpaSpan { T17544.hs:(48,3)-(49,18) })
             [(AddEpAnn AnnData (EpaSpan { T17544.hs:48:3-6 }))
             ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:48:15-19 }))]
             (EpaComments
@@ -1936,9 +1738,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:48:11-13 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:48:11-13 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:48:11-13 })
                 []
                 (EpaComments
                  []))
@@ -1959,9 +1759,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:5-18 })
                (ConDeclGADT
                 (EpAnn
-                 (Anchor
-                  { T17544.hs:49:5-18 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:49:5-18 })
                  []
                  (EpaComments
                   []))
@@ -1990,9 +1788,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:13-14 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:49:13-14 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:49:13-14 })
                      []
                      (EpaComments
                       []))
@@ -2005,9 +1801,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:49:16-18 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:49:16-18 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:49:16-18 })
                      []
                      (EpaComments
                       []))
@@ -2021,9 +1815,7 @@
        (Nothing)))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:52:1-32 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:52:1-32 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -2033,9 +1825,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544.hs:52:1-32 }
-         (UnchangedAnchor))
+        (EpaSpan { T17544.hs:52:1-32 })
         [(AddEpAnn AnnClass (EpaSpan { T17544.hs:52:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:52:13-17 }))
         ,(AddEpAnn AnnOpenC (EpaSpan { T17544.hs:52:19 }))
@@ -2063,9 +1853,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:11 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544.hs:52:11 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544.hs:52:11 })
            []
            (EpaComments
             []))
@@ -2083,9 +1871,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:21-30 })
         (FamilyDecl
          (EpAnn
-          (Anchor
-           { T17544.hs:52:21-30 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544.hs:52:21-30 })
           [(AddEpAnn AnnData (EpaSpan { T17544.hs:52:21-24 }))]
           (EpaComments
            []))
@@ -2101,9 +1887,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:52:30 })
             (UserTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:52:30 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:52:30 })
               []
               (EpaComments
                []))
@@ -2124,9 +1908,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544.hs:(53,1)-(55,20) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:(53,1)-(55,20) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -2139,9 +1921,7 @@
        ((,,)
         (Nothing)
         (EpAnn
-         (Anchor
-          { T17544.hs:(53,1)-(55,20) }
-          (UnchangedAnchor))
+         (EpaSpan { T17544.hs:(53,1)-(55,20) })
          [(AddEpAnn AnnInstance (EpaSpan { T17544.hs:53:1-8 }))
          ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:53:18-22 }))]
          (EpaComments
@@ -2161,9 +1941,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:53:10-12 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:53:10-12 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:53:10-12 })
               []
               (EpaComments
                []))
@@ -2176,9 +1954,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:53:14-16 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544.hs:53:14-16 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544.hs:53:14-16 })
               []
               (EpaComments
                []))
@@ -2196,9 +1972,7 @@
          (DataFamInstDecl
           (FamEqn
            (EpAnn
-            (Anchor
-             { T17544.hs:(54,3)-(55,20) }
-             (UnchangedAnchor))
+            (EpaSpan { T17544.hs:(54,3)-(55,20) })
             [(AddEpAnn AnnData (EpaSpan { T17544.hs:54:3-6 }))
             ,(AddEpAnn AnnWhere (EpaSpan { T17544.hs:54:16-20 }))]
             (EpaComments
@@ -2214,9 +1988,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:54:12-14 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T17544.hs:54:12-14 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544.hs:54:12-14 })
                 []
                 (EpaComments
                  []))
@@ -2237,9 +2009,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:5-20 })
                (ConDeclGADT
                 (EpAnn
-                 (Anchor
-                  { T17544.hs:55:5-20 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544.hs:55:5-20 })
                  []
                  (EpaComments
                   []))
@@ -2268,9 +2038,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:14-16 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:55:14-16 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:55:14-16 })
                      []
                      (EpaComments
                       []))
@@ -2283,9 +2051,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T17544.hs:55:18-20 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T17544.hs:55:18-20 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T17544.hs:55:18-20 })
                      []
                      (EpaComments
                       []))
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 76a25034163039bcb0d480b4e1adf83347daaee0..b2cf28ea9adacb4e991f419a4bf8728361f2df9a 100644
--- a/testsuite/tests/haddock/should_compile_flag_haddock/T17544_kw.stderr
+++ b/testsuite/tests/haddock/should_compile_flag_haddock/T17544_kw.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T17544_kw.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T17544_kw.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { T17544_kw.hs:11:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T17544_kw.hs:13:13-17 }))]
@@ -44,9 +42,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544_kw.hs:(15,1)-(16,20) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544_kw.hs:(15,1)-(16,20) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -55,9 +51,7 @@
      (NoExtField)
      (DataDecl
       (EpAnn
-       (Anchor
-        { T17544_kw.hs:(15,1)-(16,20) }
-        (UnchangedAnchor))
+       (EpaSpan { T17544_kw.hs:(15,1)-(16,20) })
        [(AddEpAnn AnnData (EpaSpan { T17544_kw.hs:15:1-4 }))
        ,(AddEpAnn AnnWhere (EpaSpan { T17544_kw.hs:16:3-7 }))]
        (EpaComments
@@ -81,9 +75,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:16:9-20 })
           (ConDeclGADT
            (EpAnn
-            (Anchor
-             { T17544_kw.hs:16:9-20 }
-             (UnchangedAnchor))
+            (EpaSpan { T17544_kw.hs:16:9-20 })
             []
             (EpaComments
              []))
@@ -108,9 +100,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:16:18-20 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544_kw.hs:16:18-20 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544_kw.hs:16:18-20 })
               []
               (EpaComments
                []))
@@ -135,9 +125,7 @@
        []))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544_kw.hs:(18,1)-(19,26) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544_kw.hs:(18,1)-(19,26) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -146,9 +134,7 @@
      (NoExtField)
      (DataDecl
       (EpAnn
-       (Anchor
-        { T17544_kw.hs:(18,1)-(19,26) }
-        (UnchangedAnchor))
+       (EpaSpan { T17544_kw.hs:(18,1)-(19,26) })
        [(AddEpAnn AnnNewtype (EpaSpan { T17544_kw.hs:18:1-7 }))
        ,(AddEpAnn AnnWhere (EpaSpan { T17544_kw.hs:19:3-7 }))]
        (EpaComments
@@ -171,9 +157,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:19:9-26 })
          (ConDeclGADT
           (EpAnn
-           (Anchor
-            { T17544_kw.hs:19:9-26 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544_kw.hs:19:9-26 })
            []
            (EpaComments
             []))
@@ -201,18 +185,14 @@
                (HsNormalTok)))
              (L
               (SrcSpanAnn (EpAnn
-                           (Anchor
-                            { T17544_kw.hs:19:18-19 }
-                            (UnchangedAnchor))
+                           (EpaSpan { T17544_kw.hs:19:18-19 })
                            (AnnListItem
                             [])
                            (EpaComments
                             [])) { T17544_kw.hs:19:18-19 })
               (HsTupleTy
                (EpAnn
-                (Anchor
-                 { T17544_kw.hs:19:18-19 }
-                 (UnchangedAnchor))
+                (EpaSpan { T17544_kw.hs:19:18-19 })
                 (AnnParen
                  (AnnParens)
                  (EpaSpan { T17544_kw.hs:19:18 })
@@ -225,9 +205,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:19:24-26 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { T17544_kw.hs:19:24-26 }
-              (UnchangedAnchor))
+             (EpaSpan { T17544_kw.hs:19:24-26 })
              []
              (EpaComments
               []))
@@ -252,9 +230,7 @@
        []))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T17544_kw.hs:(21,1)-(24,18) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T17544_kw.hs:(21,1)-(24,18) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -264,9 +240,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T17544_kw.hs:(21,1)-(24,18) }
-         (UnchangedAnchor))
+        (EpaSpan { T17544_kw.hs:(21,1)-(24,18) })
         [(AddEpAnn AnnClass (EpaSpan { T17544_kw.hs:21:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T17544_kw.hs:23:3-7 }))]
         (EpaComments
@@ -285,9 +259,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:21:11 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T17544_kw.hs:21:11 }
-            (UnchangedAnchor))
+           (EpaSpan { T17544_kw.hs:21:11 })
            []
            (EpaComments
             []))
@@ -302,9 +274,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:24:5-18 })
         (ClassOpSig
          (EpAnn
-          (Anchor
-           { T17544_kw.hs:24:5-18 }
-           (UnchangedAnchor))
+          (EpaSpan { T17544_kw.hs:24:5-18 })
           (AnnSig
            (AddEpAnn AnnDcolon (EpaSpan { T17544_kw.hs:24:15-16 }))
            [])
@@ -325,9 +295,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T17544_kw.hs:24:18 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T17544_kw.hs:24:18 }
-               (UnchangedAnchor))
+              (EpaSpan { T17544_kw.hs:24:18 })
               []
               (EpaComments
                []))
diff --git a/testsuite/tests/module/mod185.stderr b/testsuite/tests/module/mod185.stderr
index d76840119eb938923bc2cc9e3e8117f6b4a5062e..27f06996d33a9582d3b9b17a5a571a8735b4f7b8 100644
--- a/testsuite/tests/module/mod185.stderr
+++ b/testsuite/tests/module/mod185.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { mod185.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { mod185.hs:1:1 })
     (AnnsModule
      []
      []
@@ -30,9 +28,7 @@
     (ImportDecl
      (XImportDeclPass
       (EpAnn
-       (Anchor
-        { mod185.hs:3:1-24 }
-        (UnchangedAnchor))
+       (EpaSpan { mod185.hs:3:1-24 })
        (EpAnnImportDecl
         (EpaSpan { mod185.hs:3:1-6 })
         (Nothing)
@@ -56,9 +52,7 @@
      (Nothing)))]
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { mod185.hs:5:1-24 }
-                  (UnchangedAnchor))
+                 (EpaSpan { mod185.hs:5:1-24 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -79,9 +73,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { mod185.hs:5:1-24 })
           (Match
            (EpAnn
-            (Anchor
-             { mod185.hs:5:1-24 }
-             (UnchangedAnchor))
+            (EpaSpan { mod185.hs:5:1-24 })
             []
             (EpaComments
              []))
@@ -102,9 +94,7 @@
                { mod185.hs:5:6-24 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { mod185.hs:5:6-24 }
-                 (UnchangedAnchor))
+                (EpaSpan { mod185.hs:5:6-24 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { mod185.hs:5:6 })))
diff --git a/testsuite/tests/parser/should_compile/DumpParsedAst.stderr b/testsuite/tests/parser/should_compile/DumpParsedAst.stderr
index be08561529bcc29e84a7925dc09cce16e5395631..47433ad3b8107419333417f411e83c6cd9e6b1c1 100644
--- a/testsuite/tests/parser/should_compile/DumpParsedAst.stderr
+++ b/testsuite/tests/parser/should_compile/DumpParsedAst.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { DumpParsedAst.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { DumpParsedAst.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { DumpParsedAst.hs:4:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { DumpParsedAst.hs:4:22-26 }))]
@@ -34,9 +32,7 @@
     (ImportDecl
      (XImportDeclPass
       (EpAnn
-       (Anchor
-        { DumpParsedAst.hs:5:1-16 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpParsedAst.hs:5:1-16 })
        (EpAnnImportDecl
         (EpaSpan { DumpParsedAst.hs:5:1-6 })
         (Nothing)
@@ -59,9 +55,7 @@
      (Nothing)))]
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:7:1-30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:7:1-30 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -70,9 +64,7 @@
      (NoExtField)
      (DataDecl
       (EpAnn
-       (Anchor
-        { DumpParsedAst.hs:7:1-30 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpParsedAst.hs:7:1-30 })
        [(AddEpAnn AnnData (EpaSpan { DumpParsedAst.hs:7:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { DumpParsedAst.hs:7:12 }))]
        (EpaComments
@@ -94,9 +86,7 @@
         (False)
         [(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { DumpParsedAst.hs:7:14-17 }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpParsedAst.hs:7:14-17 })
                        (AnnListItem
                         [(AddVbarAnn
                           (EpaSpan { DumpParsedAst.hs:7:19 }))])
@@ -104,9 +94,7 @@
                         [])) { DumpParsedAst.hs:7:14-17 })
           (ConDeclH98
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:7:14-17 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:7:14-17 })
             []
             (EpaComments
              []))
@@ -125,9 +113,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:7:21-30 })
           (ConDeclH98
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:7:21-30 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:7:21-30 })
             []
             (EpaComments
              []))
@@ -153,9 +139,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:7:26-30 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:7:26-30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:7:26-30 })
                  []
                  (EpaComments
                   []))
@@ -168,9 +152,7 @@
        []))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:9:1-27 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:9:1-27 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -179,9 +161,7 @@
      (NoExtField)
      (StandaloneKindSig
       (EpAnn
-       (Anchor
-        { DumpParsedAst.hs:9:1-27 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpParsedAst.hs:9:1-27 })
        [(AddEpAnn AnnType (EpaSpan { DumpParsedAst.hs:9:1-4 }))
        ,(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:9:13-14 }))]
        (EpaComments
@@ -200,9 +180,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:16-27 })
          (HsFunTy
           (EpAnn
-           (Anchor
-            { DumpParsedAst.hs:9:16-27 }
-            (UnchangedAnchor))
+           (EpaSpan { DumpParsedAst.hs:9:16-27 })
            (NoEpAnns)
            (EpaComments
             []))
@@ -215,9 +193,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:16-18 })
            (HsListTy
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:9:16-18 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:9:16-18 })
              (AnnParen
               (AnnParensSquare)
               (EpaSpan { DumpParsedAst.hs:9:16 })
@@ -228,9 +204,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:17 })
              (HsTyVar
               (EpAnn
-               (Anchor
-                { DumpParsedAst.hs:9:17 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpParsedAst.hs:9:17 })
                []
                (EpaComments
                 []))
@@ -243,9 +217,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:9:23-27 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:9:23-27 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:9:23-27 })
              []
              (EpaComments
               []))
@@ -256,9 +228,7 @@
               {OccName: Peano})))))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:(10,1)-(12,24) }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:(10,1)-(12,24) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -269,9 +239,7 @@
       (NoExtField)
       (FamilyDecl
        (EpAnn
-        (Anchor
-         { DumpParsedAst.hs:(10,1)-(12,24) }
-         (UnchangedAnchor))
+        (EpaSpan { DumpParsedAst.hs:(10,1)-(12,24) })
         [(AddEpAnn AnnType (EpaSpan { DumpParsedAst.hs:10:1-4 }))
         ,(AddEpAnn AnnFamily (EpaSpan { DumpParsedAst.hs:10:6-11 }))
         ,(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:10:32-33 }))
@@ -284,9 +252,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:3-36 })
            (FamEqn
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:11:3-36 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:11:3-36 })
              [(AddEpAnn AnnEqual (EpaSpan { DumpParsedAst.hs:11:19 }))]
              (EpaComments
               []))
@@ -301,9 +267,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:10-17 })
                (HsParTy
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:11:10-17 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:11:10-17 })
                  (AnnParen
                   (AnnParens)
                   (EpaSpan { DumpParsedAst.hs:11:10 })
@@ -319,9 +283,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:11 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { DumpParsedAst.hs:11:11 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAst.hs:11:11 })
                      []
                      (EpaComments
                       []))
@@ -338,9 +300,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:15-16 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { DumpParsedAst.hs:11:15-16 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAst.hs:11:15-16 })
                      []
                      (EpaComments
                       []))
@@ -358,9 +318,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:21-24 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:11:21-24 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:11:21-24 })
                  []
                  (EpaComments
                   []))
@@ -373,9 +331,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:26-36 })
                (HsParTy
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:11:26-36 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:11:26-36 })
                  (AnnParen
                   (AnnParens)
                   (EpaSpan { DumpParsedAst.hs:11:26 })
@@ -390,9 +346,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:27-32 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { DumpParsedAst.hs:11:27-32 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAst.hs:11:27-32 })
                      []
                      (EpaComments
                       []))
@@ -405,9 +359,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:11:34-35 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { DumpParsedAst.hs:11:34-35 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAst.hs:11:34-35 })
                      []
                      (EpaComments
                       []))
@@ -420,9 +372,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:12:3-24 })
            (FamEqn
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:12:3-24 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:12:3-24 })
              [(AddEpAnn AnnEqual (EpaSpan { DumpParsedAst.hs:12:19 }))]
              (EpaComments
               []))
@@ -437,9 +387,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:12:10-12 })
                (HsExplicitListTy
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:12:10-12 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:12:10-12 })
                  [(AddEpAnn AnnSimpleQuote (EpaSpan { DumpParsedAst.hs:12:10 }))
                  ,(AddEpAnn AnnOpenS (EpaSpan { DumpParsedAst.hs:12:11 }))
                  ,(AddEpAnn AnnCloseS (EpaSpan { DumpParsedAst.hs:12:12 }))]
@@ -452,9 +400,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:12:21-24 })
              (HsTyVar
               (EpAnn
-               (Anchor
-                { DumpParsedAst.hs:12:21-24 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpParsedAst.hs:12:21-24 })
                []
                (EpaComments
                 []))
@@ -474,9 +420,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:20-30 })
           (KindedTyVar
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:10:20-30 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:10:20-30 })
             [(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:10:24-25 }))
             ,(AddEpAnn AnnOpenP (EpaSpan { DumpParsedAst.hs:10:20 }))
             ,(AddEpAnn AnnCloseP (EpaSpan { DumpParsedAst.hs:10:30 }))]
@@ -491,9 +435,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:27-29 })
             (HsListTy
              (EpAnn
-              (Anchor
-               { DumpParsedAst.hs:10:27-29 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpParsedAst.hs:10:27-29 })
               (AnnParen
                (AnnParensSquare)
                (EpaSpan { DumpParsedAst.hs:10:27 })
@@ -504,9 +446,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:28 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { DumpParsedAst.hs:10:28 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpParsedAst.hs:10:28 })
                 []
                 (EpaComments
                  []))
@@ -526,9 +466,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:10:35-39 })
           (HsTyVar
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:10:35-39 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:10:35-39 })
             []
             (EpaComments
              []))
@@ -540,9 +478,7 @@
        (Nothing)))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:15:1-29 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:15:1-29 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -551,9 +487,7 @@
      (NoExtField)
      (DataDecl
       (EpAnn
-       (Anchor
-        { DumpParsedAst.hs:15:1-29 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpParsedAst.hs:15:1-29 })
        [(AddEpAnn AnnData (EpaSpan { DumpParsedAst.hs:15:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { DumpParsedAst.hs:15:19 }))]
        (EpaComments
@@ -568,9 +502,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:8 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { DumpParsedAst.hs:15:8 }
-            (UnchangedAnchor))
+           (EpaSpan { DumpParsedAst.hs:15:8 })
            []
            (EpaComments
             []))
@@ -583,9 +515,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:10-17 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { DumpParsedAst.hs:15:10-17 }
-            (UnchangedAnchor))
+           (EpaSpan { DumpParsedAst.hs:15:10-17 })
            [(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:15:13-14 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { DumpParsedAst.hs:15:10 }))
            ,(AddEpAnn AnnCloseP (EpaSpan { DumpParsedAst.hs:15:17 }))]
@@ -600,9 +530,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:16 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:15:16 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:15:16 })
              []
              (EpaComments
               []))
@@ -623,9 +551,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:21-29 })
           (ConDeclH98
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:15:21-29 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:15:21-29 })
             []
             (EpaComments
              []))
@@ -651,9 +577,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:25-29 })
                (HsParTy
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:15:25-29 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:15:25-29 })
                  (AnnParen
                   (AnnParens)
                   (EpaSpan { DumpParsedAst.hs:15:25 })
@@ -668,9 +592,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:26 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { DumpParsedAst.hs:15:26 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAst.hs:15:26 })
                      []
                      (EpaComments
                       []))
@@ -683,9 +605,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:15:28 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { DumpParsedAst.hs:15:28 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAst.hs:15:28 })
                      []
                      (EpaComments
                       []))
@@ -698,9 +618,7 @@
        []))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:17:1-35 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:17:1-35 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -709,9 +627,7 @@
      (NoExtField)
      (StandaloneKindSig
       (EpAnn
-       (Anchor
-        { DumpParsedAst.hs:17:1-35 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpParsedAst.hs:17:1-35 })
        [(AddEpAnn AnnType (EpaSpan { DumpParsedAst.hs:17:1-4 }))
        ,(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:17:9-10 }))]
        (EpaComments
@@ -730,9 +646,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:12-35 })
          (HsFunTy
           (EpAnn
-           (Anchor
-            { DumpParsedAst.hs:17:12-35 }
-            (UnchangedAnchor))
+           (EpaSpan { DumpParsedAst.hs:17:12-35 })
            (NoEpAnns)
            (EpaComments
             []))
@@ -745,9 +659,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:12 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:17:12 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:17:12 })
              []
              (EpaComments
               []))
@@ -760,9 +672,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:17-35 })
            (HsFunTy
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:17:17-35 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:17:17-35 })
              (NoEpAnns)
              (EpaComments
               []))
@@ -775,9 +685,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:17-27 })
              (HsParTy
               (EpAnn
-               (Anchor
-                { DumpParsedAst.hs:17:17-27 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpParsedAst.hs:17:17-27 })
                (AnnParen
                 (AnnParens)
                 (EpaSpan { DumpParsedAst.hs:17:17 })
@@ -788,9 +696,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:18-26 })
                (HsFunTy
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:17:18-26 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:17:18-26 })
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -803,9 +709,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:18 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { DumpParsedAst.hs:17:18 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpParsedAst.hs:17:18 })
                    []
                    (EpaComments
                     []))
@@ -818,9 +722,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:23-26 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { DumpParsedAst.hs:17:23-26 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpParsedAst.hs:17:23-26 })
                    []
                    (EpaComments
                     []))
@@ -833,9 +735,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:17:32-35 })
              (HsTyVar
               (EpAnn
-               (Anchor
-                { DumpParsedAst.hs:17:32-35 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpParsedAst.hs:17:32-35 })
                []
                (EpaComments
                 []))
@@ -846,9 +746,7 @@
                 {OccName: Type})))))))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:(18,1)-(19,30) }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:(18,1)-(19,30) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -859,9 +757,7 @@
       (NoExtField)
       (FamilyDecl
        (EpAnn
-        (Anchor
-         { DumpParsedAst.hs:(18,1)-(19,30) }
-         (UnchangedAnchor))
+        (EpaSpan { DumpParsedAst.hs:(18,1)-(19,30) })
         [(AddEpAnn AnnType (EpaSpan { DumpParsedAst.hs:18:1-4 }))
         ,(AddEpAnn AnnFamily (EpaSpan { DumpParsedAst.hs:18:6-11 }))
         ,(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:18:42-43 }))
@@ -874,9 +770,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:3-30 })
            (FamEqn
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:19:3-30 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:19:3-30 })
              [(AddEpAnn AnnEqual (EpaSpan { DumpParsedAst.hs:19:17 }))]
              (EpaComments
               []))
@@ -895,9 +789,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:7-11 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:19:7-11 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:19:7-11 })
                  []
                  (EpaComments
                   []))
@@ -911,9 +803,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:13 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:19:13 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:19:13 })
                  []
                  (EpaComments
                   []))
@@ -927,9 +817,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:15 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:19:15 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:19:15 })
                  []
                  (EpaComments
                   []))
@@ -955,9 +843,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:19 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { DumpParsedAst.hs:19:19 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAst.hs:19:19 })
                      []
                      (EpaComments
                       []))
@@ -974,9 +860,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:22-26 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { DumpParsedAst.hs:19:22-26 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAst.hs:19:22-26 })
                      []
                      (EpaComments
                       []))
@@ -989,9 +873,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:28 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { DumpParsedAst.hs:19:28 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpParsedAst.hs:19:28 })
                    []
                    (EpaComments
                     []))
@@ -1004,9 +886,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:19:30 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:19:30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:19:30 })
                  []
                  (EpaComments
                   []))
@@ -1026,9 +906,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:16-23 })
           (KindedTyVar
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:18:16-23 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:18:16-23 })
             [(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:18:19-20 }))
             ,(AddEpAnn AnnOpenP (EpaSpan { DumpParsedAst.hs:18:16 }))
             ,(AddEpAnn AnnCloseP (EpaSpan { DumpParsedAst.hs:18:23 }))]
@@ -1043,9 +921,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:22 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { DumpParsedAst.hs:18:22 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpParsedAst.hs:18:22 })
               []
               (EpaComments
                []))
@@ -1058,9 +934,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:25-40 })
           (KindedTyVar
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:18:25-40 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:18:25-40 })
             [(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:18:28-29 }))
             ,(AddEpAnn AnnOpenP (EpaSpan { DumpParsedAst.hs:18:25 }))
             ,(AddEpAnn AnnCloseP (EpaSpan { DumpParsedAst.hs:18:40 }))]
@@ -1075,9 +949,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:31-39 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { DumpParsedAst.hs:18:31-39 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpParsedAst.hs:18:31-39 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -1090,9 +962,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:31 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { DumpParsedAst.hs:18:31 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpParsedAst.hs:18:31 })
                 []
                 (EpaComments
                  []))
@@ -1105,9 +975,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:36-39 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { DumpParsedAst.hs:18:36-39 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpParsedAst.hs:18:36-39 })
                 []
                 (EpaComments
                  []))
@@ -1127,9 +995,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:18:45-48 })
           (HsTyVar
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:18:45-48 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:18:45-48 })
             []
             (EpaComments
              []))
@@ -1141,9 +1007,7 @@
        (Nothing)))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:21:1-33 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:21:1-33 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1154,9 +1018,7 @@
       (NoExtField)
       (FamilyDecl
        (EpAnn
-        (Anchor
-         { DumpParsedAst.hs:21:1-33 }
-         (UnchangedAnchor))
+        (EpaSpan { DumpParsedAst.hs:21:1-33 })
         [(AddEpAnn AnnData (EpaSpan { DumpParsedAst.hs:21:1-4 }))
         ,(AddEpAnn AnnFamily (EpaSpan { DumpParsedAst.hs:21:6-11 }))
         ,(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:21:17-18 }))]
@@ -1182,9 +1044,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:20-33 })
           (HsFunTy
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:21:20-33 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:21:20-33 })
             (NoEpAnns)
             (EpaComments
              []))
@@ -1197,9 +1057,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:20 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { DumpParsedAst.hs:21:20 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpParsedAst.hs:21:20 })
               []
               (EpaComments
                []))
@@ -1212,9 +1070,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:25-33 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { DumpParsedAst.hs:21:25-33 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpParsedAst.hs:21:25-33 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -1227,9 +1083,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:25 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { DumpParsedAst.hs:21:25 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpParsedAst.hs:21:25 })
                 []
                 (EpaComments
                  []))
@@ -1242,9 +1096,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:21:30-33 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { DumpParsedAst.hs:21:30-33 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpParsedAst.hs:21:30-33 })
                 []
                 (EpaComments
                  []))
@@ -1256,9 +1108,7 @@
        (Nothing)))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:(22,1)-(23,45) }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:(22,1)-(23,45) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1270,9 +1120,7 @@
       (DataFamInstDecl
        (FamEqn
         (EpAnn
-         (Anchor
-          { DumpParsedAst.hs:(22,1)-(23,45) }
-          (UnchangedAnchor))
+         (EpaSpan { DumpParsedAst.hs:(22,1)-(23,45) })
          [(AddEpAnn AnnNewtype (EpaSpan { DumpParsedAst.hs:22:1-7 }))
          ,(AddEpAnn AnnInstance (EpaSpan { DumpParsedAst.hs:22:9-16 }))
          ,(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:22:39-40 }))
@@ -1290,9 +1138,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:22-37 })
            (HsParTy
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:22:22-37 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:22:22-37 })
              (AnnParen
               (AnnParens)
               (EpaSpan { DumpParsedAst.hs:22:22 })
@@ -1303,9 +1149,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:23-36 })
              (HsKindSig
               (EpAnn
-               (Anchor
-                { DumpParsedAst.hs:22:23-36 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpParsedAst.hs:22:23-36 })
                [(AddEpAnn AnnDcolon (EpaSpan { DumpParsedAst.hs:22:25-26 }))]
                (EpaComments
                 []))
@@ -1313,9 +1157,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:23 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:22:23 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:22:23 })
                  []
                  (EpaComments
                   []))
@@ -1328,9 +1170,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:28-36 })
                (HsFunTy
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:22:28-36 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:22:28-36 })
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -1343,9 +1183,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:28 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { DumpParsedAst.hs:22:28 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpParsedAst.hs:22:28 })
                    []
                    (EpaComments
                     []))
@@ -1358,9 +1196,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:33-36 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { DumpParsedAst.hs:22:33-36 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpParsedAst.hs:22:33-36 })
                    []
                    (EpaComments
                     []))
@@ -1379,9 +1215,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:42-60 })
            (HsFunTy
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:22:42-60 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:22:42-60 })
              (NoEpAnns)
              (EpaComments
               []))
@@ -1394,9 +1228,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:42-52 })
              (HsParTy
               (EpAnn
-               (Anchor
-                { DumpParsedAst.hs:22:42-52 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpParsedAst.hs:22:42-52 })
                (AnnParen
                 (AnnParens)
                 (EpaSpan { DumpParsedAst.hs:22:42 })
@@ -1407,9 +1239,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:43-51 })
                (HsFunTy
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:22:43-51 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:22:43-51 })
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -1422,9 +1252,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:43 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { DumpParsedAst.hs:22:43 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpParsedAst.hs:22:43 })
                    []
                    (EpaComments
                     []))
@@ -1437,9 +1265,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:48-51 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { DumpParsedAst.hs:22:48-51 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpParsedAst.hs:22:48-51 })
                    []
                    (EpaComments
                     []))
@@ -1452,9 +1278,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:22:57-60 })
              (HsTyVar
               (EpAnn
-               (Anchor
-                { DumpParsedAst.hs:22:57-60 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpParsedAst.hs:22:57-60 })
                []
                (EpaComments
                 []))
@@ -1468,9 +1292,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:3-45 })
            (ConDeclGADT
             (EpAnn
-             (Anchor
-              { DumpParsedAst.hs:23:3-45 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpParsedAst.hs:23:3-45 })
              []
              (EpaComments
               []))
@@ -1498,18 +1320,14 @@
                  (HsNormalTok)))
                (L
                 (SrcSpanAnn (EpAnn
-                             (Anchor
-                              { DumpParsedAst.hs:23:10-34 }
-                              (UnchangedAnchor))
+                             (EpaSpan { DumpParsedAst.hs:23:10-34 })
                              (AnnListItem
                               [])
                              (EpaComments
                               [])) { DumpParsedAst.hs:23:10-34 })
                 (HsParTy
                  (EpAnn
-                  (Anchor
-                   { DumpParsedAst.hs:23:10-34 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpParsedAst.hs:23:10-34 })
                   (AnnParen
                    (AnnParens)
                    (EpaSpan { DumpParsedAst.hs:23:10 })
@@ -1522,9 +1340,7 @@
                    (NoExtField)
                    (HsForAllInvis
                     (EpAnn
-                     (Anchor
-                      { DumpParsedAst.hs:23:11-20 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAst.hs:23:11-20 })
                      ((,)
                       (AddEpAnn AnnForall (EpaSpan { DumpParsedAst.hs:23:11-16 }))
                       (AddEpAnn AnnDot (EpaSpan { DumpParsedAst.hs:23:20 })))
@@ -1534,9 +1350,7 @@
                       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:18-19 })
                       (UserTyVar
                        (EpAnn
-                        (Anchor
-                         { DumpParsedAst.hs:23:18-19 }
-                         (UnchangedAnchor))
+                        (EpaSpan { DumpParsedAst.hs:23:18-19 })
                         []
                         (EpaComments
                          []))
@@ -1549,9 +1363,7 @@
                     (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:22-33 })
                     (HsFunTy
                      (EpAnn
-                      (Anchor
-                       { DumpParsedAst.hs:23:22-33 }
-                       (UnchangedAnchor))
+                      (EpaSpan { DumpParsedAst.hs:23:22-33 })
                       (NoEpAnns)
                       (EpaComments
                        []))
@@ -1568,9 +1380,7 @@
                         (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:22 })
                         (HsTyVar
                          (EpAnn
-                          (Anchor
-                           { DumpParsedAst.hs:23:22 }
-                           (UnchangedAnchor))
+                          (EpaSpan { DumpParsedAst.hs:23:22 })
                           []
                           (EpaComments
                            []))
@@ -1583,9 +1393,7 @@
                         (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:24-25 })
                         (HsTyVar
                          (EpAnn
-                          (Anchor
-                           { DumpParsedAst.hs:23:24-25 }
-                           (UnchangedAnchor))
+                          (EpaSpan { DumpParsedAst.hs:23:24-25 })
                           []
                           (EpaComments
                            []))
@@ -1602,9 +1410,7 @@
                         (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:30 })
                         (HsTyVar
                          (EpAnn
-                          (Anchor
-                           { DumpParsedAst.hs:23:30 }
-                           (UnchangedAnchor))
+                          (EpaSpan { DumpParsedAst.hs:23:30 })
                           []
                           (EpaComments
                            []))
@@ -1617,9 +1423,7 @@
                         (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:32-33 })
                         (HsTyVar
                          (EpAnn
-                          (Anchor
-                           { DumpParsedAst.hs:23:32-33 }
-                           (UnchangedAnchor))
+                          (EpaSpan { DumpParsedAst.hs:23:32-33 })
                           []
                           (EpaComments
                            []))
@@ -1640,9 +1444,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:39-41 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { DumpParsedAst.hs:23:39-41 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpParsedAst.hs:23:39-41 })
                    []
                    (EpaComments
                     []))
@@ -1655,9 +1457,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:43 })
                  (HsTyVar
                   (EpAnn
-                   (Anchor
-                    { DumpParsedAst.hs:23:43 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpParsedAst.hs:23:43 })
                    []
                    (EpaComments
                     []))
@@ -1670,9 +1470,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:23:45 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:23:45 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:23:45 })
                  []
                  (EpaComments
                   []))
@@ -1685,9 +1483,7 @@
          []))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAst.hs:25:1-23 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAst.hs:25:1-23 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1708,9 +1504,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:1-23 })
           (Match
            (EpAnn
-            (Anchor
-             { DumpParsedAst.hs:25:1-23 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAst.hs:25:1-23 })
             []
             (EpaComments
              []))
@@ -1731,9 +1525,7 @@
                { DumpParsedAst.hs:25:6-23 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpParsedAst.hs:25:6-23 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpParsedAst.hs:25:6-23 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpParsedAst.hs:25:6 })))
@@ -1744,9 +1536,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:8-23 })
                 (HsApp
                  (EpAnn
-                  (Anchor
-                   { DumpParsedAst.hs:25:8-23 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpParsedAst.hs:25:8-23 })
                   (NoEpAnns)
                   (EpaComments
                    []))
@@ -1762,9 +1552,7 @@
                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAst.hs:25:17-23 })
                   (HsLit
                    (EpAnn
-                    (Anchor
-                     { DumpParsedAst.hs:25:17-23 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpParsedAst.hs:25:17-23 })
                     (NoEpAnns)
                     (EpaComments
                      []))
diff --git a/testsuite/tests/parser/should_compile/DumpParsedAstComments.stderr b/testsuite/tests/parser/should_compile/DumpParsedAstComments.stderr
index ccbabc037c47837497b54f8809b2aa852ccdf39e..307dc9c8d51a32378036ffa25b8a5fda955c6b90 100644
--- a/testsuite/tests/parser/should_compile/DumpParsedAstComments.stderr
+++ b/testsuite/tests/parser/should_compile/DumpParsedAstComments.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { DumpParsedAstComments.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { DumpParsedAstComments.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { DumpParsedAstComments.hs:5:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { DumpParsedAstComments.hs:5:30-34
@@ -20,17 +18,13 @@
        { DumpParsedAstComments.hs:19:17-23 })))
     (EpaCommentsBalanced
      [(L
-       (Anchor
-        { DumpParsedAstComments.hs:1:1-28 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpParsedAstComments.hs:1:1-28 })
        (EpaComment
         (EpaBlockComment
          "{-# LANGUAGE Haskell2010 #-}")
         { DumpParsedAstComments.hs:1:1 }))
      ,(L
-       (Anchor
-        { DumpParsedAstComments.hs:(2,1)-(4,4) }
-        (UnchangedAnchor))
+       (EpaSpan { DumpParsedAstComments.hs:(2,1)-(4,4) })
        (EpaComment
         (EpaBlockComment
          "{-/n  Block comment at the beginning/n  -}")
@@ -48,24 +42,18 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAstComments.hs:9:1-7 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAstComments.hs:9:1-7 })
                  (AnnListItem
                   [])
                  (EpaComments
                   [(L
-                    (Anchor
-                     { DumpParsedAstComments.hs:7:1-20 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpParsedAstComments.hs:7:1-20 })
                     (EpaComment
                      (EpaLineComment
                       "-- comment 1 for bar")
                      { DumpParsedAstComments.hs:5:30-34 }))
                   ,(L
-                    (Anchor
-                     { DumpParsedAstComments.hs:8:1-20 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpParsedAstComments.hs:8:1-20 })
                     (EpaComment
                      (EpaLineComment
                       "-- comment 2 for bar")
@@ -87,9 +75,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:9:1-7 })
           (Match
            (EpAnn
-            (Anchor
-             { DumpParsedAstComments.hs:9:1-7 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAstComments.hs:9:1-7 })
             []
             (EpaComments
              []))
@@ -110,9 +96,7 @@
                { DumpParsedAstComments.hs:9:5-7 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpParsedAstComments.hs:9:5-7 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpParsedAstComments.hs:9:5-7 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpParsedAstComments.hs:9:5 })))
@@ -123,9 +107,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:9:7 })
                 (HsOverLit
                  (EpAnn
-                  (Anchor
-                   { DumpParsedAstComments.hs:9:7 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpParsedAstComments.hs:9:7 })
                   (NoEpAnns)
                   (EpaComments
                    []))
@@ -140,32 +122,24 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAstComments.hs:(14,1)-(16,3) }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAstComments.hs:(14,1)-(16,3) })
                  (AnnListItem
                   [])
                  (EpaComments
                   [(L
-                    (Anchor
-                     { DumpParsedAstComments.hs:10:1-16 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpParsedAstComments.hs:10:1-16 })
                     (EpaComment
                      (EpaLineComment
                       "-- Other comment")
                      { DumpParsedAstComments.hs:9:7 }))
                   ,(L
-                    (Anchor
-                     { DumpParsedAstComments.hs:12:1-20 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpParsedAstComments.hs:12:1-20 })
                     (EpaComment
                      (EpaLineComment
                       "-- comment 1 for foo")
                      { DumpParsedAstComments.hs:10:1-16 }))
                   ,(L
-                    (Anchor
-                     { DumpParsedAstComments.hs:13:1-20 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpParsedAstComments.hs:13:1-20 })
                     (EpaComment
                      (EpaLineComment
                       "-- comment 2 for foo")
@@ -189,9 +163,7 @@
                                         })
           (Match
            (EpAnn
-            (Anchor
-             { DumpParsedAstComments.hs:(14,1)-(16,3) }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAstComments.hs:(14,1)-(16,3) })
             []
             (EpaComments
              []))
@@ -212,9 +184,7 @@
                { DumpParsedAstComments.hs:(14,5)-(16,3) })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpParsedAstComments.hs:(14,5)-(16,3) }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpParsedAstComments.hs:(14,5)-(16,3) })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpParsedAstComments.hs:14:5 })))
@@ -226,23 +196,17 @@
                                               })
                 (HsDo
                  (EpAnn
-                  (Anchor
-                   { DumpParsedAstComments.hs:(14,7)-(16,3) }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpParsedAstComments.hs:(14,7)-(16,3) })
                   (AnnList
                    (Just
-                    (Anchor
-                     { DumpParsedAstComments.hs:16:3 }
-                     (UnchangedAnchor)))
+                    (EpaSpan { DumpParsedAstComments.hs:16:3 }))
                    (Nothing)
                    (Nothing)
                    [(AddEpAnn AnnDo (EpaSpan { DumpParsedAstComments.hs:14:7-8 }))]
                    [])
                   (EpaComments
                    [(L
-                     (Anchor
-                      { DumpParsedAstComments.hs:15:3-19 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpParsedAstComments.hs:15:3-19 })
                      (EpaComment
                       (EpaLineComment
                        "-- normal comment")
@@ -251,14 +215,10 @@
                   (Nothing))
                  (L
                   (SrcSpanAnn (EpAnn
-                               (Anchor
-                                { DumpParsedAstComments.hs:16:3 }
-                                (UnchangedAnchor))
+                               (EpaSpan { DumpParsedAstComments.hs:16:3 })
                                (AnnList
                                 (Just
-                                 (Anchor
-                                  { DumpParsedAstComments.hs:16:3 }
-                                  (UnchangedAnchor)))
+                                 (EpaSpan { DumpParsedAstComments.hs:16:3 }))
                                 (Nothing)
                                 (Nothing)
                                 []
@@ -273,9 +233,7 @@
                       (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:16:3 })
                       (HsOverLit
                        (EpAnn
-                        (Anchor
-                         { DumpParsedAstComments.hs:16:3 }
-                         (UnchangedAnchor))
+                        (EpaSpan { DumpParsedAstComments.hs:16:3 })
                         (NoEpAnns)
                         (EpaComments
                          []))
@@ -292,16 +250,12 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpParsedAstComments.hs:19:1-23 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpParsedAstComments.hs:19:1-23 })
                  (AnnListItem
                   [])
                  (EpaComments
                   [(L
-                    (Anchor
-                     { DumpParsedAstComments.hs:18:1-20 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpParsedAstComments.hs:18:1-20 })
                     (EpaComment
                      (EpaLineComment
                       "-- | Haddock comment")
@@ -323,9 +277,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:1-23 })
           (Match
            (EpAnn
-            (Anchor
-             { DumpParsedAstComments.hs:19:1-23 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpParsedAstComments.hs:19:1-23 })
             []
             (EpaComments
              []))
@@ -346,9 +298,7 @@
                { DumpParsedAstComments.hs:19:6-23 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpParsedAstComments.hs:19:6-23 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpParsedAstComments.hs:19:6-23 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpParsedAstComments.hs:19:6 })))
@@ -359,9 +309,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:8-23 })
                 (HsApp
                  (EpAnn
-                  (Anchor
-                   { DumpParsedAstComments.hs:19:8-23 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpParsedAstComments.hs:19:8-23 })
                   (NoEpAnns)
                   (EpaComments
                    []))
@@ -377,9 +325,7 @@
                   (SrcSpanAnn (EpAnnNotUsed) { DumpParsedAstComments.hs:19:17-23 })
                   (HsLit
                    (EpAnn
-                    (Anchor
-                     { DumpParsedAstComments.hs:19:17-23 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpParsedAstComments.hs:19:17-23 })
                     (NoEpAnns)
                     (EpaComments
                      []))
diff --git a/testsuite/tests/parser/should_compile/DumpRenamedAst.stderr b/testsuite/tests/parser/should_compile/DumpRenamedAst.stderr
index ea2a4172182da2ce6663f6b7e142c7d19aafa278..d46adadb23944cce5c68b9886e696b5e9cd62a50 100644
--- a/testsuite/tests/parser/should_compile/DumpRenamedAst.stderr
+++ b/testsuite/tests/parser/should_compile/DumpRenamedAst.stderr
@@ -12,9 +12,7 @@
        {Bag(LocatedA (HsBind Name)):
         [(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { DumpRenamedAst.hs:35:1-23 }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpRenamedAst.hs:35:1-23 })
                        (AnnListItem
                         [])
                        (EpaComments
@@ -54,9 +52,7 @@
                      (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:8-23 })
                      (HsApp
                       (EpAnn
-                       (Anchor
-                        { DumpRenamedAst.hs:35:8-23 }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpRenamedAst.hs:35:8-23 })
                        (NoEpAnns)
                        (EpaComments
                         []))
@@ -71,9 +67,7 @@
                        (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:35:17-23 })
                        (HsLit
                         (EpAnn
-                         (Anchor
-                          { DumpRenamedAst.hs:35:17-23 }
-                          (UnchangedAnchor))
+                         (EpaSpan { DumpRenamedAst.hs:35:17-23 })
                          (NoEpAnns)
                          (EpaComments
                           []))
@@ -88,9 +82,7 @@
      (NoExtField)
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:9:1-30 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:9:1-30 })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -116,9 +108,7 @@
           (False)
           [(L
             (SrcSpanAnn (EpAnn
-                         (Anchor
-                          { DumpRenamedAst.hs:9:14-17 }
-                          (UnchangedAnchor))
+                         (EpaSpan { DumpRenamedAst.hs:9:14-17 })
                          (AnnListItem
                           [(AddVbarAnn
                             (EpaSpan { DumpRenamedAst.hs:9:19 }))])
@@ -174,9 +164,7 @@
      (NoExtField)
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:(12,1)-(14,24) }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:(12,1)-(14,24) })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -298,9 +286,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:20-30 })
             (KindedTyVar
              (EpAnn
-              (Anchor
-               { DumpRenamedAst.hs:12:20-30 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpRenamedAst.hs:12:20-30 })
               [(AddEpAnn AnnDcolon (EpaSpan { DumpRenamedAst.hs:12:24-25 }))
               ,(AddEpAnn AnnOpenP (EpaSpan { DumpRenamedAst.hs:12:20 }))
               ,(AddEpAnn AnnCloseP (EpaSpan { DumpRenamedAst.hs:12:30 }))]
@@ -314,9 +300,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:12:27-29 })
               (HsListTy
                (EpAnn
-                (Anchor
-                 { DumpRenamedAst.hs:12:27-29 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpRenamedAst.hs:12:27-29 })
                 (AnnParen
                  (AnnParensSquare)
                  (EpaSpan { DumpRenamedAst.hs:12:27 })
@@ -350,9 +334,7 @@
      []
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:11:1-27 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:11:1-27 })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -372,9 +354,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:16-27 })
            (HsFunTy
             (EpAnn
-             (Anchor
-              { DumpRenamedAst.hs:11:16-27 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpRenamedAst.hs:11:16-27 })
              (NoEpAnns)
              (EpaComments
               []))
@@ -387,9 +367,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:11:16-18 })
              (HsListTy
               (EpAnn
-               (Anchor
-                { DumpRenamedAst.hs:11:16-18 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpRenamedAst.hs:11:16-18 })
                (AnnParen
                 (AnnParensSquare)
                 (EpaSpan { DumpRenamedAst.hs:11:16 })
@@ -417,9 +395,7 @@
      (NoExtField)
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:16:1-33 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:16:1-33 })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -447,9 +423,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:20-33 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { DumpRenamedAst.hs:16:20-33 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpRenamedAst.hs:16:20-33 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -470,9 +444,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:16:25-33 })
               (HsFunTy
                (EpAnn
-                (Anchor
-                 { DumpRenamedAst.hs:16:25-33 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpRenamedAst.hs:16:25-33 })
                 (NoEpAnns)
                 (EpaComments
                  []))
@@ -502,9 +474,7 @@
      []
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:(19,1)-(20,45) }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:(19,1)-(20,45) })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -529,9 +499,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:23-36 })
                (HsKindSig
                 (EpAnn
-                 (Anchor
-                  { DumpRenamedAst.hs:19:23-36 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpRenamedAst.hs:19:23-36 })
                  [(AddEpAnn AnnDcolon (EpaSpan { DumpRenamedAst.hs:19:25-26 }))]
                  (EpaComments
                   []))
@@ -547,9 +515,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:28-36 })
                  (HsFunTy
                   (EpAnn
-                   (Anchor
-                    { DumpRenamedAst.hs:19:28-36 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpRenamedAst.hs:19:28-36 })
                    (NoEpAnns)
                    (EpaComments
                     []))
@@ -584,9 +550,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:42-60 })
              (HsFunTy
               (EpAnn
-               (Anchor
-                { DumpRenamedAst.hs:19:42-60 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpRenamedAst.hs:19:42-60 })
                (NoEpAnns)
                (EpaComments
                 []))
@@ -603,9 +567,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:19:43-51 })
                  (HsFunTy
                   (EpAnn
-                   (Anchor
-                    { DumpRenamedAst.hs:19:43-51 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpRenamedAst.hs:19:43-51 })
                    (NoEpAnns)
                    (EpaComments
                     []))
@@ -667,9 +629,7 @@
                    (HsNormalTok)))
                  (L
                   (SrcSpanAnn (EpAnn
-                               (Anchor
-                                { DumpRenamedAst.hs:20:10-34 }
-                                (UnchangedAnchor))
+                               (EpaSpan { DumpRenamedAst.hs:20:10-34 })
                                (AnnListItem
                                 [])
                                (EpaComments
@@ -686,9 +646,7 @@
                         (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:18-19 })
                         (UserTyVar
                          (EpAnn
-                          (Anchor
-                           { DumpRenamedAst.hs:20:18-19 }
-                           (UnchangedAnchor))
+                          (EpaSpan { DumpRenamedAst.hs:20:18-19 })
                           []
                           (EpaComments
                            []))
@@ -700,9 +658,7 @@
                       (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:20:22-33 })
                       (HsFunTy
                        (EpAnn
-                        (Anchor
-                         { DumpRenamedAst.hs:20:22-33 }
-                         (UnchangedAnchor))
+                        (EpaSpan { DumpRenamedAst.hs:20:22-33 })
                         (NoEpAnns)
                         (EpaComments
                          []))
@@ -789,9 +745,7 @@
      (NoExtField)
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:22:1-29 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:22:1-29 })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -811,9 +765,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:8 })
            (UserTyVar
             (EpAnn
-             (Anchor
-              { DumpRenamedAst.hs:22:8 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpRenamedAst.hs:22:8 })
              []
              (EpaComments
               []))
@@ -825,9 +777,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:22:10-17 })
            (KindedTyVar
             (EpAnn
-             (Anchor
-              { DumpRenamedAst.hs:22:10-17 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpRenamedAst.hs:22:10-17 })
              [(AddEpAnn AnnDcolon (EpaSpan { DumpRenamedAst.hs:22:13-14 }))
              ,(AddEpAnn AnnOpenP (EpaSpan { DumpRenamedAst.hs:22:10 }))
              ,(AddEpAnn AnnCloseP (EpaSpan { DumpRenamedAst.hs:22:17 }))]
@@ -907,9 +857,7 @@
      (NoExtField)
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:(25,1)-(26,30) }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:(25,1)-(26,30) })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -1020,9 +968,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:16-23 })
             (KindedTyVar
              (EpAnn
-              (Anchor
-               { DumpRenamedAst.hs:25:16-23 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpRenamedAst.hs:25:16-23 })
               [(AddEpAnn AnnDcolon (EpaSpan { DumpRenamedAst.hs:25:19-20 }))
               ,(AddEpAnn AnnOpenP (EpaSpan { DumpRenamedAst.hs:25:16 }))
               ,(AddEpAnn AnnCloseP (EpaSpan { DumpRenamedAst.hs:25:23 }))]
@@ -1044,9 +990,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:25-40 })
             (KindedTyVar
              (EpAnn
-              (Anchor
-               { DumpRenamedAst.hs:25:25-40 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpRenamedAst.hs:25:25-40 })
               [(AddEpAnn AnnDcolon (EpaSpan { DumpRenamedAst.hs:25:28-29 }))
               ,(AddEpAnn AnnOpenP (EpaSpan { DumpRenamedAst.hs:25:25 }))
               ,(AddEpAnn AnnCloseP (EpaSpan { DumpRenamedAst.hs:25:40 }))]
@@ -1060,9 +1004,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:25:31-39 })
               (HsFunTy
                (EpAnn
-                (Anchor
-                 { DumpRenamedAst.hs:25:31-39 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpRenamedAst.hs:25:31-39 })
                 (NoEpAnns)
                 (EpaComments
                  []))
@@ -1106,9 +1048,7 @@
      []
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:24:1-35 }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:24:1-35 })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -1128,9 +1068,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:12-35 })
            (HsFunTy
             (EpAnn
-             (Anchor
-              { DumpRenamedAst.hs:24:12-35 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpRenamedAst.hs:24:12-35 })
              (NoEpAnns)
              (EpaComments
               []))
@@ -1151,9 +1089,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:17-35 })
              (HsFunTy
               (EpAnn
-               (Anchor
-                { DumpRenamedAst.hs:24:17-35 }
-                (UnchangedAnchor))
+               (EpaSpan { DumpRenamedAst.hs:24:17-35 })
                (NoEpAnns)
                (EpaComments
                 []))
@@ -1170,9 +1106,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:24:18-26 })
                  (HsFunTy
                   (EpAnn
-                   (Anchor
-                    { DumpRenamedAst.hs:24:18-26 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpRenamedAst.hs:24:18-26 })
                    (NoEpAnns)
                    (EpaComments
                     []))
@@ -1210,9 +1144,7 @@
      (NoExtField)
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:(28,1)-(29,12) }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:(28,1)-(29,12) })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -1232,9 +1164,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:28:9 })
            (UserTyVar
             (EpAnn
-             (Anchor
-              { DumpRenamedAst.hs:28:9 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpRenamedAst.hs:28:9 })
              []
              (EpaComments
               []))
@@ -1262,9 +1192,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:29:10 })
               (UserTyVar
                (EpAnn
-                (Anchor
-                 { DumpRenamedAst.hs:29:10 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpRenamedAst.hs:29:10 })
                 []
                 (EpaComments
                  []))
@@ -1276,9 +1204,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:29:12 })
               (UserTyVar
                (EpAnn
-                (Anchor
-                 { DumpRenamedAst.hs:29:12 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpRenamedAst.hs:29:12 })
                 []
                 (EpaComments
                  []))
@@ -1300,9 +1226,7 @@
      []
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { DumpRenamedAst.hs:(31,1)-(32,27) }
-                     (UnchangedAnchor))
+                    (EpaSpan { DumpRenamedAst.hs:(31,1)-(32,27) })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -1333,9 +1257,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:31:12-14 })
               (HsListTy
                (EpAnn
-                (Anchor
-                 { DumpRenamedAst.hs:31:12-14 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpRenamedAst.hs:31:12-14 })
                 (AnnParen
                  (AnnParensSquare)
                  (EpaSpan { DumpRenamedAst.hs:31:12 })
@@ -1357,9 +1279,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:3-27 })
            (TyFamInstDecl
             (EpAnn
-             (Anchor
-              { DumpRenamedAst.hs:32:3-27 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpRenamedAst.hs:32:3-27 })
              [(AddEpAnn AnnType (EpaSpan { DumpRenamedAst.hs:32:3-6 }))]
              (EpaComments
               []))
@@ -1375,9 +1295,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpRenamedAst.hs:32:10-12 })
                 (HsListTy
                  (EpAnn
-                  (Anchor
-                   { DumpRenamedAst.hs:32:10-12 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpRenamedAst.hs:32:10-12 })
                   (AnnParen
                    (AnnParensSquare)
                    (EpaSpan { DumpRenamedAst.hs:32:10 })
@@ -1465,9 +1383,7 @@
     (ImportDecl
      (XImportDeclPass
       (EpAnn
-       (Anchor
-        { DumpRenamedAst.hs:5:1-16 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpRenamedAst.hs:5:1-16 })
        (EpAnnImportDecl
         (EpaSpan { DumpRenamedAst.hs:5:1-6 })
         (Nothing)
@@ -1493,9 +1409,7 @@
     (ImportDecl
      (XImportDeclPass
       (EpAnn
-       (Anchor
-        { DumpRenamedAst.hs:7:1-23 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpRenamedAst.hs:7:1-23 })
        (EpAnnImportDecl
         (EpaSpan { DumpRenamedAst.hs:7:1-6 })
         (Nothing)
@@ -1520,9 +1434,7 @@
        (Exactly)
        (L
         (SrcSpanAnn (EpAnn
-                     (Anchor
-                      { DumpRenamedAst.hs:7:18-23 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpRenamedAst.hs:7:18-23 })
                      (AnnList
                       (Nothing)
                       (Just
diff --git a/testsuite/tests/parser/should_compile/DumpSemis.stderr b/testsuite/tests/parser/should_compile/DumpSemis.stderr
index 2497f5ab94c54451599a997af1d146a5040b28d9..44dd141acd0c7ccf6fe9815f7268e35e149d8b01 100644
--- a/testsuite/tests/parser/should_compile/DumpSemis.stderr
+++ b/testsuite/tests/parser/should_compile/DumpSemis.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { DumpSemis.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { DumpSemis.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { DumpSemis.hs:1:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { DumpSemis.hs:1:18-22 }))]
@@ -42,9 +40,7 @@
   (Nothing)
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:5:1-19 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:5:1-19 })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:6:1 }))
@@ -57,9 +53,7 @@
     (ImportDecl
      (XImportDeclPass
       (EpAnn
-       (Anchor
-        { DumpSemis.hs:5:1-19 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpSemis.hs:5:1-19 })
        (EpAnnImportDecl
         (EpaSpan { DumpSemis.hs:5:1-6 })
         (Nothing)
@@ -84,9 +78,7 @@
        (Exactly)
        (L
         (SrcSpanAnn (EpAnn
-                     (Anchor
-                      { DumpSemis.hs:5:18-19 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpSemis.hs:5:18-19 })
                      (AnnList
                       (Nothing)
                       (Just
@@ -100,9 +92,7 @@
         [])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:7:1-16 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:7:1-16 })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:8:4 }))
@@ -115,9 +105,7 @@
     (ImportDecl
      (XImportDeclPass
       (EpAnn
-       (Anchor
-        { DumpSemis.hs:7:1-16 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpSemis.hs:7:1-16 })
        (EpAnnImportDecl
         (EpaSpan { DumpSemis.hs:7:1-6 })
         (Nothing)
@@ -140,9 +128,7 @@
      (Nothing)))]
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:9:1-12 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:9:1-12 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -151,9 +137,7 @@
      (NoExtField)
      (TypeSig
       (EpAnn
-       (Anchor
-        { DumpSemis.hs:9:1-12 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpSemis.hs:9:1-12 })
        (AnnSig
         (AddEpAnn AnnDcolon (EpaSpan { DumpSemis.hs:9:5-6 }))
         [])
@@ -179,9 +163,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:9:8-9 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { DumpSemis.hs:9:8-9 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpSemis.hs:9:8-9 })
               []
               (EpaComments
                []))
@@ -194,9 +176,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:9:11-12 })
             (HsTupleTy
              (EpAnn
-              (Anchor
-               { DumpSemis.hs:9:11-12 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpSemis.hs:9:11-12 })
               (AnnParen
                (AnnParens)
                (EpaSpan { DumpSemis.hs:9:11 })
@@ -207,9 +187,7 @@
              []))))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:(10,1)-(12,3) }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:(10,1)-(12,3) })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:13:1 }))
@@ -235,9 +213,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(10,1)-(12,3) })
           (Match
            (EpAnn
-            (Anchor
-             { DumpSemis.hs:(10,1)-(12,3) }
-             (UnchangedAnchor))
+            (EpaSpan { DumpSemis.hs:(10,1)-(12,3) })
             []
             (EpaComments
              []))
@@ -258,9 +234,7 @@
                { DumpSemis.hs:(10,5)-(12,3) })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:(10,5)-(12,3) }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:(10,5)-(12,3) })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:10:5 })))
@@ -271,14 +245,10 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(10,7)-(12,3) })
                 (HsDo
                  (EpAnn
-                  (Anchor
-                   { DumpSemis.hs:(10,7)-(12,3) }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpSemis.hs:(10,7)-(12,3) })
                   (AnnList
                    (Just
-                    (Anchor
-                     { DumpSemis.hs:(11,3)-(12,3) }
-                     (UnchangedAnchor)))
+                    (EpaSpan { DumpSemis.hs:(11,3)-(12,3) }))
                    (Nothing)
                    (Nothing)
                    [(AddEpAnn AnnDo (EpaSpan { DumpSemis.hs:10:7-8 }))]
@@ -289,14 +259,10 @@
                   (Nothing))
                  (L
                   (SrcSpanAnn (EpAnn
-                               (Anchor
-                                { DumpSemis.hs:(11,3)-(12,3) }
-                                (UnchangedAnchor))
+                               (EpaSpan { DumpSemis.hs:(11,3)-(12,3) })
                                (AnnList
                                 (Just
-                                 (Anchor
-                                  { DumpSemis.hs:(11,3)-(12,3) }
-                                  (UnchangedAnchor)))
+                                 (EpaSpan { DumpSemis.hs:(11,3)-(12,3) }))
                                 (Nothing)
                                 (Nothing)
                                 []
@@ -311,14 +277,10 @@
                       (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:11:3-15 })
                       (HsDo
                        (EpAnn
-                        (Anchor
-                         { DumpSemis.hs:11:3-15 }
-                         (UnchangedAnchor))
+                        (EpaSpan { DumpSemis.hs:11:3-15 })
                         (AnnList
                          (Just
-                          (Anchor
-                           { DumpSemis.hs:11:6-15 }
-                           (UnchangedAnchor)))
+                          (EpaSpan { DumpSemis.hs:11:6-15 }))
                          (Nothing)
                          (Nothing)
                          [(AddEpAnn AnnDo (EpaSpan { DumpSemis.hs:11:3-4 }))]
@@ -329,14 +291,10 @@
                         (Nothing))
                        (L
                         (SrcSpanAnn (EpAnn
-                                     (Anchor
-                                      { DumpSemis.hs:11:6-15 }
-                                      (UnchangedAnchor))
+                                     (EpaSpan { DumpSemis.hs:11:6-15 })
                                      (AnnList
                                       (Just
-                                       (Anchor
-                                        { DumpSemis.hs:11:8-13 }
-                                        (UnchangedAnchor)))
+                                       (EpaSpan { DumpSemis.hs:11:8-13 }))
                                       (Just
                                        (AddEpAnn AnnOpenC (EpaSpan { DumpSemis.hs:11:6 })))
                                       (Just
@@ -382,9 +340,7 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:14:1-12 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:14:1-12 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -393,9 +349,7 @@
      (NoExtField)
      (TypeSig
       (EpAnn
-       (Anchor
-        { DumpSemis.hs:14:1-12 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpSemis.hs:14:1-12 })
        (AnnSig
         (AddEpAnn AnnDcolon (EpaSpan { DumpSemis.hs:14:5-6 }))
         [])
@@ -421,9 +375,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:14:8-9 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { DumpSemis.hs:14:8-9 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpSemis.hs:14:8-9 })
               []
               (EpaComments
                []))
@@ -436,9 +388,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:14:11-12 })
             (HsTupleTy
              (EpAnn
-              (Anchor
-               { DumpSemis.hs:14:11-12 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpSemis.hs:14:11-12 })
               (AnnParen
                (AnnParens)
                (EpaSpan { DumpSemis.hs:14:11 })
@@ -449,9 +399,7 @@
              []))))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:(15,1)-(19,3) }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:(15,1)-(19,3) })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:20:2 }))
@@ -479,9 +427,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(15,1)-(19,3) })
           (Match
            (EpAnn
-            (Anchor
-             { DumpSemis.hs:(15,1)-(19,3) }
-             (UnchangedAnchor))
+            (EpaSpan { DumpSemis.hs:(15,1)-(19,3) })
             []
             (EpaComments
              []))
@@ -502,9 +448,7 @@
                { DumpSemis.hs:(15,5)-(19,3) })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:(15,5)-(19,3) }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:(15,5)-(19,3) })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:15:5 })))
@@ -515,14 +459,10 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(15,7)-(19,3) })
                 (HsDo
                  (EpAnn
-                  (Anchor
-                   { DumpSemis.hs:(15,7)-(19,3) }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpSemis.hs:(15,7)-(19,3) })
                   (AnnList
                    (Just
-                    (Anchor
-                     { DumpSemis.hs:(16,3)-(19,3) }
-                     (UnchangedAnchor)))
+                    (EpaSpan { DumpSemis.hs:(16,3)-(19,3) }))
                    (Nothing)
                    (Nothing)
                    [(AddEpAnn AnnDo (EpaSpan { DumpSemis.hs:15:7-8 }))]
@@ -533,14 +473,10 @@
                   (Nothing))
                  (L
                   (SrcSpanAnn (EpAnn
-                               (Anchor
-                                { DumpSemis.hs:(16,3)-(19,3) }
-                                (UnchangedAnchor))
+                               (EpaSpan { DumpSemis.hs:(16,3)-(19,3) })
                                (AnnList
                                 (Just
-                                 (Anchor
-                                  { DumpSemis.hs:(16,5)-(18,5) }
-                                  (UnchangedAnchor)))
+                                 (EpaSpan { DumpSemis.hs:(16,5)-(18,5) }))
                                 (Just
                                  (AddEpAnn AnnOpenC (EpaSpan { DumpSemis.hs:16:3 })))
                                 (Just
@@ -552,9 +488,7 @@
                                 [])) { DumpSemis.hs:(16,3)-(19,3) })
                   [(L
                     (SrcSpanAnn (EpAnn
-                                 (Anchor
-                                  { DumpSemis.hs:17:5 }
-                                  (UnchangedAnchor))
+                                 (EpaSpan { DumpSemis.hs:17:5 })
                                  (AnnListItem
                                   [(AddSemiAnn
                                     (EpaSpan { DumpSemis.hs:17:7 }))
@@ -592,9 +526,7 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:21:1-12 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:21:1-12 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -603,9 +535,7 @@
      (NoExtField)
      (TypeSig
       (EpAnn
-       (Anchor
-        { DumpSemis.hs:21:1-12 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpSemis.hs:21:1-12 })
        (AnnSig
         (AddEpAnn AnnDcolon (EpaSpan { DumpSemis.hs:21:5-6 }))
         [])
@@ -631,9 +561,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:21:8-9 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { DumpSemis.hs:21:8-9 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpSemis.hs:21:8-9 })
               []
               (EpaComments
                []))
@@ -646,9 +574,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:21:11-12 })
             (HsTupleTy
              (EpAnn
-              (Anchor
-               { DumpSemis.hs:21:11-12 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpSemis.hs:21:11-12 })
               (AnnParen
                (AnnParens)
                (EpaSpan { DumpSemis.hs:21:11 })
@@ -659,9 +585,7 @@
              []))))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:22:1-30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:22:1-30 })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:23:1 }))])
@@ -683,9 +607,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:1-30 })
           (Match
            (EpAnn
-            (Anchor
-             { DumpSemis.hs:22:1-30 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpSemis.hs:22:1-30 })
             []
             (EpaComments
              []))
@@ -706,9 +628,7 @@
                { DumpSemis.hs:22:5-30 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:22:5-30 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:22:5-30 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:22:5 })))
@@ -719,14 +639,10 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:22:7-30 })
                 (HsDo
                  (EpAnn
-                  (Anchor
-                   { DumpSemis.hs:22:7-30 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpSemis.hs:22:7-30 })
                   (AnnList
                    (Just
-                    (Anchor
-                     { DumpSemis.hs:22:10-30 }
-                     (UnchangedAnchor)))
+                    (EpaSpan { DumpSemis.hs:22:10-30 }))
                    (Nothing)
                    (Nothing)
                    [(AddEpAnn AnnDo (EpaSpan { DumpSemis.hs:22:7-8 }))]
@@ -737,14 +653,10 @@
                   (Nothing))
                  (L
                   (SrcSpanAnn (EpAnn
-                               (Anchor
-                                { DumpSemis.hs:22:10-30 }
-                                (UnchangedAnchor))
+                               (EpaSpan { DumpSemis.hs:22:10-30 })
                                (AnnList
                                 (Just
-                                 (Anchor
-                                  { DumpSemis.hs:22:12-25 }
-                                  (UnchangedAnchor)))
+                                 (EpaSpan { DumpSemis.hs:22:12-25 }))
                                 (Just
                                  (AddEpAnn AnnOpenC (EpaSpan { DumpSemis.hs:22:10 })))
                                 (Just
@@ -756,9 +668,7 @@
                                 [])) { DumpSemis.hs:22:10-30 })
                   [(L
                     (SrcSpanAnn (EpAnn
-                                 (Anchor
-                                  { DumpSemis.hs:22:15 }
-                                  (UnchangedAnchor))
+                                 (EpaSpan { DumpSemis.hs:22:15 })
                                  (AnnListItem
                                   [(AddSemiAnn
                                     (EpaSpan { DumpSemis.hs:22:17 }))])
@@ -778,9 +688,7 @@
                      (NoExtField)))
                   ,(L
                     (SrcSpanAnn (EpAnn
-                                 (Anchor
-                                  { DumpSemis.hs:22:19 }
-                                  (UnchangedAnchor))
+                                 (EpaSpan { DumpSemis.hs:22:19 })
                                  (AnnListItem
                                   [(AddSemiAnn
                                     (EpaSpan { DumpSemis.hs:22:21 }))
@@ -802,9 +710,7 @@
                      (NoExtField)))
                   ,(L
                     (SrcSpanAnn (EpAnn
-                                 (Anchor
-                                  { DumpSemis.hs:22:25 }
-                                  (UnchangedAnchor))
+                                 (EpaSpan { DumpSemis.hs:22:25 })
                                  (AnnListItem
                                   [(AddSemiAnn
                                     (EpaSpan { DumpSemis.hs:22:27 }))
@@ -828,9 +734,7 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:24:1-13 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:24:1-13 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -851,9 +755,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:24:1-13 })
           (Match
            (EpAnn
-            (Anchor
-             { DumpSemis.hs:24:1-13 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpSemis.hs:24:1-13 })
             []
             (EpaComments
              []))
@@ -874,9 +776,7 @@
                { DumpSemis.hs:24:3-13 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:24:3-13 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:24:3-13 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:24:3 })))
@@ -895,9 +795,7 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:25:1-13 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:25:1-13 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -918,9 +816,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:25:1-13 })
           (Match
            (EpAnn
-            (Anchor
-             { DumpSemis.hs:25:1-13 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpSemis.hs:25:1-13 })
             []
             (EpaComments
              []))
@@ -941,9 +837,7 @@
                { DumpSemis.hs:25:3-13 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:25:3-13 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:25:3-13 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:25:3 })))
@@ -962,9 +856,7 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:26:1-13 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:26:1-13 })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:27:1 }))])
@@ -986,9 +878,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:26:1-13 })
           (Match
            (EpAnn
-            (Anchor
-             { DumpSemis.hs:26:1-13 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpSemis.hs:26:1-13 })
             []
             (EpaComments
              []))
@@ -1009,9 +899,7 @@
                { DumpSemis.hs:26:3-13 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:26:3-13 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:26:3-13 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:26:3 })))
@@ -1030,9 +918,7 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:(28,1)-(29,23) }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:(28,1)-(29,23) })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:30:1 }))])
@@ -1043,9 +929,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { DumpSemis.hs:(28,1)-(29,23) }
-         (UnchangedAnchor))
+        (EpaSpan { DumpSemis.hs:(28,1)-(29,23) })
         [(AddEpAnn AnnClass (EpaSpan { DumpSemis.hs:28:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { DumpSemis.hs:28:40-44 }))]
         (EpaComments
@@ -1064,9 +948,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:28:22-38 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { DumpSemis.hs:28:22-38 }
-            (UnchangedAnchor))
+           (EpaSpan { DumpSemis.hs:28:22-38 })
            [(AddEpAnn AnnDcolon (EpaSpan { DumpSemis.hs:28:30-31 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { DumpSemis.hs:28:22 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { DumpSemis.hs:28:23 }))
@@ -1083,9 +965,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:28:33-36 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { DumpSemis.hs:28:33-36 }
-              (UnchangedAnchor))
+             (EpaSpan { DumpSemis.hs:28:33-36 })
              []
              (EpaComments
               []))
@@ -1100,9 +980,7 @@
         (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:3-23 })
         (ClassOpSig
          (EpAnn
-          (Anchor
-           { DumpSemis.hs:29:3-23 }
-           (UnchangedAnchor))
+          (EpaSpan { DumpSemis.hs:29:3-23 })
           (AnnSig
            (AddEpAnn AnnDcolon (EpaSpan { DumpSemis.hs:29:9-10 }))
            [])
@@ -1123,9 +1001,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:12-23 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { DumpSemis.hs:29:12-23 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpSemis.hs:29:12-23 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -1138,9 +1014,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:12-16 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:29:12-16 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:29:12-16 })
                 []
                 (EpaComments
                  []))
@@ -1153,9 +1027,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:29:21-23 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:29:21-23 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:29:21-23 })
                 []
                 (EpaComments
                  []))
@@ -1171,9 +1043,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:31:1-30 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:31:1-30 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1182,9 +1052,7 @@
      (NoExtField)
      (TypeSig
       (EpAnn
-       (Anchor
-        { DumpSemis.hs:31:1-30 }
-        (UnchangedAnchor))
+       (EpaSpan { DumpSemis.hs:31:1-30 })
        (AnnSig
         (AddEpAnn AnnDcolon (EpaSpan { DumpSemis.hs:31:3-4 }))
         [])
@@ -1208,9 +1076,7 @@
            (NoExtField)
            (L
             (SrcSpanAnn (EpAnn
-                         (Anchor
-                          { DumpSemis.hs:31:6-20 }
-                          (UnchangedAnchor))
+                         (EpaSpan { DumpSemis.hs:31:6-20 })
                          (AnnContext
                           (Just
                            ((,)
@@ -1224,9 +1090,7 @@
                           [])) { DumpSemis.hs:31:6-20 })
             [(L
               (SrcSpanAnn (EpAnn
-                           (Anchor
-                            { DumpSemis.hs:31:8-11 }
-                            (UnchangedAnchor))
+                           (EpaSpan { DumpSemis.hs:31:8-11 })
                            (AnnListItem
                             [(AddCommaAnn
                               (EpaSpan { DumpSemis.hs:31:12 }))])
@@ -1238,9 +1102,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:8-9 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { DumpSemis.hs:31:8-9 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpSemis.hs:31:8-9 })
                   []
                   (EpaComments
                    []))
@@ -1253,9 +1115,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:11 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { DumpSemis.hs:31:11 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpSemis.hs:31:11 })
                   []
                   (EpaComments
                    []))
@@ -1272,9 +1132,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:14-16 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { DumpSemis.hs:31:14-16 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpSemis.hs:31:14-16 })
                   []
                   (EpaComments
                    []))
@@ -1287,9 +1145,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:18 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { DumpSemis.hs:31:18 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpSemis.hs:31:18 })
                   []
                   (EpaComments
                    []))
@@ -1302,9 +1158,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:25-30 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { DumpSemis.hs:31:25-30 }
-               (UnchangedAnchor))
+              (EpaSpan { DumpSemis.hs:31:25-30 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -1317,9 +1171,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:25 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:31:25 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:31:25 })
                 []
                 (EpaComments
                  []))
@@ -1332,9 +1184,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:31:30 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:31:30 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:31:30 })
                 []
                 (EpaComments
                  []))
@@ -1345,9 +1195,7 @@
                  {OccName: a}))))))))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:32:1-7 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:32:1-7 })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:33:1 }))
@@ -1371,18 +1219,14 @@
         (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:32:1-7 })
         [(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { DumpSemis.hs:32:1-7 }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpSemis.hs:32:1-7 })
                        (AnnListItem
                         [])
                        (EpaComments
                         [])) { DumpSemis.hs:32:1-7 })
           (Match
            (EpAnn
-            (Anchor
-             { DumpSemis.hs:32:1-7 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpSemis.hs:32:1-7 })
             []
             (EpaComments
              []))
@@ -1410,9 +1254,7 @@
                { DumpSemis.hs:32:5-7 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:32:5-7 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:32:5-7 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:32:5 })))
@@ -1431,9 +1273,7 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:34:8-35 }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:34:8-35 })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:34:36 }))
@@ -1457,9 +1297,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:8-35 })
           (Match
            (EpAnn
-            (Anchor
-             { DumpSemis.hs:34:8-35 }
-             (UnchangedAnchor))
+            (EpaSpan { DumpSemis.hs:34:8-35 })
             []
             (EpaComments
              []))
@@ -1480,9 +1318,7 @@
                { DumpSemis.hs:34:9-35 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:34:9-35 }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:34:9-35 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:34:9 })))
@@ -1493,9 +1329,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:10-35 })
                 (HsLet
                  (EpAnn
-                  (Anchor
-                   { DumpSemis.hs:34:10-35 }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpSemis.hs:34:10-35 })
                   (NoEpAnns)
                   (EpaComments
                    []))
@@ -1505,14 +1339,10 @@
                   (HsTok))
                  (HsValBinds
                   (EpAnn
-                   (Anchor
-                    { DumpSemis.hs:34:13-31 }
-                    (UnchangedAnchor))
+                   (EpaSpan { DumpSemis.hs:34:13-31 })
                    (AnnList
                     (Just
-                     (Anchor
-                      { DumpSemis.hs:34:14-30 }
-                      (UnchangedAnchor)))
+                     (EpaSpan { DumpSemis.hs:34:14-30 }))
                     (Just
                      (AddEpAnn AnnOpenC (EpaSpan { DumpSemis.hs:34:13 })))
                     (Just
@@ -1530,9 +1360,7 @@
                    {Bag(LocatedA (HsBind GhcPs)):
                     [(L
                       (SrcSpanAnn (EpAnn
-                                   (Anchor
-                                    { DumpSemis.hs:34:19-21 }
-                                    (UnchangedAnchor))
+                                   (EpaSpan { DumpSemis.hs:34:19-21 })
                                    (AnnListItem
                                     [(AddSemiAnn
                                       (EpaSpan { DumpSemis.hs:34:22 }))
@@ -1554,9 +1382,7 @@
                            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:19-21 })
                            (Match
                             (EpAnn
-                             (Anchor
-                              { DumpSemis.hs:34:19-21 }
-                              (UnchangedAnchor))
+                             (EpaSpan { DumpSemis.hs:34:19-21 })
                              []
                              (EpaComments
                               []))
@@ -1577,9 +1403,7 @@
                                 { DumpSemis.hs:34:20-21 })
                                (GRHS
                                 (EpAnn
-                                 (Anchor
-                                  { DumpSemis.hs:34:20-21 }
-                                  (UnchangedAnchor))
+                                 (EpaSpan { DumpSemis.hs:34:20-21 })
                                  (GrhsAnn
                                   (Nothing)
                                   (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:34:20 })))
@@ -1590,9 +1414,7 @@
                                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:21 })
                                  (HsOverLit
                                   (EpAnn
-                                   (Anchor
-                                    { DumpSemis.hs:34:21 }
-                                    (UnchangedAnchor))
+                                   (EpaSpan { DumpSemis.hs:34:21 })
                                    (NoEpAnns)
                                    (EpaComments
                                     []))
@@ -1607,9 +1429,7 @@
                               (NoExtField)))))]))))
                     ,(L
                       (SrcSpanAnn (EpAnn
-                                   (Anchor
-                                    { DumpSemis.hs:34:24-26 }
-                                    (UnchangedAnchor))
+                                   (EpaSpan { DumpSemis.hs:34:24-26 })
                                    (AnnListItem
                                     [(AddSemiAnn
                                       (EpaSpan { DumpSemis.hs:34:27 }))
@@ -1635,9 +1455,7 @@
                            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:24-26 })
                            (Match
                             (EpAnn
-                             (Anchor
-                              { DumpSemis.hs:34:24-26 }
-                              (UnchangedAnchor))
+                             (EpaSpan { DumpSemis.hs:34:24-26 })
                              []
                              (EpaComments
                               []))
@@ -1658,9 +1476,7 @@
                                 { DumpSemis.hs:34:25-26 })
                                (GRHS
                                 (EpAnn
-                                 (Anchor
-                                  { DumpSemis.hs:34:25-26 }
-                                  (UnchangedAnchor))
+                                 (EpaSpan { DumpSemis.hs:34:25-26 })
                                  (GrhsAnn
                                   (Nothing)
                                   (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:34:25 })))
@@ -1671,9 +1487,7 @@
                                  (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:34:26 })
                                  (HsOverLit
                                   (EpAnn
-                                   (Anchor
-                                    { DumpSemis.hs:34:26 }
-                                    (UnchangedAnchor))
+                                   (EpaSpan { DumpSemis.hs:34:26 })
                                    (NoEpAnns)
                                    (EpaComments
                                     []))
@@ -1703,9 +1517,7 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { DumpSemis.hs:(36,1)-(44,4) }
-                  (UnchangedAnchor))
+                 (EpaSpan { DumpSemis.hs:(36,1)-(44,4) })
                  (AnnListItem
                   [(AddSemiAnn
                     (EpaSpan { DumpSemis.hs:45:1 }))])
@@ -1725,18 +1537,14 @@
         (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(36,1)-(44,4) })
         [(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { DumpSemis.hs:(36,1)-(44,4) }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpSemis.hs:(36,1)-(44,4) })
                        (AnnListItem
                         [])
                        (EpaComments
                         [])) { DumpSemis.hs:(36,1)-(44,4) })
           (Match
            (EpAnn
-            (Anchor
-             { DumpSemis.hs:(36,1)-(44,4) }
-             (UnchangedAnchor))
+            (EpaSpan { DumpSemis.hs:(36,1)-(44,4) })
             []
             (EpaComments
              []))
@@ -1764,9 +1572,7 @@
                { DumpSemis.hs:(36,7)-(44,4) })
               (GRHS
                (EpAnn
-                (Anchor
-                 { DumpSemis.hs:(36,7)-(44,4) }
-                 (UnchangedAnchor))
+                (EpaSpan { DumpSemis.hs:(36,7)-(44,4) })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { DumpSemis.hs:36:7 })))
@@ -1777,9 +1583,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:(37,3)-(44,4) })
                 (HsCase
                  (EpAnn
-                  (Anchor
-                   { DumpSemis.hs:(37,3)-(44,4) }
-                   (UnchangedAnchor))
+                  (EpaSpan { DumpSemis.hs:(37,3)-(44,4) })
                   (EpAnnHsCase
                    (EpaSpan { DumpSemis.hs:37:3-6 })
                    (EpaSpan { DumpSemis.hs:37:10-11 })
@@ -1798,14 +1602,10 @@
                   (FromSource)
                   (L
                    (SrcSpanAnn (EpAnn
-                                (Anchor
-                                 { DumpSemis.hs:(38,4)-(44,4) }
-                                 (UnchangedAnchor))
+                                (EpaSpan { DumpSemis.hs:(38,4)-(44,4) })
                                 (AnnList
                                  (Just
-                                  (Anchor
-                                   { DumpSemis.hs:(38,6)-(43,13) }
-                                   (UnchangedAnchor)))
+                                  (EpaSpan { DumpSemis.hs:(38,6)-(43,13) }))
                                  (Just
                                   (AddEpAnn AnnOpenC (EpaSpan { DumpSemis.hs:38:4 })))
                                  (Just
@@ -1818,9 +1618,7 @@
                                  [])) { DumpSemis.hs:(38,4)-(44,4) })
                    [(L
                      (SrcSpanAnn (EpAnn
-                                  (Anchor
-                                   { DumpSemis.hs:39:6-13 }
-                                   (UnchangedAnchor))
+                                  (EpaSpan { DumpSemis.hs:39:6-13 })
                                   (AnnListItem
                                    [(AddSemiAnn
                                      (EpaSpan { DumpSemis.hs:39:14 }))])
@@ -1828,9 +1626,7 @@
                                    [])) { DumpSemis.hs:39:6-13 })
                      (Match
                       (EpAnn
-                       (Anchor
-                        { DumpSemis.hs:39:6-13 }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpSemis.hs:39:6-13 })
                        []
                        (EpaComments
                         []))
@@ -1861,9 +1657,7 @@
                           { DumpSemis.hs:39:8-13 })
                          (GRHS
                           (EpAnn
-                           (Anchor
-                            { DumpSemis.hs:39:8-13 }
-                            (UnchangedAnchor))
+                           (EpaSpan { DumpSemis.hs:39:8-13 })
                            (GrhsAnn
                             (Nothing)
                             (AddEpAnn AnnRarrow (EpaSpan { DumpSemis.hs:39:8-9 })))
@@ -1874,9 +1668,7 @@
                            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:39:11-13 })
                            (HsLit
                             (EpAnn
-                             (Anchor
-                              { DumpSemis.hs:39:11-13 }
-                              (UnchangedAnchor))
+                             (EpaSpan { DumpSemis.hs:39:11-13 })
                              (NoEpAnns)
                              (EpaComments
                               []))
@@ -1887,9 +1679,7 @@
                         (NoExtField)))))
                    ,(L
                      (SrcSpanAnn (EpAnn
-                                  (Anchor
-                                   { DumpSemis.hs:40:6-13 }
-                                   (UnchangedAnchor))
+                                  (EpaSpan { DumpSemis.hs:40:6-13 })
                                   (AnnListItem
                                    [(AddSemiAnn
                                      (EpaSpan { DumpSemis.hs:41:4 }))])
@@ -1897,9 +1687,7 @@
                                    [])) { DumpSemis.hs:40:6-13 })
                      (Match
                       (EpAnn
-                       (Anchor
-                        { DumpSemis.hs:40:6-13 }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpSemis.hs:40:6-13 })
                        []
                        (EpaComments
                         []))
@@ -1930,9 +1718,7 @@
                           { DumpSemis.hs:40:8-13 })
                          (GRHS
                           (EpAnn
-                           (Anchor
-                            { DumpSemis.hs:40:8-13 }
-                            (UnchangedAnchor))
+                           (EpaSpan { DumpSemis.hs:40:8-13 })
                            (GrhsAnn
                             (Nothing)
                             (AddEpAnn AnnRarrow (EpaSpan { DumpSemis.hs:40:8-9 })))
@@ -1943,9 +1729,7 @@
                            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:40:11-13 })
                            (HsLit
                             (EpAnn
-                             (Anchor
-                              { DumpSemis.hs:40:11-13 }
-                              (UnchangedAnchor))
+                             (EpaSpan { DumpSemis.hs:40:11-13 })
                              (NoEpAnns)
                              (EpaComments
                               []))
@@ -1956,9 +1740,7 @@
                         (NoExtField)))))
                    ,(L
                      (SrcSpanAnn (EpAnn
-                                  (Anchor
-                                   { DumpSemis.hs:41:6-13 }
-                                   (UnchangedAnchor))
+                                  (EpaSpan { DumpSemis.hs:41:6-13 })
                                   (AnnListItem
                                    [(AddSemiAnn
                                      (EpaSpan { DumpSemis.hs:41:15 }))
@@ -1968,9 +1750,7 @@
                                    [])) { DumpSemis.hs:41:6-13 })
                      (Match
                       (EpAnn
-                       (Anchor
-                        { DumpSemis.hs:41:6-13 }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpSemis.hs:41:6-13 })
                        []
                        (EpaComments
                         []))
@@ -2001,9 +1781,7 @@
                           { DumpSemis.hs:41:8-13 })
                          (GRHS
                           (EpAnn
-                           (Anchor
-                            { DumpSemis.hs:41:8-13 }
-                            (UnchangedAnchor))
+                           (EpaSpan { DumpSemis.hs:41:8-13 })
                            (GrhsAnn
                             (Nothing)
                             (AddEpAnn AnnRarrow (EpaSpan { DumpSemis.hs:41:8-9 })))
@@ -2014,9 +1792,7 @@
                            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:41:11-13 })
                            (HsLit
                             (EpAnn
-                             (Anchor
-                              { DumpSemis.hs:41:11-13 }
-                              (UnchangedAnchor))
+                             (EpaSpan { DumpSemis.hs:41:11-13 })
                              (NoEpAnns)
                              (EpaComments
                               []))
@@ -2027,9 +1803,7 @@
                         (NoExtField)))))
                    ,(L
                      (SrcSpanAnn (EpAnn
-                                  (Anchor
-                                   { DumpSemis.hs:42:6-13 }
-                                   (UnchangedAnchor))
+                                  (EpaSpan { DumpSemis.hs:42:6-13 })
                                   (AnnListItem
                                    [(AddSemiAnn
                                      (EpaSpan { DumpSemis.hs:43:11 }))
@@ -2041,9 +1815,7 @@
                                    [])) { DumpSemis.hs:42:6-13 })
                      (Match
                       (EpAnn
-                       (Anchor
-                        { DumpSemis.hs:42:6-13 }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpSemis.hs:42:6-13 })
                        []
                        (EpaComments
                         []))
@@ -2074,9 +1846,7 @@
                           { DumpSemis.hs:42:8-13 })
                          (GRHS
                           (EpAnn
-                           (Anchor
-                            { DumpSemis.hs:42:8-13 }
-                            (UnchangedAnchor))
+                           (EpaSpan { DumpSemis.hs:42:8-13 })
                            (GrhsAnn
                             (Nothing)
                             (AddEpAnn AnnRarrow (EpaSpan { DumpSemis.hs:42:8-9 })))
@@ -2087,9 +1857,7 @@
                            (SrcSpanAnn (EpAnnNotUsed) { DumpSemis.hs:42:11-13 })
                            (HsLit
                             (EpAnn
-                             (Anchor
-                              { DumpSemis.hs:42:11-13 }
-                              (UnchangedAnchor))
+                             (EpaSpan { DumpSemis.hs:42:11-13 })
                              (NoEpAnns)
                              (EpaComments
                               []))
diff --git a/testsuite/tests/parser/should_compile/DumpTypecheckedAst.stderr b/testsuite/tests/parser/should_compile/DumpTypecheckedAst.stderr
index a3794a79c6fe83ec9158a98df26bbdb73aeb23c7..f51cb14314b528a88ac4026033988d16fb1e3f64 100644
--- a/testsuite/tests/parser/should_compile/DumpTypecheckedAst.stderr
+++ b/testsuite/tests/parser/should_compile/DumpTypecheckedAst.stderr
@@ -11,9 +11,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -21,9 +19,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -31,9 +27,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsApp
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -41,9 +35,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
            (HsApp
             (EpAnn
-             (Anchor
-              { placeholder:-1:-1 }
-              (UnchangedAnchor))
+             (EpaDelta (SameLine 0) [])
              (NoEpAnns)
              (EpaComments
               []))
@@ -51,9 +43,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -61,9 +51,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsApp
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -78,9 +66,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                  (HsLit
                   (EpAnn
-                   (Anchor
-                    { placeholder:-1:-1 }
-                    (UnchangedAnchor))
+                   (EpaDelta (SameLine 0) [])
                    (NoEpAnns)
                    (EpaComments
                     []))
@@ -89,9 +75,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -114,9 +98,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -131,9 +113,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -147,9 +127,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsLit
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -170,9 +148,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -180,9 +156,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -190,9 +164,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsApp
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -200,9 +172,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
            (HsApp
             (EpAnn
-             (Anchor
-              { placeholder:-1:-1 }
-              (UnchangedAnchor))
+             (EpaDelta (SameLine 0) [])
              (NoEpAnns)
              (EpaComments
               []))
@@ -210,9 +180,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -220,9 +188,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsApp
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -237,9 +203,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                  (HsLit
                   (EpAnn
-                   (Anchor
-                    { placeholder:-1:-1 }
-                    (UnchangedAnchor))
+                   (EpaDelta (SameLine 0) [])
                    (NoEpAnns)
                    (EpaComments
                     []))
@@ -248,9 +212,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -273,9 +235,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -290,9 +250,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -306,9 +264,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsLit
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -329,9 +285,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -339,9 +293,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -349,9 +301,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsApp
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -359,9 +309,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
            (HsApp
             (EpAnn
-             (Anchor
-              { placeholder:-1:-1 }
-              (UnchangedAnchor))
+             (EpaDelta (SameLine 0) [])
              (NoEpAnns)
              (EpaComments
               []))
@@ -369,9 +317,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -379,9 +325,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsApp
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -396,9 +340,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                  (HsLit
                   (EpAnn
-                   (Anchor
-                    { placeholder:-1:-1 }
-                    (UnchangedAnchor))
+                   (EpaDelta (SameLine 0) [])
                    (NoEpAnns)
                    (EpaComments
                     []))
@@ -407,9 +349,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -432,9 +372,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -449,9 +387,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -465,9 +401,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsLit
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -488,9 +422,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -498,9 +430,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -508,9 +438,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsApp
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -518,9 +446,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
            (HsApp
             (EpAnn
-             (Anchor
-              { placeholder:-1:-1 }
-              (UnchangedAnchor))
+             (EpaDelta (SameLine 0) [])
              (NoEpAnns)
              (EpaComments
               []))
@@ -528,9 +454,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -538,9 +462,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsApp
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -555,9 +477,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                  (HsLit
                   (EpAnn
-                   (Anchor
-                    { placeholder:-1:-1 }
-                    (UnchangedAnchor))
+                   (EpaDelta (SameLine 0) [])
                    (NoEpAnns)
                    (EpaComments
                     []))
@@ -566,9 +486,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -591,9 +509,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -608,9 +524,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -624,9 +538,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsLit
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -647,9 +559,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -657,9 +567,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -667,9 +575,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsApp
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -677,9 +583,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
            (HsApp
             (EpAnn
-             (Anchor
-              { placeholder:-1:-1 }
-              (UnchangedAnchor))
+             (EpaDelta (SameLine 0) [])
              (NoEpAnns)
              (EpaComments
               []))
@@ -687,9 +591,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -697,9 +599,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsApp
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -714,9 +614,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                  (HsLit
                   (EpAnn
-                   (Anchor
-                    { placeholder:-1:-1 }
-                    (UnchangedAnchor))
+                   (EpaDelta (SameLine 0) [])
                    (NoEpAnns)
                    (EpaComments
                     []))
@@ -725,9 +623,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -750,9 +646,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -767,9 +661,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsLit
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -783,9 +675,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsLit
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -806,9 +696,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -823,9 +711,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsLit
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -844,9 +730,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -861,9 +745,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsLit
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -882,9 +764,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -899,9 +779,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsLit
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -920,9 +798,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -930,9 +806,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -966,9 +840,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -976,9 +848,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -1012,9 +882,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -1022,9 +890,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -1058,9 +924,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -1068,9 +932,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -1104,9 +966,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -1114,9 +974,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -1150,9 +1008,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -1160,9 +1016,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -1191,9 +1045,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsApp
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -1201,9 +1053,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
            (HsApp
             (EpAnn
-             (Anchor
-              { placeholder:-1:-1 }
-              (UnchangedAnchor))
+             (EpaDelta (SameLine 0) [])
              (NoEpAnns)
              (EpaComments
               []))
@@ -1239,9 +1089,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsApp
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -1249,9 +1097,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                (HsApp
                 (EpAnn
-                 (Anchor
-                  { placeholder:-1:-1 }
-                  (UnchangedAnchor))
+                 (EpaDelta (SameLine 0) [])
                  (NoEpAnns)
                  (EpaComments
                   []))
@@ -1287,9 +1133,7 @@
                  (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                  (HsApp
                   (EpAnn
-                   (Anchor
-                    { placeholder:-1:-1 }
-                    (UnchangedAnchor))
+                   (EpaDelta (SameLine 0) [])
                    (NoEpAnns)
                    (EpaComments
                     []))
@@ -1297,9 +1141,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
                    (HsApp
                     (EpAnn
-                     (Anchor
-                      { placeholder:-1:-1 }
-                      (UnchangedAnchor))
+                     (EpaDelta (SameLine 0) [])
                      (NoEpAnns)
                      (EpaComments
                       []))
@@ -1356,9 +1198,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -1366,9 +1206,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -1409,9 +1247,7 @@
      (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
      (HsApp
       (EpAnn
-       (Anchor
-        { placeholder:-1:-1 }
-        (UnchangedAnchor))
+       (EpaDelta (SameLine 0) [])
        (NoEpAnns)
        (EpaComments
         []))
@@ -1419,9 +1255,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
        (HsApp
         (EpAnn
-         (Anchor
-          { placeholder:-1:-1 }
-          (UnchangedAnchor))
+         (EpaDelta (SameLine 0) [])
          (NoEpAnns)
          (EpaComments
           []))
@@ -1443,9 +1277,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
            (HsApp
             (EpAnn
-             (Anchor
-              { placeholder:-1:-1 }
-              (UnchangedAnchor))
+             (EpaDelta (SameLine 0) [])
              (NoEpAnns)
              (EpaComments
               []))
@@ -1460,9 +1292,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
              (HsLit
               (EpAnn
-               (Anchor
-                { placeholder:-1:-1 }
-                (UnchangedAnchor))
+               (EpaDelta (SameLine 0) [])
                (NoEpAnns)
                (EpaComments
                 []))
@@ -1483,9 +1313,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
          (HsApp
           (EpAnn
-           (Anchor
-            { placeholder:-1:-1 }
-            (UnchangedAnchor))
+           (EpaDelta (SameLine 0) [])
            (NoEpAnns)
            (EpaComments
             []))
@@ -1500,9 +1328,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { <no location info> })
            (HsLit
             (EpAnn
-             (Anchor
-              { placeholder:-1:-1 }
-              (UnchangedAnchor))
+             (EpaDelta (SameLine 0) [])
              (NoEpAnns)
              (EpaComments
               []))
@@ -1528,9 +1354,7 @@
      {Bag(LocatedA (HsBind Var)):
       [(L
         (SrcSpanAnn (EpAnn
-                     (Anchor
-                      { DumpTypecheckedAst.hs:20:1-23 }
-                      (UnchangedAnchor))
+                     (EpaSpan { DumpTypecheckedAst.hs:20:1-23 })
                      (AnnListItem
                       [])
                      (EpaComments
@@ -1589,9 +1413,7 @@
                      (SrcSpanAnn (EpAnnNotUsed) { DumpTypecheckedAst.hs:20:17-23 })
                      (HsLit
                       (EpAnn
-                       (Anchor
-                        { DumpTypecheckedAst.hs:20:17-23 }
-                        (UnchangedAnchor))
+                       (EpaSpan { DumpTypecheckedAst.hs:20:17-23 })
                        (NoEpAnns)
                        (EpaComments
                         []))
diff --git a/testsuite/tests/parser/should_compile/KindSigs.stderr b/testsuite/tests/parser/should_compile/KindSigs.stderr
index d047f37c72d5ce616285c591db83a4b691a8cedc..f4fffb4abe8266801f3889edf32e3a0f485c132f 100644
--- a/testsuite/tests/parser/should_compile/KindSigs.stderr
+++ b/testsuite/tests/parser/should_compile/KindSigs.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { KindSigs.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { KindSigs.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { KindSigs.hs:6:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { KindSigs.hs:6:17-21 }))]
@@ -34,9 +32,7 @@
     (ImportDecl
      (XImportDeclPass
       (EpAnn
-       (Anchor
-        { KindSigs.hs:8:1-16 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:8:1-16 })
        (EpAnnImportDecl
         (EpaSpan { KindSigs.hs:8:1-6 })
         (Nothing)
@@ -59,9 +55,7 @@
      (Nothing)))]
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:(11,1)-(12,21) }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:(11,1)-(12,21) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -72,9 +66,7 @@
       (NoExtField)
       (FamilyDecl
        (EpAnn
-        (Anchor
-         { KindSigs.hs:(11,1)-(12,21) }
-         (UnchangedAnchor))
+        (EpaSpan { KindSigs.hs:(11,1)-(12,21) })
         [(AddEpAnn AnnType (EpaSpan { KindSigs.hs:11:1-4 }))
         ,(AddEpAnn AnnFamily (EpaSpan { KindSigs.hs:11:6-11 }))
         ,(AddEpAnn AnnWhere (EpaSpan { KindSigs.hs:11:19-23 }))]
@@ -86,9 +78,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:3-21 })
            (FamEqn
             (EpAnn
-             (Anchor
-              { KindSigs.hs:12:3-21 }
-              (UnchangedAnchor))
+             (EpaSpan { KindSigs.hs:12:3-21 })
              [(AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:12:9 }))]
              (EpaComments
               []))
@@ -103,9 +93,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:7 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { KindSigs.hs:12:7 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:12:7 })
                  []
                  (EpaComments
                   []))
@@ -119,9 +107,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:11-21 })
              (HsKindSig
               (EpAnn
-               (Anchor
-                { KindSigs.hs:12:11-21 }
-                (UnchangedAnchor))
+               (EpaSpan { KindSigs.hs:12:11-21 })
                [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:12:15-16 }))]
                (EpaComments
                 []))
@@ -129,9 +115,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:11-13 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { KindSigs.hs:12:11-13 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:12:11-13 })
                  []
                  (EpaComments
                   []))
@@ -144,9 +128,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:12:18-21 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { KindSigs.hs:12:18-21 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:12:18-21 })
                  []
                  (EpaComments
                   []))
@@ -166,9 +148,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:11:17 })
           (UserTyVar
            (EpAnn
-            (Anchor
-             { KindSigs.hs:11:17 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:11:17 })
             []
             (EpaComments
              []))
@@ -187,9 +167,7 @@
        (Nothing)))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:15:1-51 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:15:1-51 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -198,9 +176,7 @@
      (NoExtField)
      (SynDecl
       (EpAnn
-       (Anchor
-        { KindSigs.hs:15:1-51 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:15:1-51 })
        [(AddEpAnn AnnType (EpaSpan { KindSigs.hs:15:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:15:12 }))]
        (EpaComments
@@ -215,9 +191,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:10 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { KindSigs.hs:15:10 }
-            (UnchangedAnchor))
+           (EpaSpan { KindSigs.hs:15:10 })
            []
            (EpaComments
             []))
@@ -231,9 +205,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:14-51 })
        (HsTupleTy
         (EpAnn
-         (Anchor
-          { KindSigs.hs:15:14-51 }
-          (UnchangedAnchor))
+         (EpaSpan { KindSigs.hs:15:14-51 })
          (AnnParen
           (AnnParens)
           (EpaSpan { KindSigs.hs:15:14 })
@@ -243,9 +215,7 @@
         (HsBoxedOrConstraintTuple)
         [(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { KindSigs.hs:15:16-26 }
-                        (UnchangedAnchor))
+                       (EpaSpan { KindSigs.hs:15:16-26 })
                        (AnnListItem
                         [(AddCommaAnn
                           (EpaSpan { KindSigs.hs:15:27 }))])
@@ -253,9 +223,7 @@
                         [])) { KindSigs.hs:15:16-26 })
           (HsKindSig
            (EpAnn
-            (Anchor
-             { KindSigs.hs:15:16-26 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:15:16-26 })
             [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:15:20-21 }))]
             (EpaComments
              []))
@@ -263,9 +231,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:16-18 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:15:16-18 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:15:16-18 })
               []
               (EpaComments
                []))
@@ -278,9 +244,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:23-26 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:15:23-26 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:15:23-26 })
               []
               (EpaComments
                []))
@@ -291,9 +255,7 @@
                {OccName: Type}))))))
         ,(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { KindSigs.hs:15:29-32 }
-                        (UnchangedAnchor))
+                       (EpaSpan { KindSigs.hs:15:29-32 })
                        (AnnListItem
                         [(AddCommaAnn
                           (EpaSpan { KindSigs.hs:15:33 }))])
@@ -301,9 +263,7 @@
                         [])) { KindSigs.hs:15:29-32 })
           (HsTyVar
            (EpAnn
-            (Anchor
-             { KindSigs.hs:15:29-32 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:15:29-32 })
             []
             (EpaComments
              []))
@@ -316,9 +276,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:35-49 })
           (HsKindSig
            (EpAnn
-            (Anchor
-             { KindSigs.hs:15:35-49 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:15:35-49 })
             [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:15:43-44 }))]
             (EpaComments
              []))
@@ -330,9 +288,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:35-39 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:15:35-39 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:15:35-39 })
                 []
                 (EpaComments
                  []))
@@ -345,9 +301,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:41 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:15:41 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:15:41 })
                 []
                 (EpaComments
                  []))
@@ -360,9 +314,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:15:46-49 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:15:46-49 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:15:46-49 })
               []
               (EpaComments
                []))
@@ -373,9 +325,7 @@
                {OccName: Type}))))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:16:1-54 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:16:1-54 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -384,9 +334,7 @@
      (NoExtField)
      (SynDecl
       (EpAnn
-       (Anchor
-        { KindSigs.hs:16:1-54 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:16:1-54 })
        [(AddEpAnn AnnType (EpaSpan { KindSigs.hs:16:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:16:13 }))]
        (EpaComments
@@ -401,9 +349,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:11 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { KindSigs.hs:16:11 }
-            (UnchangedAnchor))
+           (EpaSpan { KindSigs.hs:16:11 })
            []
            (EpaComments
             []))
@@ -417,9 +363,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:15-54 })
        (HsTupleTy
         (EpAnn
-         (Anchor
-          { KindSigs.hs:16:15-54 }
-          (UnchangedAnchor))
+         (EpaSpan { KindSigs.hs:16:15-54 })
          (AnnParen
           (AnnParensHash)
           (EpaSpan { KindSigs.hs:16:15-16 })
@@ -429,9 +373,7 @@
         (HsUnboxedTuple)
         [(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { KindSigs.hs:16:18-28 }
-                        (UnchangedAnchor))
+                       (EpaSpan { KindSigs.hs:16:18-28 })
                        (AnnListItem
                         [(AddCommaAnn
                           (EpaSpan { KindSigs.hs:16:29 }))])
@@ -439,9 +381,7 @@
                         [])) { KindSigs.hs:16:18-28 })
           (HsKindSig
            (EpAnn
-            (Anchor
-             { KindSigs.hs:16:18-28 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:16:18-28 })
             [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:16:22-23 }))]
             (EpaComments
              []))
@@ -449,9 +389,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:18-20 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:16:18-20 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:16:18-20 })
               []
               (EpaComments
                []))
@@ -464,9 +402,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:25-28 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:16:25-28 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:16:25-28 })
               []
               (EpaComments
                []))
@@ -477,9 +413,7 @@
                {OccName: Type}))))))
         ,(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { KindSigs.hs:16:31-34 }
-                        (UnchangedAnchor))
+                       (EpaSpan { KindSigs.hs:16:31-34 })
                        (AnnListItem
                         [(AddCommaAnn
                           (EpaSpan { KindSigs.hs:16:35 }))])
@@ -487,9 +421,7 @@
                         [])) { KindSigs.hs:16:31-34 })
           (HsTyVar
            (EpAnn
-            (Anchor
-             { KindSigs.hs:16:31-34 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:16:31-34 })
             []
             (EpaComments
              []))
@@ -502,9 +434,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:37-51 })
           (HsKindSig
            (EpAnn
-            (Anchor
-             { KindSigs.hs:16:37-51 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:16:37-51 })
             [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:16:45-46 }))]
             (EpaComments
              []))
@@ -516,9 +446,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:37-41 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:16:37-41 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:16:37-41 })
                 []
                 (EpaComments
                  []))
@@ -531,9 +459,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:43 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:16:43 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:16:43 })
                 []
                 (EpaComments
                  []))
@@ -546,9 +472,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:16:48-51 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:16:48-51 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:16:48-51 })
               []
               (EpaComments
                []))
@@ -559,9 +483,7 @@
                {OccName: Type}))))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:19:1-26 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:19:1-26 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -570,9 +492,7 @@
      (NoExtField)
      (SynDecl
       (EpAnn
-       (Anchor
-        { KindSigs.hs:19:1-26 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:19:1-26 })
        [(AddEpAnn AnnType (EpaSpan { KindSigs.hs:19:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:19:10 }))]
        (EpaComments
@@ -589,9 +509,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:12-26 })
        (HsListTy
         (EpAnn
-         (Anchor
-          { KindSigs.hs:19:12-26 }
-          (UnchangedAnchor))
+         (EpaSpan { KindSigs.hs:19:12-26 })
          (AnnParen
           (AnnParensSquare)
           (EpaSpan { KindSigs.hs:19:12 })
@@ -602,9 +520,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:14-24 })
          (HsKindSig
           (EpAnn
-           (Anchor
-            { KindSigs.hs:19:14-24 }
-            (UnchangedAnchor))
+           (EpaSpan { KindSigs.hs:19:14-24 })
            [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:19:18-19 }))]
            (EpaComments
             []))
@@ -612,9 +528,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:14-16 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { KindSigs.hs:19:14-16 }
-              (UnchangedAnchor))
+             (EpaSpan { KindSigs.hs:19:14-16 })
              []
              (EpaComments
               []))
@@ -627,9 +541,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:19:21-24 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { KindSigs.hs:19:21-24 }
-              (UnchangedAnchor))
+             (EpaSpan { KindSigs.hs:19:21-24 })
              []
              (EpaComments
               []))
@@ -640,9 +552,7 @@
               {OccName: Type})))))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:22:1-44 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:22:1-44 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -651,9 +561,7 @@
      (NoExtField)
      (TypeSig
       (EpAnn
-       (Anchor
-        { KindSigs.hs:22:1-44 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:22:1-44 })
        (AnnSig
         (AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:22:5-6 }))
         [])
@@ -675,9 +583,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:8-44 })
           (HsFunTy
            (EpAnn
-            (Anchor
-             { KindSigs.hs:22:8-44 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:22:8-44 })
             (NoEpAnns)
             (EpaComments
              []))
@@ -690,9 +596,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:8-20 })
             (HsParTy
              (EpAnn
-              (Anchor
-               { KindSigs.hs:22:8-20 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:22:8-20 })
               (AnnParen
                (AnnParens)
                (EpaSpan { KindSigs.hs:22:8 })
@@ -703,9 +607,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:9-19 })
               (HsKindSig
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:22:9-19 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:22:9-19 })
                 [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:22:13-14 }))]
                 (EpaComments
                  []))
@@ -713,9 +615,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:9-11 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { KindSigs.hs:22:9-11 }
-                   (UnchangedAnchor))
+                  (EpaSpan { KindSigs.hs:22:9-11 })
                   []
                   (EpaComments
                    []))
@@ -728,9 +628,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:16-19 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { KindSigs.hs:22:16-19 }
-                   (UnchangedAnchor))
+                  (EpaSpan { KindSigs.hs:22:16-19 })
                   []
                   (EpaComments
                    []))
@@ -743,9 +641,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:25-44 })
             (HsFunTy
              (EpAnn
-              (Anchor
-               { KindSigs.hs:22:25-44 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:22:25-44 })
               (NoEpAnns)
               (EpaComments
                []))
@@ -758,9 +654,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:25-28 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:22:25-28 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:22:25-28 })
                 []
                 (EpaComments
                  []))
@@ -773,9 +667,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:33-44 })
               (HsParTy
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:22:33-44 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:22:33-44 })
                 (AnnParen
                  (AnnParens)
                  (EpaSpan { KindSigs.hs:22:33 })
@@ -786,9 +678,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:34-43 })
                 (HsKindSig
                  (EpAnn
-                  (Anchor
-                   { KindSigs.hs:22:34-43 }
-                   (UnchangedAnchor))
+                  (EpaSpan { KindSigs.hs:22:34-43 })
                   [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:22:37-38 }))]
                   (EpaComments
                    []))
@@ -796,9 +686,7 @@
                   (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:34-35 })
                   (HsTupleTy
                    (EpAnn
-                    (Anchor
-                     { KindSigs.hs:22:34-35 }
-                     (UnchangedAnchor))
+                    (EpaSpan { KindSigs.hs:22:34-35 })
                     (AnnParen
                      (AnnParens)
                      (EpaSpan { KindSigs.hs:22:34 })
@@ -811,9 +699,7 @@
                   (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:22:40-43 })
                   (HsTyVar
                    (EpAnn
-                    (Anchor
-                     { KindSigs.hs:22:40-43 }
-                     (UnchangedAnchor))
+                    (EpaSpan { KindSigs.hs:22:40-43 })
                     []
                     (EpaComments
                      []))
@@ -824,9 +710,7 @@
                      {OccName: Type}))))))))))))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:23:1-12 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:23:1-12 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -845,18 +729,14 @@
         (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:23:1-12 })
         [(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { KindSigs.hs:23:1-12 }
-                        (UnchangedAnchor))
+                       (EpaSpan { KindSigs.hs:23:1-12 })
                        (AnnListItem
                         [])
                        (EpaComments
                         [])) { KindSigs.hs:23:1-12 })
           (Match
            (EpAnn
-            (Anchor
-             { KindSigs.hs:23:1-12 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:23:1-12 })
             []
             (EpaComments
              []))
@@ -884,9 +764,7 @@
                { KindSigs.hs:23:9-12 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:23:9-12 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:23:9-12 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:23:9 })))
@@ -899,9 +777,7 @@
                  (NoExtField)
                  (L
                   (SrcSpanAnn (EpAnn
-                               (Anchor
-                                { KindSigs.hs:23:11-12 }
-                                (UnchangedAnchor))
+                               (EpaSpan { KindSigs.hs:23:11-12 })
                                (NameAnnOnly
                                 (NameParens)
                                 (EpaSpan { KindSigs.hs:23:11 })
@@ -915,9 +791,7 @@
              (NoExtField)))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:26:1-29 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:26:1-29 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -926,9 +800,7 @@
      (NoExtField)
      (SynDecl
       (EpAnn
-       (Anchor
-        { KindSigs.hs:26:1-29 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:26:1-29 })
        [(AddEpAnn AnnType (EpaSpan { KindSigs.hs:26:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:26:11 }))]
        (EpaComments
@@ -945,9 +817,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:13-29 })
        (HsExplicitListTy
         (EpAnn
-         (Anchor
-          { KindSigs.hs:26:13-29 }
-          (UnchangedAnchor))
+         (EpaSpan { KindSigs.hs:26:13-29 })
          [(AddEpAnn AnnSimpleQuote (EpaSpan { KindSigs.hs:26:13 }))
          ,(AddEpAnn AnnOpenS (EpaSpan { KindSigs.hs:26:14 }))
          ,(AddEpAnn AnnCloseS (EpaSpan { KindSigs.hs:26:29 }))]
@@ -958,9 +828,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:16-27 })
           (HsKindSig
            (EpAnn
-            (Anchor
-             { KindSigs.hs:26:16-27 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:26:16-27 })
             [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:26:21-22 }))]
             (EpaComments
              []))
@@ -968,9 +836,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:16-19 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:26:16-19 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:26:16-19 })
               []
               (EpaComments
                []))
@@ -983,9 +849,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:26:24-27 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:26:24-27 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:26:24-27 })
               []
               (EpaComments
                []))
@@ -996,9 +860,7 @@
                {OccName: Bool}))))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:27:1-45 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:27:1-45 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1007,9 +869,7 @@
      (NoExtField)
      (SynDecl
       (EpAnn
-       (Anchor
-        { KindSigs.hs:27:1-45 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:27:1-45 })
        [(AddEpAnn AnnType (EpaSpan { KindSigs.hs:27:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:27:12 }))]
        (EpaComments
@@ -1026,9 +886,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:14-45 })
        (HsExplicitListTy
         (EpAnn
-         (Anchor
-          { KindSigs.hs:27:14-45 }
-          (UnchangedAnchor))
+         (EpaSpan { KindSigs.hs:27:14-45 })
          [(AddEpAnn AnnOpenS (EpaSpan { KindSigs.hs:27:14 }))
          ,(AddEpAnn AnnCloseS (EpaSpan { KindSigs.hs:27:45 }))]
          (EpaComments
@@ -1036,9 +894,7 @@
         (NotPromoted)
         [(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { KindSigs.hs:27:16-27 }
-                        (UnchangedAnchor))
+                       (EpaSpan { KindSigs.hs:27:16-27 })
                        (AnnListItem
                         [(AddCommaAnn
                           (EpaSpan { KindSigs.hs:27:28 }))])
@@ -1046,9 +902,7 @@
                         [])) { KindSigs.hs:27:16-27 })
           (HsKindSig
            (EpAnn
-            (Anchor
-             { KindSigs.hs:27:16-27 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:27:16-27 })
             [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:27:21-22 }))]
             (EpaComments
              []))
@@ -1056,9 +910,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:16-19 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:27:16-19 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:27:16-19 })
               []
               (EpaComments
                []))
@@ -1071,9 +923,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:24-27 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:27:24-27 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:27:24-27 })
               []
               (EpaComments
                []))
@@ -1086,9 +936,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:30-42 })
           (HsKindSig
            (EpAnn
-            (Anchor
-             { KindSigs.hs:27:30-42 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:27:30-42 })
             [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:27:36-37 }))]
             (EpaComments
              []))
@@ -1096,9 +944,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:30-34 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:27:30-34 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:27:30-34 })
               []
               (EpaComments
                []))
@@ -1111,9 +957,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:27:39-42 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { KindSigs.hs:27:39-42 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:27:39-42 })
               []
               (EpaComments
                []))
@@ -1124,9 +968,7 @@
                {OccName: Bool}))))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:28:1-44 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:28:1-44 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1135,9 +977,7 @@
      (NoExtField)
      (SynDecl
       (EpAnn
-       (Anchor
-        { KindSigs.hs:28:1-44 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:28:1-44 })
        [(AddEpAnn AnnType (EpaSpan { KindSigs.hs:28:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:28:14 }))]
        (EpaComments
@@ -1152,9 +992,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:12 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { KindSigs.hs:28:12 }
-            (UnchangedAnchor))
+           (EpaSpan { KindSigs.hs:28:12 })
            []
            (EpaComments
             []))
@@ -1168,9 +1006,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:16-44 })
        (HsExplicitTupleTy
         (EpAnn
-         (Anchor
-          { KindSigs.hs:28:16-44 }
-          (UnchangedAnchor))
+         (EpaSpan { KindSigs.hs:28:16-44 })
          [(AddEpAnn AnnSimpleQuote (EpaSpan { KindSigs.hs:28:16 }))
          ,(AddEpAnn AnnOpenP (EpaSpan { KindSigs.hs:28:17 }))
          ,(AddEpAnn AnnCloseP (EpaSpan { KindSigs.hs:28:44 }))]
@@ -1178,9 +1014,7 @@
           []))
         [(L
           (SrcSpanAnn (EpAnn
-                       (Anchor
-                        { KindSigs.hs:28:19-39 }
-                        (UnchangedAnchor))
+                       (EpaSpan { KindSigs.hs:28:19-39 })
                        (AnnListItem
                         [(AddCommaAnn
                           (EpaSpan { KindSigs.hs:28:40 }))])
@@ -1188,9 +1022,7 @@
                         [])) { KindSigs.hs:28:19-39 })
           (HsKindSig
            (EpAnn
-            (Anchor
-             { KindSigs.hs:28:19-39 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:28:19-39 })
             [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:28:31-32 }))]
             (EpaComments
              []))
@@ -1198,9 +1030,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:19-29 })
             (HsExplicitListTy
              (EpAnn
-              (Anchor
-               { KindSigs.hs:28:19-29 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:28:19-29 })
               [(AddEpAnn AnnOpenS (EpaSpan { KindSigs.hs:28:19 }))
               ,(AddEpAnn AnnCloseS (EpaSpan { KindSigs.hs:28:29 }))]
               (EpaComments
@@ -1208,9 +1038,7 @@
              (NotPromoted)
              [(L
                (SrcSpanAnn (EpAnn
-                            (Anchor
-                             { KindSigs.hs:28:20-22 }
-                             (UnchangedAnchor))
+                            (EpaSpan { KindSigs.hs:28:20-22 })
                             (AnnListItem
                              [(AddCommaAnn
                                (EpaSpan { KindSigs.hs:28:23 }))])
@@ -1218,9 +1046,7 @@
                              [])) { KindSigs.hs:28:20-22 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { KindSigs.hs:28:20-22 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:28:20-22 })
                  []
                  (EpaComments
                   []))
@@ -1233,9 +1059,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:25-28 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { KindSigs.hs:28:25-28 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:28:25-28 })
                  []
                  (EpaComments
                   []))
@@ -1248,9 +1072,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:34-39 })
             (HsListTy
              (EpAnn
-              (Anchor
-               { KindSigs.hs:28:34-39 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:28:34-39 })
               (AnnParen
                (AnnParensSquare)
                (EpaSpan { KindSigs.hs:28:34 })
@@ -1261,9 +1083,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:35-38 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:28:35-38 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:28:35-38 })
                 []
                 (EpaComments
                  []))
@@ -1276,9 +1096,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:28:42 })
           (HsTyVar
            (EpAnn
-            (Anchor
-             { KindSigs.hs:28:42 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:28:42 })
             []
             (EpaComments
              []))
@@ -1289,9 +1107,7 @@
              {OccName: b}))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:31:1-31 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:31:1-31 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1300,9 +1116,7 @@
      (NoExtField)
      (SynDecl
       (EpAnn
-       (Anchor
-        { KindSigs.hs:31:1-31 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:31:1-31 })
        [(AddEpAnn AnnType (EpaSpan { KindSigs.hs:31:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:31:19 }))]
        (EpaComments
@@ -1319,9 +1133,7 @@
        (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:31:21-31 })
        (HsKindSig
         (EpAnn
-         (Anchor
-          { KindSigs.hs:31:21-31 }
-          (UnchangedAnchor))
+         (EpaSpan { KindSigs.hs:31:21-31 })
          [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:31:25-26 }))]
          (EpaComments
           []))
@@ -1329,9 +1141,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:31:21-23 })
          (HsTyVar
           (EpAnn
-           (Anchor
-            { KindSigs.hs:31:21-23 }
-            (UnchangedAnchor))
+           (EpaSpan { KindSigs.hs:31:21-23 })
            []
            (EpaComments
             []))
@@ -1344,9 +1154,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:31:28-31 })
          (HsTyVar
           (EpAnn
-           (Anchor
-            { KindSigs.hs:31:28-31 }
-            (UnchangedAnchor))
+           (EpaSpan { KindSigs.hs:31:28-31 })
            []
            (EpaComments
             []))
@@ -1357,9 +1165,7 @@
             {OccName: Type})))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:34:1-22 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:34:1-22 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1368,9 +1174,7 @@
      (NoExtField)
      (TypeSig
       (EpAnn
-       (Anchor
-        { KindSigs.hs:34:1-22 }
-        (UnchangedAnchor))
+       (EpaSpan { KindSigs.hs:34:1-22 })
        (AnnSig
         (AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:34:6-7 }))
         [])
@@ -1392,9 +1196,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:9-22 })
           (HsParTy
            (EpAnn
-            (Anchor
-             { KindSigs.hs:34:9-22 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:34:9-22 })
             (AnnParen
              (AnnParens)
              (EpaSpan { KindSigs.hs:34:9 })
@@ -1405,9 +1207,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:10-21 })
             (HsKindSig
              (EpAnn
-              (Anchor
-               { KindSigs.hs:34:10-21 }
-               (UnchangedAnchor))
+              (EpaSpan { KindSigs.hs:34:10-21 })
               [(AddEpAnn AnnDcolon (EpaSpan { KindSigs.hs:34:15-16 }))]
               (EpaComments
                []))
@@ -1415,9 +1215,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:10-13 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:34:10-13 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:34:10-13 })
                 []
                 (EpaComments
                  []))
@@ -1430,9 +1228,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:34:18-21 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:34:18-21 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:34:18-21 })
                 []
                 (EpaComments
                  []))
@@ -1443,9 +1239,7 @@
                  {OccName: Type}))))))))))))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { KindSigs.hs:35:1-11 }
-                  (UnchangedAnchor))
+                 (EpaSpan { KindSigs.hs:35:1-11 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -1466,9 +1260,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { KindSigs.hs:35:1-11 })
           (Match
            (EpAnn
-            (Anchor
-             { KindSigs.hs:35:1-11 }
-             (UnchangedAnchor))
+            (EpaSpan { KindSigs.hs:35:1-11 })
             []
             (EpaComments
              []))
@@ -1489,9 +1281,7 @@
                { KindSigs.hs:35:6-11 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { KindSigs.hs:35:6-11 }
-                 (UnchangedAnchor))
+                (EpaSpan { KindSigs.hs:35:6-11 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { KindSigs.hs:35:6 })))
diff --git a/testsuite/tests/parser/should_compile/T14189.stderr b/testsuite/tests/parser/should_compile/T14189.stderr
index 431ae3845ae1a44d3ab1e20637674d2f24a1428e..69fdd31a420f2d49f6103f8ff4b39fb216355c55 100644
--- a/testsuite/tests/parser/should_compile/T14189.stderr
+++ b/testsuite/tests/parser/should_compile/T14189.stderr
@@ -14,9 +14,7 @@
      (NoExtField)
      [(L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { T14189.hs:6:1-42 }
-                     (UnchangedAnchor))
+                    (EpaSpan { T14189.hs:6:1-42 })
                     (AnnListItem
                      [])
                     (EpaComments
@@ -42,9 +40,7 @@
           (False)
           [(L
             (SrcSpanAnn (EpAnn
-                         (Anchor
-                          { T14189.hs:6:15-20 }
-                          (UnchangedAnchor))
+                         (EpaSpan { T14189.hs:6:15-20 })
                          (AnnListItem
                           [(AddVbarAnn
                             (EpaSpan { T14189.hs:6:22 }))])
@@ -80,9 +76,7 @@
              (Nothing)))
           ,(L
             (SrcSpanAnn (EpAnn
-                         (Anchor
-                          { T14189.hs:6:24-25 }
-                          (UnchangedAnchor))
+                         (EpaSpan { T14189.hs:6:24-25 })
                          (AnnListItem
                           [(AddVbarAnn
                             (EpaSpan { T14189.hs:6:27 }))])
@@ -113,14 +107,10 @@
              (RecCon
               (L
                (SrcSpanAnn (EpAnn
-                            (Anchor
-                             { T14189.hs:6:31-42 }
-                             (UnchangedAnchor))
+                            (EpaSpan { T14189.hs:6:31-42 })
                             (AnnList
                              (Just
-                              (Anchor
-                               { T14189.hs:6:33-40 }
-                               (UnchangedAnchor)))
+                              (EpaSpan { T14189.hs:6:33-40 }))
                              (Just
                               (AddEpAnn AnnOpenC (EpaSpan { T14189.hs:6:31 })))
                              (Just
@@ -134,9 +124,7 @@
                  (ConDeclField
                   (EpAnnNotUsed)
                   [(L
-                    (SrcSpanAnn
-                     (EpAnnNotUsed)
-                     { T14189.hs:6:33 })
+                    (SrcSpanAnn (EpAnnNotUsed) { T14189.hs:6:33 })
                     (FieldOcc
                      {Name: T14189.f}
                      (L
@@ -189,9 +177,7 @@
        ((,)
         (Nothing)
         (EpAnn
-         (Anchor
-          { T14189.hs:3:3-8 }
-          (UnchangedAnchor))
+         (EpaSpan { T14189.hs:3:3-8 })
          [(AddEpAnn AnnOpenP (EpaSpan { T14189.hs:3:10 }))
          ,(AddEpAnn AnnCloseP (EpaSpan { T14189.hs:3:15 }))]
          (EpaComments
@@ -206,9 +192,7 @@
        (NoIEWildcard)
        [(L
          (SrcSpanAnn (EpAnn
-                      (Anchor
-                       { T14189.hs:3:11 }
-                       (UnchangedAnchor))
+                      (EpaSpan { T14189.hs:3:11 })
                       (AnnListItem
                        [(AddCommaAnn
                          (EpaSpan { T14189.hs:3:12 }))])
diff --git a/testsuite/tests/parser/should_compile/T15323.stderr b/testsuite/tests/parser/should_compile/T15323.stderr
index 1da3125d2a3027d004e3dba85286ed57bbf1ce5b..c3dfb247427aba517cce343802737a9a6b465e2c 100644
--- a/testsuite/tests/parser/should_compile/T15323.stderr
+++ b/testsuite/tests/parser/should_compile/T15323.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T15323.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T15323.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { T15323.hs:3:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T15323.hs:3:15-19 }))]
@@ -32,9 +30,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T15323.hs:(5,1)-(6,54) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T15323.hs:(5,1)-(6,54) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -43,9 +39,7 @@
      (NoExtField)
      (DataDecl
       (EpAnn
-       (Anchor
-        { T15323.hs:(5,1)-(6,54) }
-        (UnchangedAnchor))
+       (EpaSpan { T15323.hs:(5,1)-(6,54) })
        [(AddEpAnn AnnData (EpaSpan { T15323.hs:5:1-4 }))
        ,(AddEpAnn AnnWhere (EpaSpan { T15323.hs:5:21-25 }))]
        (EpaComments
@@ -60,9 +54,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:5:19 })
          (UserTyVar
           (EpAnn
-           (Anchor
-            { T15323.hs:5:19 }
-            (UnchangedAnchor))
+           (EpaSpan { T15323.hs:5:19 })
            []
            (EpaComments
             []))
@@ -83,9 +75,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:5-54 })
           (ConDeclGADT
            (EpAnn
-            (Anchor
-             { T15323.hs:6:5-54 }
-             (UnchangedAnchor))
+            (EpaSpan { T15323.hs:6:5-54 })
             []
             (EpaComments
              []))
@@ -101,18 +91,14 @@
             (HsNormalTok))
            (L
             (SrcSpanAnn (EpAnn
-                         (Anchor
-                          { T15323.hs:6:20-29 }
-                          (UnchangedAnchor))
+                         (EpaSpan { T15323.hs:6:20-29 })
                          (AnnListItem
                           [])
                          (EpaComments
                           [])) { T15323.hs:6:20-29 })
             (HsOuterExplicit
              (EpAnn
-              (Anchor
-               { T15323.hs:6:20-29 }
-               (UnchangedAnchor))
+              (EpaSpan { T15323.hs:6:20-29 })
               ((,)
                (AddEpAnn AnnForall (EpaSpan { T15323.hs:6:20-25 }))
                (AddEpAnn AnnDot (EpaSpan { T15323.hs:6:29 })))
@@ -122,9 +108,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:27 })
                (UserTyVar
                 (EpAnn
-                 (Anchor
-                  { T15323.hs:6:27 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T15323.hs:6:27 })
                  []
                  (EpaComments
                   []))
@@ -136,9 +120,7 @@
            (Just
             (L
              (SrcSpanAnn (EpAnn
-                          (Anchor
-                           { T15323.hs:6:31-36 }
-                           (UnchangedAnchor))
+                          (EpaSpan { T15323.hs:6:31-36 })
                           (AnnContext
                            (Just
                             ((,)
@@ -152,9 +134,7 @@
                (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:31-36 })
                (HsParTy
                 (EpAnn
-                 (Anchor
-                  { T15323.hs:6:31-36 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T15323.hs:6:31-36 })
                  (AnnParen
                   (AnnParens)
                   (EpaSpan { T15323.hs:6:31 })
@@ -169,9 +149,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:32-33 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T15323.hs:6:32-33 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T15323.hs:6:32-33 })
                      []
                      (EpaComments
                       []))
@@ -184,9 +162,7 @@
                    (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:35 })
                    (HsTyVar
                     (EpAnn
-                     (Anchor
-                      { T15323.hs:6:35 }
-                      (UnchangedAnchor))
+                     (EpaSpan { T15323.hs:6:35 })
                      []
                      (EpaComments
                       []))
@@ -205,9 +181,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:41-52 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T15323.hs:6:41-52 }
-                 (UnchangedAnchor))
+                (EpaSpan { T15323.hs:6:41-52 })
                 []
                 (EpaComments
                  []))
@@ -220,9 +194,7 @@
               (SrcSpanAnn (EpAnnNotUsed) { T15323.hs:6:54 })
               (HsTyVar
                (EpAnn
-                (Anchor
-                 { T15323.hs:6:54 }
-                 (UnchangedAnchor))
+                (EpaSpan { T15323.hs:6:54 })
                 []
                 (EpaComments
                  []))
diff --git a/testsuite/tests/parser/should_compile/T20452.stderr b/testsuite/tests/parser/should_compile/T20452.stderr
index 77a5dff85ebf7b27b26394b3b72657c33f9227e3..76de96c716cf7d0f527973aef9c671842be5e8c0 100644
--- a/testsuite/tests/parser/should_compile/T20452.stderr
+++ b/testsuite/tests/parser/should_compile/T20452.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T20452.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T20452.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { T20452.hs:3:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T20452.hs:3:15-19 }))]
@@ -32,9 +30,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T20452.hs:5:1-31 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T20452.hs:5:1-31 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -43,9 +39,7 @@
      (NoExtField)
      (DataDecl
       (EpAnn
-       (Anchor
-        { T20452.hs:5:1-31 }
-        (UnchangedAnchor))
+       (EpaSpan { T20452.hs:5:1-31 })
        [(AddEpAnn AnnData (EpaSpan { T20452.hs:5:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { T20452.hs:5:24 }))]
        (EpaComments
@@ -60,9 +54,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:14-21 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { T20452.hs:5:14-21 }
-            (UnchangedAnchor))
+           (EpaSpan { T20452.hs:5:14-21 })
            [(AddEpAnn AnnDcolon (EpaSpan { T20452.hs:5:17-18 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:5:14 }))
            ,(AddEpAnn AnnCloseP (EpaSpan { T20452.hs:5:21 }))]
@@ -77,9 +69,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:20 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { T20452.hs:5:20 }
-              (UnchangedAnchor))
+             (EpaSpan { T20452.hs:5:20 })
              []
              (EpaComments
               []))
@@ -100,9 +90,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:5:26-31 })
           (ConDeclH98
            (EpAnn
-            (Anchor
-             { T20452.hs:5:26-31 }
-             (UnchangedAnchor))
+            (EpaSpan { T20452.hs:5:26-31 })
             []
             (EpaComments
              []))
@@ -120,9 +108,7 @@
        []))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T20452.hs:6:1-31 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T20452.hs:6:1-31 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -131,9 +117,7 @@
      (NoExtField)
      (DataDecl
       (EpAnn
-       (Anchor
-        { T20452.hs:6:1-31 }
-        (UnchangedAnchor))
+       (EpaSpan { T20452.hs:6:1-31 })
        [(AddEpAnn AnnData (EpaSpan { T20452.hs:6:1-4 }))
        ,(AddEpAnn AnnEqual (EpaSpan { T20452.hs:6:24 }))]
        (EpaComments
@@ -148,9 +132,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:13-22 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { T20452.hs:6:13-22 }
-            (UnchangedAnchor))
+           (EpaSpan { T20452.hs:6:13-22 })
            [(AddEpAnn AnnDcolon (EpaSpan { T20452.hs:6:17-18 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:6:13 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:6:14 }))
@@ -167,9 +149,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:20 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { T20452.hs:6:20 }
-              (UnchangedAnchor))
+             (EpaSpan { T20452.hs:6:20 })
              []
              (EpaComments
               []))
@@ -190,9 +170,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:6:26-31 })
           (ConDeclH98
            (EpAnn
-            (Anchor
-             { T20452.hs:6:26-31 }
-             (UnchangedAnchor))
+            (EpaSpan { T20452.hs:6:26-31 })
             []
             (EpaComments
              []))
@@ -210,9 +188,7 @@
        []))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T20452.hs:8:1-85 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T20452.hs:8:1-85 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -222,9 +198,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T20452.hs:8:1-85 }
-         (UnchangedAnchor))
+        (EpaSpan { T20452.hs:8:1-85 })
         [(AddEpAnn AnnClass (EpaSpan { T20452.hs:8:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T20452.hs:8:78-82 }))
         ,(AddEpAnn AnnOpenC (EpaSpan { T20452.hs:8:84 }))
@@ -252,9 +226,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:15-26 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { T20452.hs:8:15-26 }
-            (UnchangedAnchor))
+           (EpaSpan { T20452.hs:8:15-26 })
            [(AddEpAnn AnnDcolon (EpaSpan { T20452.hs:8:20-21 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:8:15 }))
            ,(AddEpAnn AnnCloseP (EpaSpan { T20452.hs:8:26 }))]
@@ -269,9 +241,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:23-25 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { T20452.hs:8:23-25 }
-              (UnchangedAnchor))
+             (EpaSpan { T20452.hs:8:23-25 })
              []
              (EpaComments
               []))
@@ -284,9 +254,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:30-45 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { T20452.hs:8:30-45 }
-            (UnchangedAnchor))
+           (EpaSpan { T20452.hs:8:30-45 })
            [(AddEpAnn AnnDcolon (EpaSpan { T20452.hs:8:36-37 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:8:30 }))
            ,(AddEpAnn AnnCloseP (EpaSpan { T20452.hs:8:45 }))]
@@ -301,9 +269,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:39-44 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { T20452.hs:8:39-44 }
-              (UnchangedAnchor))
+             (EpaSpan { T20452.hs:8:39-44 })
              []
              (EpaComments
               []))
@@ -316,9 +282,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:49-75 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { T20452.hs:8:49-75 }
-            (UnchangedAnchor))
+           (EpaSpan { T20452.hs:8:49-75 })
            [(AddEpAnn AnnDcolon (EpaSpan { T20452.hs:8:54-55 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:8:49 }))
            ,(AddEpAnn AnnCloseP (EpaSpan { T20452.hs:8:75 }))]
@@ -333,9 +297,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:57-74 })
            (HsListTy
             (EpAnn
-             (Anchor
-              { T20452.hs:8:57-74 }
-              (UnchangedAnchor))
+             (EpaSpan { T20452.hs:8:57-74 })
              (AnnParen
               (AnnParensSquare)
               (EpaSpan { T20452.hs:8:57 })
@@ -346,9 +308,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:58-73 })
              (HsTupleTy
               (EpAnn
-               (Anchor
-                { T20452.hs:8:58-73 }
-                (UnchangedAnchor))
+               (EpaSpan { T20452.hs:8:58-73 })
                (AnnParen
                 (AnnParens)
                 (EpaSpan { T20452.hs:8:58 })
@@ -358,9 +318,7 @@
               (HsBoxedOrConstraintTuple)
               [(L
                 (SrcSpanAnn (EpAnn
-                             (Anchor
-                              { T20452.hs:8:59-64 }
-                              (UnchangedAnchor))
+                             (EpaSpan { T20452.hs:8:59-64 })
                              (AnnListItem
                               [(AddCommaAnn
                                 (EpaSpan { T20452.hs:8:65 }))])
@@ -368,9 +326,7 @@
                               [])) { T20452.hs:8:59-64 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { T20452.hs:8:59-64 }
-                   (UnchangedAnchor))
+                  (EpaSpan { T20452.hs:8:59-64 })
                   []
                   (EpaComments
                    []))
@@ -383,9 +339,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:8:67-72 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { T20452.hs:8:67-72 }
-                   (UnchangedAnchor))
+                  (EpaSpan { T20452.hs:8:67-72 })
                   []
                   (EpaComments
                    []))
@@ -404,9 +358,7 @@
       [])))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T20452.hs:9:1-85 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T20452.hs:9:1-85 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -416,9 +368,7 @@
      (ClassDecl
       ((,)
        (EpAnn
-        (Anchor
-         { T20452.hs:9:1-85 }
-         (UnchangedAnchor))
+        (EpaSpan { T20452.hs:9:1-85 })
         [(AddEpAnn AnnClass (EpaSpan { T20452.hs:9:1-5 }))
         ,(AddEpAnn AnnWhere (EpaSpan { T20452.hs:9:78-82 }))
         ,(AddEpAnn AnnOpenC (EpaSpan { T20452.hs:9:84 }))
@@ -446,9 +396,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:14-27 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { T20452.hs:9:14-27 }
-            (UnchangedAnchor))
+           (EpaSpan { T20452.hs:9:14-27 })
            [(AddEpAnn AnnDcolon (EpaSpan { T20452.hs:9:20-21 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:9:14 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:9:15 }))
@@ -465,9 +413,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:23-25 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { T20452.hs:9:23-25 }
-              (UnchangedAnchor))
+             (EpaSpan { T20452.hs:9:23-25 })
              []
              (EpaComments
               []))
@@ -480,9 +426,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:29-46 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { T20452.hs:9:29-46 }
-            (UnchangedAnchor))
+           (EpaSpan { T20452.hs:9:29-46 })
            [(AddEpAnn AnnDcolon (EpaSpan { T20452.hs:9:36-37 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:9:29 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:9:30 }))
@@ -499,9 +443,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:39-44 })
            (HsTyVar
             (EpAnn
-             (Anchor
-              { T20452.hs:9:39-44 }
-              (UnchangedAnchor))
+             (EpaSpan { T20452.hs:9:39-44 })
              []
              (EpaComments
               []))
@@ -514,9 +456,7 @@
          (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:48-76 })
          (KindedTyVar
           (EpAnn
-           (Anchor
-            { T20452.hs:9:48-76 }
-            (UnchangedAnchor))
+           (EpaSpan { T20452.hs:9:48-76 })
            [(AddEpAnn AnnDcolon (EpaSpan { T20452.hs:9:54-55 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:9:48 }))
            ,(AddEpAnn AnnOpenP (EpaSpan { T20452.hs:9:49 }))
@@ -533,9 +473,7 @@
            (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:57-74 })
            (HsListTy
             (EpAnn
-             (Anchor
-              { T20452.hs:9:57-74 }
-              (UnchangedAnchor))
+             (EpaSpan { T20452.hs:9:57-74 })
              (AnnParen
               (AnnParensSquare)
               (EpaSpan { T20452.hs:9:57 })
@@ -546,9 +484,7 @@
              (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:58-73 })
              (HsTupleTy
               (EpAnn
-               (Anchor
-                { T20452.hs:9:58-73 }
-                (UnchangedAnchor))
+               (EpaSpan { T20452.hs:9:58-73 })
                (AnnParen
                 (AnnParens)
                 (EpaSpan { T20452.hs:9:58 })
@@ -558,9 +494,7 @@
               (HsBoxedOrConstraintTuple)
               [(L
                 (SrcSpanAnn (EpAnn
-                             (Anchor
-                              { T20452.hs:9:59-64 }
-                              (UnchangedAnchor))
+                             (EpaSpan { T20452.hs:9:59-64 })
                              (AnnListItem
                               [(AddCommaAnn
                                 (EpaSpan { T20452.hs:9:65 }))])
@@ -568,9 +502,7 @@
                               [])) { T20452.hs:9:59-64 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { T20452.hs:9:59-64 }
-                   (UnchangedAnchor))
+                  (EpaSpan { T20452.hs:9:59-64 })
                   []
                   (EpaComments
                    []))
@@ -583,9 +515,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { T20452.hs:9:67-72 })
                 (HsTyVar
                  (EpAnn
-                  (Anchor
-                   { T20452.hs:9:67-72 }
-                   (UnchangedAnchor))
+                  (EpaSpan { T20452.hs:9:67-72 })
                   []
                   (EpaComments
                    []))
diff --git a/testsuite/tests/parser/should_compile/T20718.stderr b/testsuite/tests/parser/should_compile/T20718.stderr
index ebd35e96b781fd4b2de6a99bb94793f6d3af1e64..a43053219c1419c67702ed8299f92e024185cd89 100644
--- a/testsuite/tests/parser/should_compile/T20718.stderr
+++ b/testsuite/tests/parser/should_compile/T20718.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T20718.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T20718.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { T20718.hs:3:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T20718.hs:3:15-19 }))]
@@ -19,49 +17,37 @@
        { T20718.hs:11:1-8 })))
     (EpaCommentsBalanced
      [(L
-       (Anchor
-        { T20718.hs:1:1-16 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718.hs:1:1-16 })
        (EpaComment
         (EpaLineComment
          "-- top of file 1")
         { T20718.hs:1:1 }))
      ,(L
-       (Anchor
-        { T20718.hs:2:1-16 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718.hs:2:1-16 })
        (EpaComment
         (EpaLineComment
          "-- top of file 2")
         { T20718.hs:1:1-16 }))
      ,(L
-       (Anchor
-        { T20718.hs:5:1-11 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718.hs:5:1-11 })
        (EpaComment
         (EpaLineComment
          "-- before 1")
         { T20718.hs:3:15-19 }))
      ,(L
-       (Anchor
-        { T20718.hs:6:1-11 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718.hs:6:1-11 })
        (EpaComment
         (EpaLineComment
          "-- before 2")
         { T20718.hs:5:1-11 }))]
      [(L
-       (Anchor
-        { T20718.hs:10:1-8 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718.hs:10:1-8 })
        (EpaComment
         (EpaLineComment
          "-- end 1")
         { T20718.hs:8:5 }))
      ,(L
-       (Anchor
-        { T20718.hs:11:1-8 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718.hs:11:1-8 })
        (EpaComment
         (EpaLineComment
          "-- end 2")
@@ -78,9 +64,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T20718.hs:8:1-5 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T20718.hs:8:1-5 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -101,9 +85,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { T20718.hs:8:1-5 })
           (Match
            (EpAnn
-            (Anchor
-             { T20718.hs:8:1-5 }
-             (UnchangedAnchor))
+            (EpaSpan { T20718.hs:8:1-5 })
             []
             (EpaComments
              []))
@@ -124,9 +106,7 @@
                { T20718.hs:8:3-5 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { T20718.hs:8:3-5 }
-                 (UnchangedAnchor))
+                (EpaSpan { T20718.hs:8:3-5 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { T20718.hs:8:3 })))
@@ -137,9 +117,7 @@
                 (SrcSpanAnn (EpAnnNotUsed) { T20718.hs:8:5 })
                 (HsOverLit
                  (EpAnn
-                  (Anchor
-                   { T20718.hs:8:5 }
-                   (UnchangedAnchor))
+                  (EpaSpan { T20718.hs:8:5 })
                   (NoEpAnns)
                   (EpaComments
                    []))
diff --git a/testsuite/tests/parser/should_compile/T20718b.stderr b/testsuite/tests/parser/should_compile/T20718b.stderr
index 48077c4b6b5dff257431eda4633a9692e204dee1..de2ca167604dcace6f5e1b098be5811497eaf79f 100644
--- a/testsuite/tests/parser/should_compile/T20718b.stderr
+++ b/testsuite/tests/parser/should_compile/T20718b.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T20718b.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T20718b.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { T20718b.hs:4:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T20718b.hs:4:16-20 }))]
@@ -19,33 +17,25 @@
        { T20718b.hs:7:1-21 })))
     (EpaCommentsBalanced
      [(L
-       (Anchor
-        { T20718b.hs:1:1-19 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718b.hs:1:1-19 })
        (EpaComment
         (EpaLineComment
          "-- header comment 1")
         { T20718b.hs:1:1 }))
      ,(L
-       (Anchor
-        { T20718b.hs:2:1-19 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718b.hs:2:1-19 })
        (EpaComment
         (EpaLineComment
          "-- header comment 2")
         { T20718b.hs:1:1-19 }))
      ,(L
-       (Anchor
-        { T20718b.hs:6:1-21 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718b.hs:6:1-21 })
        (EpaComment
         (EpaLineComment
          "-- trailing comment 1")
         { T20718b.hs:4:16-20 }))
      ,(L
-       (Anchor
-        { T20718b.hs:7:1-21 }
-        (UnchangedAnchor))
+       (EpaSpan { T20718b.hs:7:1-21 })
        (EpaComment
         (EpaLineComment
          "-- trailing comment 2")
@@ -62,5 +52,3 @@
   (Nothing)
   []
   []))
-
-
diff --git a/testsuite/tests/parser/should_compile/T20846.stderr b/testsuite/tests/parser/should_compile/T20846.stderr
index a19f42be17a80e1d6945a3577cf25785d3862382..21e552dd1b485ba630918f22acd19f344f0a67c7 100644
--- a/testsuite/tests/parser/should_compile/T20846.stderr
+++ b/testsuite/tests/parser/should_compile/T20846.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T20846.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T20846.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { T20846.hs:1:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T20846.hs:1:15-19 }))]
@@ -32,9 +30,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T20846.hs:3:1-11 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T20846.hs:3:1-11 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -43,9 +39,7 @@
      (NoExtField)
      (FixSig
       (EpAnn
-       (Anchor
-        { T20846.hs:3:1-11 }
-        (UnchangedAnchor))
+       (EpaSpan { T20846.hs:3:1-11 })
        [(AddEpAnn AnnInfix (EpaSpan { T20846.hs:3:1-6 }))]
        (EpaComments
         []))
@@ -58,9 +52,7 @@
        {Fixity: infixr 9}))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T20846.hs:4:1-18 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T20846.hs:4:1-18 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -71,9 +63,7 @@
       (NoExtField)
       (L
        (SrcSpanAnn (EpAnn
-                    (Anchor
-                     { T20846.hs:4:1-6 }
-                     (UnchangedAnchor))
+                    (EpaSpan { T20846.hs:4:1-6 })
                     (NameAnn
                      (NameParens)
                      (EpaSpan { T20846.hs:4:1 })
@@ -92,18 +82,14 @@
           (SrcSpanAnn (EpAnnNotUsed) { T20846.hs:4:1-18 })
           (Match
            (EpAnn
-            (Anchor
-             { T20846.hs:4:1-18 }
-             (UnchangedAnchor))
+            (EpaSpan { T20846.hs:4:1-18 })
             []
             (EpaComments
              []))
            (FunRhs
             (L
              (SrcSpanAnn (EpAnn
-                          (Anchor
-                           { T20846.hs:4:1-6 }
-                           (UnchangedAnchor))
+                          (EpaSpan { T20846.hs:4:1-6 })
                           (NameAnn
                            (NameParens)
                            (EpaSpan { T20846.hs:4:1 })
@@ -126,9 +112,7 @@
                { T20846.hs:4:8-18 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { T20846.hs:4:8-18 }
-                 (UnchangedAnchor))
+                (EpaSpan { T20846.hs:4:8-18 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { T20846.hs:4:8 })))
diff --git a/testsuite/tests/parser/should_compile/T23315/T23315.stderr b/testsuite/tests/parser/should_compile/T23315/T23315.stderr
index ea75800b6e01ec1e388b90661f3b0a872d044c26..bc805660ab3d2d5222fdf8febca89db3d1de5977 100644
--- a/testsuite/tests/parser/should_compile/T23315/T23315.stderr
+++ b/testsuite/tests/parser/should_compile/T23315/T23315.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T23315.hsig:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T23315.hsig:1:1 })
     (AnnsModule
      [(AddEpAnn AnnSignature (EpaSpan { T23315.hsig:1:1-9 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T23315.hsig:1:18-22 }))]
@@ -45,9 +43,7 @@
         [])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T23315.hsig:3:1-7 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T23315.hsig:3:1-7 })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -56,9 +52,7 @@
      (NoExtField)
      (TypeSig
       (EpAnn
-       (Anchor
-        { T23315.hsig:3:1-7 }
-        (UnchangedAnchor))
+       (EpaSpan { T23315.hsig:3:1-7 })
        (AnnSig
         (AddEpAnn AnnDcolon (EpaSpan { T23315.hsig:3:3-4 }))
         [])
@@ -80,9 +74,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { T23315.hsig:3:6-7 })
           (HsTupleTy
            (EpAnn
-            (Anchor
-             { T23315.hsig:3:6-7 }
-             (UnchangedAnchor))
+            (EpaSpan { T23315.hsig:3:6-7 })
             (AnnParen
              (AnnParens)
              (EpaSpan { T23315.hsig:3:6 })
diff --git a/testsuite/tests/printer/T18791.stderr b/testsuite/tests/printer/T18791.stderr
index d7a0fb6b967e5f041e639ff36c358c242cb4989f..a3b4dc66f4d26d3f58c383e339e71da8cd0d93be 100644
--- a/testsuite/tests/printer/T18791.stderr
+++ b/testsuite/tests/printer/T18791.stderr
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { T18791.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { T18791.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { T18791.hs:2:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { T18791.hs:2:15-19 }))]
@@ -32,9 +30,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { T18791.hs:(4,1)-(5,17) }
-                  (UnchangedAnchor))
+                 (EpaSpan { T18791.hs:(4,1)-(5,17) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -43,9 +39,7 @@
      (NoExtField)
      (DataDecl
       (EpAnn
-       (Anchor
-        { T18791.hs:(4,1)-(5,17) }
-        (UnchangedAnchor))
+       (EpaSpan { T18791.hs:(4,1)-(5,17) })
        [(AddEpAnn AnnData (EpaSpan { T18791.hs:4:1-4 }))
        ,(AddEpAnn AnnWhere (EpaSpan { T18791.hs:4:8-12 }))]
        (EpaComments
@@ -69,9 +63,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:5:3-17 })
           (ConDeclGADT
            (EpAnn
-            (Anchor
-             { T18791.hs:5:3-17 }
-             (UnchangedAnchor))
+            (EpaSpan { T18791.hs:5:3-17 })
             []
             (EpaComments
              []))
@@ -99,18 +91,14 @@
                 (HsNormalTok)))
               (L
                (SrcSpanAnn (EpAnn
-                            (Anchor
-                             { T18791.hs:5:10-12 }
-                             (UnchangedAnchor))
+                            (EpaSpan { T18791.hs:5:10-12 })
                             (AnnListItem
                              [])
                             (EpaComments
                              [])) { T18791.hs:5:10-12 })
                (HsTyVar
                 (EpAnn
-                 (Anchor
-                  { T18791.hs:5:10-12 }
-                  (UnchangedAnchor))
+                 (EpaSpan { T18791.hs:5:10-12 })
                  []
                  (EpaComments
                   []))
@@ -123,9 +111,7 @@
             (SrcSpanAnn (EpAnnNotUsed) { T18791.hs:5:17 })
             (HsTyVar
              (EpAnn
-              (Anchor
-               { T18791.hs:5:17 }
-               (UnchangedAnchor))
+              (EpaSpan { T18791.hs:5:17 })
               []
               (EpaComments
                []))
@@ -136,5 +122,3 @@
                {OccName: T}))))
            (Nothing)))])
        []))))]))
-
-
diff --git a/testsuite/tests/printer/Test20297.stdout b/testsuite/tests/printer/Test20297.stdout
index bf46d7751f486aa0ba60b4dba40bd5a431bc5243..a5cc5788a83fae844ede18a04e2417a5f584e245 100644
--- a/testsuite/tests/printer/Test20297.stdout
+++ b/testsuite/tests/printer/Test20297.stdout
@@ -6,9 +6,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { Test20297.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { Test20297.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { Test20297.hs:2:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { Test20297.hs:2:18-22 }))]
@@ -19,9 +17,7 @@
        { Test20297.hs:11:22-26 })))
     (EpaCommentsBalanced
      [(L
-       (Anchor
-        { Test20297.hs:1:1-33 }
-        (UnchangedAnchor))
+       (EpaSpan { Test20297.hs:1:1-33 })
        (EpaComment
         (EpaBlockComment
          "{-# OPTIONS -ddump-parsed-ast #-}")
@@ -39,9 +35,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { Test20297.hs:(5,1)-(7,7) }
-                  (UnchangedAnchor))
+                 (EpaSpan { Test20297.hs:(5,1)-(7,7) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -62,9 +56,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:(5,1)-(7,7) })
           (Match
            (EpAnn
-            (Anchor
-             { Test20297.hs:(5,1)-(7,7) }
-             (UnchangedAnchor))
+            (EpaSpan { Test20297.hs:(5,1)-(7,7) })
             []
             (EpaComments
              []))
@@ -85,17 +77,13 @@
                { Test20297.hs:5:5-7 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { Test20297.hs:5:5-7 }
-                 (UnchangedAnchor))
+                (EpaSpan { Test20297.hs:5:5-7 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { Test20297.hs:5:5 })))
                 (EpaComments
                  [(L
-                   (Anchor
-                    { Test20297.hs:6:3-13 }
-                    (UnchangedAnchor))
+                   (EpaSpan { Test20297.hs:6:3-13 })
                    (EpaComment
                     (EpaLineComment
                      "-- comment0")
@@ -111,14 +99,10 @@
                    {OccName: x}))))))]
             (HsValBinds
              (EpAnn
-              (Anchor
-               { Test20297.hs:7:3-7 }
-               (UnchangedAnchor))
+              (EpaSpan { Test20297.hs:7:3-7 })
               (AnnList
                (Just
-                (Anchor
-                 { Test20297.hs:7:3-7 }
-                 (UnchangedAnchor)))
+                (EpaSpan { Test20297.hs:7:3-7 }))
                (Nothing)
                (Nothing)
                [(AddEpAnn AnnWhere (EpaSpan { Test20297.hs:7:3-7 }))]
@@ -132,16 +116,12 @@
               [])))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { Test20297.hs:(9,1)-(11,26) }
-                  (UnchangedAnchor))
+                 (EpaSpan { Test20297.hs:(9,1)-(11,26) })
                  (AnnListItem
                   [])
                  (EpaComments
                   [(L
-                    (Anchor
-                     { Test20297.hs:7:9-19 }
-                     (UnchangedAnchor))
+                    (EpaSpan { Test20297.hs:7:9-19 })
                     (EpaComment
                      (EpaLineComment
                       "-- comment1")
@@ -162,9 +142,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:(9,1)-(11,26) })
           (Match
            (EpAnn
-            (Anchor
-             { Test20297.hs:(9,1)-(11,26) }
-             (UnchangedAnchor))
+            (EpaSpan { Test20297.hs:(9,1)-(11,26) })
             []
             (EpaComments
              []))
@@ -185,9 +163,7 @@
                { Test20297.hs:9:5-7 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { Test20297.hs:9:5-7 }
-                 (UnchangedAnchor))
+                (EpaSpan { Test20297.hs:9:5-7 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { Test20297.hs:9:5 })))
@@ -204,23 +180,17 @@
                    {OccName: x}))))))]
             (HsValBinds
              (EpAnn
-              (Anchor
-               { Test20297.hs:(10,3)-(11,26) }
-               (UnchangedAnchor))
+              (EpaSpan { Test20297.hs:(10,3)-(11,26) })
               (AnnList
                (Just
-                (Anchor
-                 { Test20297.hs:11:9-26 }
-                 (UnchangedAnchor)))
+                (EpaSpan { Test20297.hs:11:9-26 }))
                (Nothing)
                (Nothing)
                [(AddEpAnn AnnWhere (EpaSpan { Test20297.hs:10:3-7 }))]
                [])
               (EpaComments
                [(L
-                 (Anchor
-                  { Test20297.hs:10:9-19 }
-                  (UnchangedAnchor))
+                 (EpaSpan { Test20297.hs:10:9-19 })
                  (EpaComment
                   (EpaLineComment
                    "-- comment2")
@@ -230,9 +200,7 @@
               {Bag(LocatedA (HsBind GhcPs)):
                [(L
                  (SrcSpanAnn (EpAnn
-                              (Anchor
-                               { Test20297.hs:11:9-26 }
-                               (UnchangedAnchor))
+                              (EpaSpan { Test20297.hs:11:9-26 })
                               (AnnListItem
                                [])
                               (EpaComments
@@ -251,9 +219,7 @@
                       (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:9-26 })
                       (Match
                        (EpAnn
-                        (Anchor
-                         { Test20297.hs:11:9-26 }
-                         (UnchangedAnchor))
+                        (EpaSpan { Test20297.hs:11:9-26 })
                         []
                         (EpaComments
                          []))
@@ -274,9 +240,7 @@
                            { Test20297.hs:11:17-26 })
                           (GRHS
                            (EpAnn
-                            (Anchor
-                             { Test20297.hs:11:17-26 }
-                             (UnchangedAnchor))
+                            (EpaSpan { Test20297.hs:11:17-26 })
                             (GrhsAnn
                              (Nothing)
                              (AddEpAnn AnnEqual (EpaSpan { Test20297.hs:11:17 })))
@@ -287,14 +251,10 @@
                             (SrcSpanAnn (EpAnnNotUsed) { Test20297.hs:11:19-26 })
                             (HsDo
                              (EpAnn
-                              (Anchor
-                               { Test20297.hs:11:19-26 }
-                               (UnchangedAnchor))
+                              (EpaSpan { Test20297.hs:11:19-26 })
                               (AnnList
                                (Just
-                                (Anchor
-                                 { Test20297.hs:11:22-26 }
-                                 (UnchangedAnchor)))
+                                (EpaSpan { Test20297.hs:11:22-26 }))
                                (Nothing)
                                (Nothing)
                                [(AddEpAnn AnnDo (EpaSpan { Test20297.hs:11:19-20 }))]
@@ -305,14 +265,10 @@
                               (Nothing))
                              (L
                               (SrcSpanAnn (EpAnn
-                                           (Anchor
-                                            { Test20297.hs:11:22-26 }
-                                            (UnchangedAnchor))
+                                           (EpaSpan { Test20297.hs:11:22-26 })
                                            (AnnList
                                             (Just
-                                             (Anchor
-                                              { Test20297.hs:11:22-26 }
-                                              (UnchangedAnchor)))
+                                             (EpaSpan { Test20297.hs:11:22-26 }))
                                             (Nothing)
                                             (Nothing)
                                             []
@@ -346,9 +302,7 @@
  (HsModule
   (XModulePs
    (EpAnn
-    (Anchor
-     { Test20297.ppr.hs:1:1 }
-     (UnchangedAnchor))
+    (EpaSpan { Test20297.ppr.hs:1:1 })
     (AnnsModule
      [(AddEpAnn AnnModule (EpaSpan { Test20297.ppr.hs:2:1-6 }))
      ,(AddEpAnn AnnWhere (EpaSpan { Test20297.ppr.hs:2:18-22 }))]
@@ -359,9 +313,7 @@
        { Test20297.ppr.hs:9:20-24 })))
     (EpaCommentsBalanced
      [(L
-       (Anchor
-        { Test20297.ppr.hs:1:1-33 }
-        (UnchangedAnchor))
+       (EpaSpan { Test20297.ppr.hs:1:1-33 })
        (EpaComment
         (EpaBlockComment
          "{-# OPTIONS -ddump-parsed-ast #-}")
@@ -379,9 +331,7 @@
   []
   [(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { Test20297.ppr.hs:(3,1)-(5,7) }
-                  (UnchangedAnchor))
+                 (EpaSpan { Test20297.ppr.hs:(3,1)-(5,7) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -402,9 +352,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:(3,1)-(5,7) })
           (Match
            (EpAnn
-            (Anchor
-             { Test20297.ppr.hs:(3,1)-(5,7) }
-             (UnchangedAnchor))
+            (EpaSpan { Test20297.ppr.hs:(3,1)-(5,7) })
             []
             (EpaComments
              []))
@@ -425,9 +373,7 @@
                { Test20297.ppr.hs:4:3-5 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { Test20297.ppr.hs:4:3-5 }
-                 (UnchangedAnchor))
+                (EpaSpan { Test20297.ppr.hs:4:3-5 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { Test20297.ppr.hs:4:3 })))
@@ -444,14 +390,10 @@
                    {OccName: x}))))))]
             (HsValBinds
              (EpAnn
-              (Anchor
-               { Test20297.ppr.hs:5:3-7 }
-               (UnchangedAnchor))
+              (EpaSpan { Test20297.ppr.hs:5:3-7 })
               (AnnList
                (Just
-                (Anchor
-                 { Test20297.ppr.hs:5:3-7 }
-                 (UnchangedAnchor)))
+                (EpaSpan { Test20297.ppr.hs:5:3-7 }))
                (Nothing)
                (Nothing)
                [(AddEpAnn AnnWhere (EpaSpan { Test20297.ppr.hs:5:3-7 }))]
@@ -465,9 +407,7 @@
               [])))))])))))
   ,(L
     (SrcSpanAnn (EpAnn
-                 (Anchor
-                  { Test20297.ppr.hs:(6,1)-(9,24) }
-                  (UnchangedAnchor))
+                 (EpaSpan { Test20297.ppr.hs:(6,1)-(9,24) })
                  (AnnListItem
                   [])
                  (EpaComments
@@ -488,9 +428,7 @@
           (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:(6,1)-(9,24) })
           (Match
            (EpAnn
-            (Anchor
-             { Test20297.ppr.hs:(6,1)-(9,24) }
-             (UnchangedAnchor))
+            (EpaSpan { Test20297.ppr.hs:(6,1)-(9,24) })
             []
             (EpaComments
              []))
@@ -511,9 +449,7 @@
                { Test20297.ppr.hs:7:3-5 })
               (GRHS
                (EpAnn
-                (Anchor
-                 { Test20297.ppr.hs:7:3-5 }
-                 (UnchangedAnchor))
+                (EpaSpan { Test20297.ppr.hs:7:3-5 })
                 (GrhsAnn
                  (Nothing)
                  (AddEpAnn AnnEqual (EpaSpan { Test20297.ppr.hs:7:3 })))
@@ -530,14 +466,10 @@
                    {OccName: x}))))))]
             (HsValBinds
              (EpAnn
-              (Anchor
-               { Test20297.ppr.hs:(8,3)-(9,24) }
-               (UnchangedAnchor))
+              (EpaSpan { Test20297.ppr.hs:(8,3)-(9,24) })
               (AnnList
                (Just
-                (Anchor
-                 { Test20297.ppr.hs:9:7-24 }
-                 (UnchangedAnchor)))
+                (EpaSpan { Test20297.ppr.hs:9:7-24 }))
                (Nothing)
                (Nothing)
                [(AddEpAnn AnnWhere (EpaSpan { Test20297.ppr.hs:8:3-7 }))]
@@ -549,9 +481,7 @@
               {Bag(LocatedA (HsBind GhcPs)):
                [(L
                  (SrcSpanAnn (EpAnn
-                              (Anchor
-                               { Test20297.ppr.hs:9:7-24 }
-                               (UnchangedAnchor))
+                              (EpaSpan { Test20297.ppr.hs:9:7-24 })
                               (AnnListItem
                                [])
                               (EpaComments
@@ -570,9 +500,7 @@
                       (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:7-24 })
                       (Match
                        (EpAnn
-                        (Anchor
-                         { Test20297.ppr.hs:9:7-24 }
-                         (UnchangedAnchor))
+                        (EpaSpan { Test20297.ppr.hs:9:7-24 })
                         []
                         (EpaComments
                          []))
@@ -593,9 +521,7 @@
                            { Test20297.ppr.hs:9:15-24 })
                           (GRHS
                            (EpAnn
-                            (Anchor
-                             { Test20297.ppr.hs:9:15-24 }
-                             (UnchangedAnchor))
+                            (EpaSpan { Test20297.ppr.hs:9:15-24 })
                             (GrhsAnn
                              (Nothing)
                              (AddEpAnn AnnEqual (EpaSpan { Test20297.ppr.hs:9:15 })))
@@ -606,14 +532,10 @@
                             (SrcSpanAnn (EpAnnNotUsed) { Test20297.ppr.hs:9:17-24 })
                             (HsDo
                              (EpAnn
-                              (Anchor
-                               { Test20297.ppr.hs:9:17-24 }
-                               (UnchangedAnchor))
+                              (EpaSpan { Test20297.ppr.hs:9:17-24 })
                               (AnnList
                                (Just
-                                (Anchor
-                                 { Test20297.ppr.hs:9:20-24 }
-                                 (UnchangedAnchor)))
+                                (EpaSpan { Test20297.ppr.hs:9:20-24 }))
                                (Nothing)
                                (Nothing)
                                [(AddEpAnn AnnDo (EpaSpan { Test20297.ppr.hs:9:17-18 }))]
@@ -624,14 +546,10 @@
                               (Nothing))
                              (L
                               (SrcSpanAnn (EpAnn
-                                           (Anchor
-                                            { Test20297.ppr.hs:9:20-24 }
-                                            (UnchangedAnchor))
+                                           (EpaSpan { Test20297.ppr.hs:9:20-24 })
                                            (AnnList
                                             (Just
-                                             (Anchor
-                                              { Test20297.ppr.hs:9:20-24 }
-                                              (UnchangedAnchor)))
+                                             (EpaSpan { Test20297.ppr.hs:9:20-24 }))
                                             (Nothing)
                                             (Nothing)
                                             []
diff --git a/utils/check-exact/ExactPrint.hs b/utils/check-exact/ExactPrint.hs
index add9eaf4fbd437ee78b214f62fe2adefd995f84b..f8852bbe2d26f4e8eb7a8009b901a285db8c1549 100644
--- a/utils/check-exact/ExactPrint.hs
+++ b/utils/check-exact/ExactPrint.hs
@@ -415,22 +415,22 @@ enterAnn (Entry anchor' trailing_anns cs flush canUpdateAnchor) a = do
   acceptSpan <- getAcceptSpan
   setAcceptSpan False
   case anchor' of
-    Anchor _ (MovedAnchor _ _) -> setAcceptSpan True
-    _                          -> return ()
+    EpaDelta _ _ -> setAcceptSpan True
+    _            -> return ()
   p <- getPosP
   pe0 <- getPriorEndD
   debugM $ "enterAnn:starting:(p,pe,anchor',a) =" ++ show (p, pe0, showAst anchor', astId a)
   debugM $ "enterAnn:anchor_op=" ++ showGhc (anchor_op anchor')
   prevAnchor <- getAnchorU
   let curAnchor = case anchor' of
-        Anchor r UnchangedAnchor -> r
+        EpaSpan r _ -> r
         _ -> prevAnchor
   debugM $ "enterAnn:(curAnchor):=" ++ show (rs2range curAnchor)
   case canUpdateAnchor of
     CanUpdateAnchor -> pushAppliedComments
     _ -> return ()
   case anchor' of
-    Anchor _ (MovedAnchor _ dcs) -> do
+    EpaDelta _ dcs -> do
       debugM $ "enterAnn:Printing comments:" ++ showGhc (priorComments cs)
       mapM_ printOneComment (concatMap tokComment $ priorComments cs)
       debugM $ "enterAnn:Printing EpaDelta comments:" ++ showGhc dcs
@@ -493,10 +493,10 @@ enterAnn (Entry anchor' trailing_anns cs flush canUpdateAnchor) a = do
   setExtraDP Nothing
   let edp = case med of
         Nothing -> edp''
-        Just (Anchor _ (MovedAnchor dp _)) -> dp
+        Just (EpaDelta dp _) -> dp
                    -- Replace original with desired one. Allows all
                    -- list entry values to be DP (1,0)
-        Just (Anchor r _) -> dp
+        Just (EpaSpan r _) -> dp
           where
             dp = adjustDeltaForOffset
                    off (ss2delta priorEndAfterComments r)
@@ -543,8 +543,8 @@ enterAnn (Entry anchor' trailing_anns cs flush canUpdateAnchor) a = do
   debugM $ "enterAnn:done:(p,pe,anchor,a) =" ++ show (p1, pe1, showAst anchor', astId a')
 
   case anchor' of
-    Anchor _ (MovedAnchor _ _) -> return ()
-    Anchor rss UnchangedAnchor -> do
+    EpaDelta _ _ -> return ()
+    EpaSpan rss _ -> do
       setAcceptSpan False
       setPriorEndD (snd $ rs2range rss)
 
@@ -560,7 +560,7 @@ enterAnn (Entry anchor' trailing_anns cs flush canUpdateAnchor) a = do
   trailing' <- markTrailing trailing_anns
 
   -- Update original anchor, comments based on the printing process
-  let newAchor = anchor' { anchor_op = MovedAnchor edp [] }
+  let newAchor = EpaDelta edp []
   let r = case canUpdateAnchor of
             CanUpdateAnchor -> setAnnotationAnchor a' newAchor trailing' (mkEpaComments (priorCs ++ postCs) [])
             CanUpdateAnchorOnly -> setAnnotationAnchor a' newAchor [] emptyComments
@@ -1409,13 +1409,13 @@ printOneComment c@(Comment _str loc _r _mo) = do
         debugM $ "printOneComment:pe=" ++ showGhc pe
         -- let dp = ss2delta pe (anchor loc)
         let dp = case loc of
-              Anchor r UnchangedAnchor -> ss2delta pe r
-              Anchor _ (MovedAnchor dp1 _) -> dp1
+              EpaSpan r _ -> ss2delta pe r
+              EpaDelta dp1 _ -> dp1
         debugM $ "printOneComment:(dp,pe,loc)=" ++ showGhc (dp,pe,loc)
         adjustDeltaForOffsetM dp
   mep <- getExtraDP
   dp' <- case mep of
-    Just (Anchor _ (MovedAnchor edp _)) -> do
+    Just (EpaDelta edp _) -> do
       debugM $ "printOneComment:edp=" ++ show edp
       adjustDeltaForOffsetM edp
     _ -> return dp
@@ -1430,29 +1430,27 @@ updateAndApplyComment :: (Monad m, Monoid w) => Comment -> DeltaPos -> EP w m ()
 updateAndApplyComment (Comment str anc pp mo) dp = do
   applyComment (Comment str anc' pp mo)
   where
-    anc' = anc { anchor_op = op}
-
     (r,c) = ss2posEnd pp
     dp'' = case anc of
-      Anchor _ (MovedAnchor dp1 _) -> dp1
-      Anchor la _ ->
+      EpaDelta dp1 _ -> dp1
+      EpaSpan la _ ->
            if r == 0
              then (ss2delta (r,c+0) la)
              else (ss2delta (r,c)   la)
     dp' = case anc of
-      Anchor r1 UnchangedAnchor ->
+      EpaSpan r1 _ ->
           if pp == r1
                  then dp
                  else dp''
       _ -> dp''
     op' = case dp' of
             SameLine n -> if n >= 0
-                            then MovedAnchor dp' []
-                            else MovedAnchor dp []
-            _ -> MovedAnchor dp' []
-    op = if str == "" && op' == MovedAnchor (SameLine 0) [] -- EOF comment
-           then MovedAnchor dp []
-           else MovedAnchor dp []
+                            then EpaDelta dp' []
+                            else EpaDelta dp []
+            _ -> EpaDelta dp' []
+    anc' = if str == "" && op' == EpaDelta (SameLine 0) [] -- EOF comment
+           then EpaDelta dp []
+           else EpaDelta dp []
 
 -- ---------------------------------------------------------------------
 
@@ -1465,7 +1463,7 @@ commentAllocationBefore ss = do
   -- TODO: this is inefficient, use Pos all the way through
   let (earlier,later) = partition (\(Comment _str loc _r _mo) ->
                                      case loc of
-                                       Anchor r UnchangedAnchor -> (ss2pos r) <= (ss2pos ss)
+                                       EpaSpan r _ -> (ss2pos r) <= (ss2pos ss)
                                        _ -> True -- Choose one
                                   ) cs
   putUnallocatedComments later
@@ -1481,7 +1479,7 @@ commentAllocationIn ss = do
   -- TODO: this is inefficient, use Pos all the way through
   let (earlier,later) = partition (\(Comment _str loc _r _mo) ->
                                      case loc of
-                                       Anchor r UnchangedAnchor -> (ss2posEnd r) <= (ss2posEnd ss)
+                                       EpaSpan r _ -> (ss2posEnd r) <= (ss2posEnd ss)
                                        _ -> True -- Choose one
                                   ) cs
   putUnallocatedComments later
@@ -4383,7 +4381,7 @@ printUnicode anc n = do
   loc <- printStringAtAAC NoCaptureComments (EpaDelta (SameLine 0) []) str
   case loc of
     EpaSpan _ _ -> return anc
-    EpaDelta dp [] -> return anc { anchor_op = MovedAnchor dp [] }
+    EpaDelta dp [] -> return $ EpaDelta dp []
     EpaDelta _ _cs -> error "printUnicode should not capture comments"
 
 
@@ -4833,9 +4831,9 @@ instance ExactPrint (Pat GhcPs) where
   setAnnotationAnchor a@(EmbTyPat _ _ _)           _ _ _s = a
 
   exact (WildPat w) = do
-    anchor <- getAnchorU
-    debugM $ "WildPat:anchor=" ++ show anchor
-    _ <- printStringAtRs anchor "_"
+    anchor' <- getAnchorU
+    debugM $ "WildPat:anchor'=" ++ show anchor'
+    _ <- printStringAtRs anchor' "_"
     return (WildPat w)
   exact (VarPat x n) = do
     -- The parser inserts a placeholder value for a record pun rhs. This must be
diff --git a/utils/check-exact/Main.hs b/utils/check-exact/Main.hs
index be550111cc5849be2674565165832975754d3c67..19d2b027c7e072f898420e5ae77667c32b1e26be 100644
--- a/utils/check-exact/Main.hs
+++ b/utils/check-exact/Main.hs
@@ -80,6 +80,7 @@ _tt = testOneFile changers "/home/alanz/mysrc/git.haskell.org/worktree/master/_b
  -- "../../testsuite/tests/ghc-api/exactprint/AddHiding1.hs" (Just addHiding1)
  -- "../../testsuite/tests/ghc-api/exactprint/AddHiding2.hs" (Just addHiding2)
  -- "../../testsuite/tests/ghc-api/exactprint/AddClassMethod.hs" (Just addClassMethod)
+ -- "../../testsuite/tests/ghc-api/exactprint/Haddock2.hs" Nothing
  -- "../../testsuite/tests/ghc-api/annotations/CommentsTest.hs" Nothing
  -- "../../testsuite/tests/hiefile/should_compile/Constructors.hs" Nothing
  -- "../../testsuite/tests/hiefile/should_compile/Scopes.hs" Nothing
@@ -448,7 +449,7 @@ changeLetIn1 _libdir parsed
              [l2,_l1] = map wrapDecl $ bagToList bagDecls
              bagDecls' = listToBag $ concatMap decl2Bind [l2]
              (L (SrcSpanAnn _ le) e) = expr
-             a = (SrcSpanAnn (EpAnn (Anchor (realSrcSpan le) (MovedAnchor (SameLine 1) [])) noAnn emptyComments) le)
+             a = (SrcSpanAnn (EpAnn (EpaDelta (SameLine 1) []) noAnn emptyComments) le)
              expr' = L a e
              tkIn' = L (TokenLoc (EpaDelta (DifferentLine 1 0) [])) HsTok
          in (HsLet an tkLet
@@ -521,8 +522,10 @@ changeLocalDecls libdir (L l p) = do
             (os:oldSigs) = concatMap decl2Sig  oldDecls'
             os' = setEntryDP os (DifferentLine 2 0)
         let sortKey = captureOrderBinds decls
-        let (EpAnn anc (AnnList (Just (Anchor anc2 _)) a b c dd) cs) = van
-        let van' = (EpAnn anc (AnnList (Just (Anchor anc2 (MovedAnchor (DifferentLine 1 5) []))) a b c dd) cs)
+        let (EpAnn anc (AnnList (Just _) a b c dd) cs) = van
+        let van' = (EpAnn anc (AnnList (Just (EpaDelta (DifferentLine 1 5) [])) a b c dd) cs)
+        -- let (EpAnn anc (AnnList (Just _) a b c dd) cs) = van
+        -- let van' = (EpAnn anc (AnnList (Just (EpaDelta (DifferentLine 1 5) [])) a b c dd) cs)
         let binds' = (HsValBinds van'
                           (ValBinds sortKey (listToBag $ decl':oldBinds)
                                           (sig':os':oldSigs)))
@@ -546,9 +549,8 @@ changeLocalDecls2 libdir (L l p) = do
       replaceLocalBinds :: LMatch GhcPs (LHsExpr GhcPs)
                         -> Transform (LMatch GhcPs (LHsExpr GhcPs))
       replaceLocalBinds (L lm (Match ma mln pats (GRHSs _ rhs EmptyLocalBinds{}))) = do
-        newSpan <- uniqueSrcSpanT
-        let anc = (Anchor (rs newSpan) (MovedAnchor (DifferentLine 1 3) []))
-        let anc2 = (Anchor (rs newSpan) (MovedAnchor (DifferentLine 1 5) []))
+        let anc = (EpaDelta (DifferentLine 1 3) [])
+        let anc2 = (EpaDelta (DifferentLine 1 5) [])
         let an = EpAnn anc
                         (AnnList (Just anc2) Nothing Nothing
                                  [AddEpAnn AnnWhere (EpaDelta (SameLine 0) [])] [])
@@ -902,7 +904,7 @@ addHiding1 _libdir (L l p) = do
           n2 = L (noAnnSrcSpanDP0 l2) (mkVarUnqual (mkFastString "n2"))
           v1 = L (addComma $ noAnnSrcSpanDP0 l1) (IEVar Nothing (L (noAnnSrcSpanDP0 l1) (IEName noExtField n1)))
           v2 = L (           noAnnSrcSpanDP0 l2) (IEVar Nothing (L (noAnnSrcSpanDP0 l2) (IEName noExtField n2)))
-          impHiding = L (SrcSpanAnn (EpAnn (Anchor (realSrcSpan l0) m0)
+          impHiding = L (SrcSpanAnn (EpAnn d0
                                      (AnnList Nothing
                                               (Just (AddEpAnn AnnOpenP  d1))
                                               (Just (AddEpAnn AnnCloseP d0))
@@ -929,7 +931,7 @@ addHiding2 _libdir top = do
         let
           [L li imp1] = hsmodImports p
           Just (_,L lh ns) = ideclImportList imp1
-          lh' = (SrcSpanAnn (EpAnn (Anchor (realSrcSpan (locA lh)) m0)
+          lh' = (SrcSpanAnn (EpAnn d0
                                      (AnnList Nothing
                                               (Just (AddEpAnn AnnOpenP  d1))
                                               (Just (AddEpAnn AnnCloseP d0))
diff --git a/utils/check-exact/Transform.hs b/utils/check-exact/Transform.hs
index 045b585763fdeba3ce363ffe6e3795dc0442fbc7..8e25227f7699e5910274ec6f67474ea408c795e2 100644
--- a/utils/check-exact/Transform.hs
+++ b/utils/check-exact/Transform.hs
@@ -95,6 +95,7 @@ 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
@@ -231,18 +232,18 @@ captureTypeSigSpacing (L l (SigD x (TypeSig (EpAnn anc (AnnSig dc rs') cs) ns (H
     ty' = case ty of
       (L (SrcSpanAnn EpAnnNotUsed    ll) b)
         -> let
-             op = case dca of
-               EpaSpan r _ -> MovedAnchor (ss2delta (ss2posEnd r) (realSrcSpan ll)) []
-               EpaDelta _ cs0 -> MovedAnchor (SameLine 1) cs0
-           in (L (SrcSpanAnn (EpAnn (Anchor (realSrcSpan ll) op) noAnn emptyComments) ll) b)
-      (L (SrcSpanAnn (EpAnn (Anchor r op) a c) ll) b)
+             anc0 = case dca of
+               EpaSpan r _ -> EpaDelta (ss2delta (ss2posEnd r) (realSrcSpan ll)) []
+               EpaDelta _ cs0 -> EpaDelta (SameLine 1) cs0
+           in (L (SrcSpanAnn (EpAnn anc0 noAnn emptyComments) ll) b)
+      (L (SrcSpanAnn (EpAnn anc0 a c) ll) b)
         -> let
-              op' = case op of
-                MovedAnchor _ _ -> op
+              anc' = case anc0 of
+                EpaDelta _ _ -> anc0
                 _ -> case dca of
-                  EpaSpan _ _    -> MovedAnchor (SameLine 1) []
-                  EpaDelta _ cs0 -> MovedAnchor (SameLine 1) cs0
-           in (L (SrcSpanAnn (EpAnn (Anchor r op') a c) ll) b)
+                  EpaSpan _ _ -> EpaDelta (SameLine 1) []
+                  EpaDelta _ cs0 -> EpaDelta (SameLine 1) cs0
+           in (L (SrcSpanAnn (EpAnn anc' a c) ll) b)
 
 captureTypeSigSpacing s = s
 
@@ -266,15 +267,15 @@ setEntryDPDecl d dp = setEntryDP d dp
 setEntryDP :: NoAnn t => LocatedAn t a -> DeltaPos -> LocatedAn t a
 setEntryDP (L (SrcSpanAnn EpAnnNotUsed l) a) dp
   = L (SrcSpanAnn
-           (EpAnn (Anchor (realSrcSpan l) (MovedAnchor dp [])) noAnn emptyComments)
+           (EpAnn (EpaDelta dp []) noAnn emptyComments)
            l) a
-setEntryDP (L (SrcSpanAnn (EpAnn (Anchor r UnchangedAnchor) an (EpaComments [])) l) a) dp
+setEntryDP (L (SrcSpanAnn (EpAnn (EpaSpan _ _) an (EpaComments [])) l) a) dp
   = L (SrcSpanAnn
-           (EpAnn (Anchor r (MovedAnchor dp [])) an (EpaComments []))
+           (EpAnn (EpaDelta dp []) an (EpaComments []))
            l) a
-setEntryDP (L (SrcSpanAnn (EpAnn (Anchor r (MovedAnchor d csd)) an cs) l) a) dp
+setEntryDP (L (SrcSpanAnn (EpAnn (EpaDelta d csd) an cs) l) a) dp
   = L (SrcSpanAnn
-           (EpAnn (Anchor r (MovedAnchor d' csd')) an cs')
+           (EpAnn (EpaDelta d' csd') an cs')
            l) a
   where
     (d', csd', cs') = case cs of
@@ -298,27 +299,31 @@ setEntryDP (L (SrcSpanAnn (EpAnn (Anchor r (MovedAnchor d csd)) an cs) l) a) dp
                   (dp0,c') = go h
                 in
                   (dp0, c':t, EpaCommentsBalanced [] ts)
-    go (L (Anchor rr (MovedAnchor _ c0)) c) = (d,  L (Anchor rr (MovedAnchor dp c0)) c)
-    go (L (Anchor rr                  _) c) = (d,  L (Anchor rr (MovedAnchor dp [])) c)
-setEntryDP (L (SrcSpanAnn (EpAnn (Anchor r UnchangedAnchor) an cs) l) a) dp
+    go (L (EpaDelta _ c0) c) = (d,  L (EpaDelta dp c0) c)
+    go (L (EpaSpan _ _)   c) = (d,  L (EpaDelta dp []) c)
+setEntryDP (L (SrcSpanAnn (EpAnn (EpaSpan r _) an cs) l) a) dp
   = case sortEpaComments (priorComments cs) of
       [] ->
         L (SrcSpanAnn
-               (EpAnn (Anchor r (MovedAnchor dp [])) an cs)
+               (EpAnn (EpaDelta dp []) an cs)
                l) a
       (L ca c:cs') ->
         L (SrcSpanAnn
-               (EpAnn (Anchor r (MovedAnchor edp csd)) an cs'')
+               (EpAnn (EpaDelta edp csd) an cs'')
                l) a
               where
                 cs'' = setPriorComments cs []
-                csd = L (Anchor (anchor ca) (MovedAnchor dp [])) c:cs'
-                lc = case reverse $ (L ca c:cs') of
-                       ll:_ -> ll
-                       _ -> error "setEntryDP"
+                csd = L (EpaDelta dp []) c:cs'
+                lc = last $ (L ca c:cs')
                 delta = case getLoc lc of
-                          Anchor rr UnchangedAnchor -> ss2delta (ss2pos rr) r
-                          Anchor _ (MovedAnchor _dp _) -> DifferentLine 1 0
+                          EpaSpan rr _ -> ss2delta (ss2pos rr) r
+                          EpaDelta _dp _ -> DifferentLine 1 0
+                -- cs'' = setPriorComments cs (L (EpaDelta dp []) c:cs')
+                -- lc = head $ reverse $ (L ca c:cs')
+                -- delta = case getLoc lc of
+                --           EpaSpan (RealSrcSpan rr _) -> ss2delta (ss2pos rr) r
+                --           EpaSpan _ -> (SameLine 0)
+                --           EpaDelta dp _ -> dp
                 line = getDeltaLine delta
                 col = deltaColumn delta
                 edp' = if line == 0 then SameLine col
@@ -329,7 +334,7 @@ setEntryDP (L (SrcSpanAnn (EpAnn (Anchor r UnchangedAnchor) an cs) l) a) dp
 -- ---------------------------------------------------------------------
 
 getEntryDP :: LocatedAn t a -> DeltaPos
-getEntryDP (L (SrcSpanAnn (EpAnn (Anchor _ (MovedAnchor dp _)) _ _) _) _) = dp
+getEntryDP (L (SrcSpanAnn (EpAnn (EpaDelta dp _) _ _) _) _) = dp
 getEntryDP _ = SameLine 1
 
 -- ---------------------------------------------------------------------
@@ -346,8 +351,8 @@ setEntryDPFromAnchor  off (EpaSpan anc _) ll@(L la _) = setEntryDP ll dp'
   where
     dp' = case la of
       (SrcSpanAnn EpAnnNotUsed l) -> adjustDeltaForOffset off (ss2deltaEnd anc (realSrcSpan l))
-      (SrcSpanAnn (EpAnn (Anchor r' UnchangedAnchor) _ _) _) -> adjustDeltaForOffset off (ss2deltaEnd anc r')
-      (SrcSpanAnn (EpAnn (Anchor _  (MovedAnchor dp _)) _ _) _) -> adjustDeltaForOffset off dp
+      (SrcSpanAnn (EpAnn (EpaSpan r' _) _ _) _) -> adjustDeltaForOffset off (ss2deltaEnd anc r')
+      (SrcSpanAnn (EpAnn (EpaDelta dp _) _ _) _) -> adjustDeltaForOffset off dp
 
 -- ---------------------------------------------------------------------
 
@@ -376,8 +381,8 @@ transferEntryDP (L (SrcSpanAnn EpAnnNotUsed _l1) _) (L (SrcSpanAnn (EpAnn anc2 a
   return (L (SrcSpanAnn (EpAnn anc2' an2 cs2) l2) b)
     where
       anc2' = case anc2 of
-        Anchor _ (MovedAnchor _ _) -> anc2
-        Anchor _a UnchangedAnchor -> Anchor (realSrcSpan l2) UnchangedAnchor
+        EpaDelta _ _ -> anc2
+        EpaSpan _ _ -> EpaSpan (realSrcSpan l2) Strict.Nothing
 
 
 -- |If a and b are the same type return first arg, else return second
@@ -592,7 +597,7 @@ balanceComments' la1 la2 = do
 trailingCommentsDeltas :: RealSrcSpan -> [LEpaComment]
                -> [(Int, LEpaComment)]
 trailingCommentsDeltas _ [] = []
-trailingCommentsDeltas r (la@(L (Anchor _ (MovedAnchor dp _)) _):las)
+trailingCommentsDeltas r (la@(L (EpaDelta dp _) _):las)
   = (getDeltaLine dp, la): trailingCommentsDeltas r las
 trailingCommentsDeltas r (la@(L l _):las)
   = deltaComment r la : trailingCommentsDeltas (anchor l) las
@@ -609,8 +614,8 @@ priorCommentsDeltas r cs = go r (reverse $ sortEpaComments cs)
   where
     go :: RealSrcSpan -> [LEpaComment] -> [(Int, LEpaComment)]
     go _ [] = []
-    go _rs' (la@(L l@(Anchor _ (MovedAnchor dp _)) _):las) = (deltaLine dp, la) : go (anchor l) las
-    go rs'  (la@(L l _):las) = deltaComment rs' la : go (anchor l) las
+    go _   (la@(L l@(EpaDelta dp _) _):las) = (deltaLine dp, la) : go (anchor l) las
+    go rs' (la@(L l _):las) = deltaComment rs' la : go (anchor l) las
 
     deltaComment :: RealSrcSpan -> LEpaComment -> (Int, LEpaComment)
     deltaComment rs' (L loc c) = (abs(ll - al), L loc c)
@@ -626,7 +631,7 @@ priorCommentsDeltas r cs = go r (reverse $ sortEpaComments cs)
 splitCommentsEnd :: RealSrcSpan -> EpAnnComments -> EpAnnComments
 splitCommentsEnd p (EpaComments cs) = cs'
   where
-    cmp (L (Anchor l UnchangedAnchor) _) = ss2pos l > ss2posEnd p
+    cmp (L (EpaSpan l _) _) = ss2pos l > ss2posEnd p
     cmp (L _ _) = True
     (before, after) = break cmp cs
     cs' = case after of
@@ -634,7 +639,7 @@ splitCommentsEnd p (EpaComments cs) = cs'
       _ -> EpaCommentsBalanced before after
 splitCommentsEnd p (EpaCommentsBalanced cs ts) = EpaCommentsBalanced cs' ts'
   where
-    cmp (L (Anchor l UnchangedAnchor) _) = ss2pos l > ss2posEnd p
+    cmp (L (EpaSpan l _) _) = ss2pos l > ss2posEnd p
     cmp (L _ _) = True
     (before, after) = break cmp cs
     cs' = before
@@ -645,7 +650,7 @@ splitCommentsEnd p (EpaCommentsBalanced cs ts) = EpaCommentsBalanced cs' ts'
 splitCommentsStart :: RealSrcSpan -> EpAnnComments -> EpAnnComments
 splitCommentsStart p (EpaComments cs) = cs'
   where
-    cmp (L (Anchor l UnchangedAnchor) _) = ss2pos l > ss2posEnd p
+    cmp (L (EpaSpan l _) _) = ss2pos l > ss2posEnd p
     cmp (L _ _) = True
     (before, after) = break cmp cs
     cs' = case after of
@@ -653,7 +658,7 @@ splitCommentsStart p (EpaComments cs) = cs'
       _ -> EpaCommentsBalanced before after
 splitCommentsStart p (EpaCommentsBalanced cs ts) = EpaCommentsBalanced cs' ts'
   where
-    cmp (L (Anchor l UnchangedAnchor) _) = ss2pos l > ss2posEnd p
+    cmp (L (EpaSpan l _) _) = ss2pos l > ss2posEnd p
     cmp (L _ _) = True
     (before, after) = break cmp cs
     cs' = before
@@ -746,7 +751,7 @@ anchorEof (L l m@(HsModule (XModulePs an _lo _ _) _mn _exps _imps _decls)) = L l
 -- given @DeltaPos@.
 noAnnSrcSpanDP :: (NoAnn ann) => SrcSpan -> DeltaPos -> SrcSpanAnn' (EpAnn ann)
 noAnnSrcSpanDP l dp
-  = SrcSpanAnn (EpAnn (Anchor (realSrcSpan l) (MovedAnchor dp [])) noAnn emptyComments) l
+  = SrcSpanAnn (EpAnn (EpaDelta dp []) noAnn emptyComments) l
 
 noAnnSrcSpanDP0 :: (NoAnn ann) => SrcSpan -> SrcSpanAnn' (EpAnn ann)
 noAnnSrcSpanDP0 l = noAnnSrcSpanDP l (SameLine 0)
@@ -1143,14 +1148,12 @@ replaceDeclsValbinds w (EmptyLocalBinds _) new
 oldWhereAnnotation :: (Monad m)
   => EpAnn AnnList -> WithWhere -> RealSrcSpan -> TransformT m (EpAnn AnnList)
 oldWhereAnnotation EpAnnNotUsed ww _oldSpan = do
-  newSpan <- uniqueSrcSpanT
   let w = case ww of
         WithWhere -> [AddEpAnn AnnWhere (EpaDelta (SameLine 0) [])]
         WithoutWhere -> []
-  let anc2' = Anchor (rs newSpan) (MovedAnchor (SameLine 1) [])
+  let anc2' = EpaDelta (SameLine 1) []
   (anc, anc2) <- do
-          newSpan' <- uniqueSrcSpanT
-          return ( Anchor (rs newSpan') (MovedAnchor (DifferentLine 1 2) [])
+          return ( EpaDelta (DifferentLine 1 2) []
                  , anc2')
   let an = EpAnn anc
                   (AnnList (Just anc2) Nothing Nothing w [])
@@ -1173,9 +1176,8 @@ oldWhereAnnotation (EpAnn anc an cs) ww _oldSpan = do
 
 newWhereAnnotation :: (Monad m) => WithWhere -> TransformT m (EpAnn AnnList)
 newWhereAnnotation ww = do
-  newSpan <- uniqueSrcSpanT
-  let anc  = Anchor (rs newSpan) (MovedAnchor (DifferentLine 1 3) [])
-  let anc2 = Anchor (rs newSpan) (MovedAnchor (DifferentLine 1 5) [])
+  let anc  = EpaDelta (DifferentLine 1 3) []
+  let anc2 = EpaDelta (DifferentLine 1 5) []
   let w = case ww of
         WithWhere -> [AddEpAnn AnnWhere (EpaDelta (SameLine 0) [])]
         WithoutWhere -> []
diff --git a/utils/check-exact/Utils.hs b/utils/check-exact/Utils.hs
index 5b868d71136a25119357c6a4c5457a32d9e24e78..0abe8b0ca845ad9e00f3c468545368e108c68bc4 100644
--- a/utils/check-exact/Utils.hs
+++ b/utils/check-exact/Utils.hs
@@ -123,9 +123,9 @@ undelta (l,_) (DifferentLine dl dc) (LayoutStartCol co) = (fl,fc)
     fc = co + dc
 
 undeltaSpan :: RealSrcSpan -> AnnKeywordId -> DeltaPos -> AddEpAnn
-undeltaSpan anchor kw dp = AddEpAnn kw (EpaSpan sp Strict.Nothing)
+undeltaSpan anc kw dp = AddEpAnn kw (EpaSpan sp Strict.Nothing)
   where
-    (l,c) = undelta (ss2pos anchor) dp (LayoutStartCol 0)
+    (l,c) = undelta (ss2pos anc) dp (LayoutStartCol 0)
     len = length (keywordToString kw)
     sp = range2rs ((l,c),(l,c+len))
 
@@ -186,15 +186,16 @@ isPointSrcSpan ss = spanLength ss == 0
 -- `MovedAnchor` operation based on the original location, only if it
 -- does not already have one.
 commentOrigDelta :: LEpaComment -> LEpaComment
-commentOrigDelta (L (GHC.Anchor la _) (GHC.EpaComment t pp))
-  = (L (GHC.Anchor la op) (GHC.EpaComment t pp))
-                  `debug` ("commentOrigDelta: (la, pp, r,c, op)=" ++ showAst (la, pp, r,c, op))
+commentOrigDelta (L (EpaSpan la _) (GHC.EpaComment t pp))
+  = (L (EpaDelta dp []) (GHC.EpaComment t pp))
+                  `debug` ("commentOrigDelta: (la, pp, r,c, dp)=" ++ showAst (la, pp, r,c, dp))
   where
         (r,c) = ss2posEnd pp
 
-        op = if r == 0
-               then MovedAnchor (ss2delta (r,c+1) la) []
-               else MovedAnchor (ss2delta (r,c)   la) []
+        dp = if r == 0
+               then (ss2delta (r,c+1) la)
+               else (ss2delta (r,c)   la)
+commentOrigDelta c = c
 
 origDelta :: RealSrcSpan -> RealSrcSpan -> DeltaPos
 origDelta pos pp = ss2delta (ss2posEnd pp) pos
@@ -239,7 +240,7 @@ insertCppComments (L l p) cs = L l p'
             (L ac _:_) -> EpaCommentsBalanced (sortEpaComments $ pc ++ cs_before)
                                               (sortEpaComments $ fc ++ cs_after)
                    where
-                     (cs_before,cs_after) = break (\(L l0 _) ->   (ss2pos $ anchor l0) < (ss2pos $ anchor ac) ) cs
+                     (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' } }
 
@@ -330,10 +331,10 @@ sortEpaComments cs = sortBy cmp cs
 
 -- | Makes a comment which originates from a specific keyword.
 mkKWComment :: AnnKeywordId -> EpaLocation -> Comment
-mkKWComment kw (EpaSpan ss _)
-  = Comment (keywordToString kw) (Anchor ss UnchangedAnchor) ss (Just kw)
+mkKWComment kw (EpaSpan ss mb)
+  = Comment (keywordToString kw) (EpaSpan ss mb) ss (Just kw)
 mkKWComment kw (EpaDelta dp cs)
-  = Comment (keywordToString kw) (Anchor placeholderRealSpan (MovedAnchor dp cs)) placeholderRealSpan (Just kw)
+  = Comment (keywordToString kw) (EpaDelta dp cs) placeholderRealSpan (Just kw)
 
 -- | Detects a comment which originates from a specific keyword.
 isKWComment :: Comment -> Bool
@@ -412,10 +413,9 @@ addEpAnnLoc (AddEpAnn _ l) = l
 
 -- ---------------------------------------------------------------------
 
--- TODO: move this to GHC
+-- TODO: get rid of this identity function
 anchorToEpaLocation :: Anchor -> EpaLocation
-anchorToEpaLocation (Anchor r UnchangedAnchor) = EpaSpan r Strict.Nothing
-anchorToEpaLocation (Anchor _ (MovedAnchor dp cs)) = EpaDelta dp cs
+anchorToEpaLocation a = a
 
 -- ---------------------------------------------------------------------
 -- Horrible hack for dealing with some things still having a SrcSpan,
@@ -444,21 +444,16 @@ To be absolutely sure, we make the delta versions use -ve values.
 
 hackSrcSpanToAnchor :: SrcSpan -> Anchor
 hackSrcSpanToAnchor (UnhelpfulSpan s) = error $ "hackSrcSpanToAnchor : UnhelpfulSpan:" ++ show s
-hackSrcSpanToAnchor (RealSrcSpan r Strict.Nothing) = Anchor r UnchangedAnchor
-hackSrcSpanToAnchor (RealSrcSpan r (Strict.Just (BufSpan (BufPos s) (BufPos e))))
+hackSrcSpanToAnchor (RealSrcSpan r Strict.Nothing) = EpaSpan r Strict.Nothing
+hackSrcSpanToAnchor (RealSrcSpan r mb@(Strict.Just (BufSpan (BufPos s) (BufPos e))))
   = if s <= 0 && e <= 0
-    then Anchor r (MovedAnchor (deltaPos (-s) (-e)) [])
+    then EpaDelta (deltaPos (-s) (-e)) []
       `debug` ("hackSrcSpanToAnchor: (r,s,e)=" ++ showAst (r,s,e) )
-    else Anchor r UnchangedAnchor
+    else EpaSpan r mb
 
 hackAnchorToSrcSpan :: Anchor -> SrcSpan
-hackAnchorToSrcSpan (Anchor r UnchangedAnchor) = RealSrcSpan r Strict.Nothing
-hackAnchorToSrcSpan (Anchor r (MovedAnchor dp _cs))
-  = RealSrcSpan r (Strict.Just (BufSpan (BufPos s) (BufPos e)))
-      `debug` ("hackAnchorToSrcSpan: (r,dp,s,e)=" ++ showAst (r,dp,s,e) )
-  where
-    s = - (getDeltaLine dp)
-    e = - (deltaColumn dp)
+hackAnchorToSrcSpan (EpaSpan r mb) = RealSrcSpan r mb
+hackAnchorToSrcSpan _ = error $ "hackAnchorToSrcSpan"
 
 -- ---------------------------------------------------------------------
 
diff --git a/utils/haddock b/utils/haddock
index 2cbf7f0a55898e0c2827ae9ad13727b34877e793..be2d1628c23dc2eca39b82a8b4909cca1a3925d9 160000
--- a/utils/haddock
+++ b/utils/haddock
@@ -1 +1 @@
-Subproject commit 2cbf7f0a55898e0c2827ae9ad13727b34877e793
+Subproject commit be2d1628c23dc2eca39b82a8b4909cca1a3925d9