@NotNull
  @Override
  protected List<List<LineFragment>> doCompare(@NotNull CharSequence text1,
                                               @NotNull CharSequence text2,
                                               @NotNull LineOffsets lineOffsets1,
                                               @NotNull LineOffsets lineOffsets2,
                                               @Nullable List<? extends Range> linesRanges,
                                               @NotNull IgnorePolicy ignorePolicy,
                                               @NotNull HighlightPolicy highlightPolicy,
                                               @NotNull ProgressIndicator indicator) {
    if (ignorePolicy == FORMATTING) {
      return compareIgnoreFormatting(text1, text2, lineOffsets1, lineOffsets2, linesRanges, highlightPolicy, indicator);
    }
    else {
      return SimpleTextDiffProvider.compareRange(null, text1, text2, lineOffsets1, lineOffsets2, linesRanges,
                                                 ignorePolicy, highlightPolicy, indicator);
    }
  }
@NotNull
  @Override
  protected List<List<LineFragment>> doCompare(@NotNull CharSequence text1,
                                               @NotNull CharSequence text2,
                                               @NotNull LineOffsets lineOffsets1,
                                               @NotNull LineOffsets lineOffsets2,
                                               @Nullable List<? extends Range> linesRanges,
                                               @NotNull IgnorePolicy ignorePolicy,
                                               @NotNull HighlightPolicy highlightPolicy,
                                               @NotNull ProgressIndicator indicator)