@CanIgnoreReturnValue
  public Replacements add(Replacement replacement) {
    return add(replacement, CoalescePolicy.REJECT);
  }
@Test
  public void zeroLengthRangeOverlaps() {
    Replacements replacements = new Replacements();
    replacements.add(Replacement.create(1, 1, "Something"));
    Replacement around = Replacement.create(0, 2, "Around");
    assertThrows(IllegalArgumentException.class, () -> replacements.add(around));
  }