code: public CharacterHit offset(int offsetAmount) {
          return new CharacterHit(
                  charIdx.isPresent()
                          ? OptionalInt.of(charIdx.getAsInt() + offsetAmount)
                          : charIdx,
                  insertionIndex + offsetAmount);
      }
docs: Offsets the values stored in this {@link CharacterHit} by the given amount