@Contract(value = "_, _ -> new", pure = true)
  public static @NotNull StringOperation replace(@NotNull TextRange range, @NotNull CharSequence replacement) {
    return new StringOperation(range, replacement);
  }
@Contract(value = "_, _ -> new", pure = true)
  public static @NotNull StringOperation replace(@NotNull TextRange range, @NotNull CharSequence replacement)