@Contract(pure = true)
  default @NotNull @NlsSafe String getText(@NotNull TextRange range) {
    return range.substring(getText());
  }
@Contract(pure = true)
  default @NotNull @NlsSafe String getText(@NotNull TextRange range)