newLit :: Encoder Int
newLit = lift $ do
  n <- get
  put (n+1)
  return (n+1)
newLit :: Encoder Int
newLit = lift $ do
  n <- get
  put (n+1)
  return (n+1)
newLit = lift $ do
  n <- get
  put (n+1)
  return (n+1)