result1 =
  runEitherT $
  do i <- EitherT (parseOnly (parser `sepBy` endOfLine) <$> input)
     -- let s = "abcde"
     let s = "abcdefgh"
     pure (foldl' update s i)
result1 =
  runEitherT $
  do i <- EitherT (parseOnly (parser `sepBy` endOfLine) <$> input)
     -- let s = "abcde"
     let s = "abcdefgh"
     pure (foldl' update s i)
result1 =
  runEitherT $
  do i <- EitherT (parseOnly (parser `sepBy` endOfLine) <$> input)
     -- let s = "abcde"
     let s = "abcdefgh"
     pure (foldl' update s i)