@NotNull
  public static List<MergeRange> merge(@NotNull List<? extends CharSequence> lines1,
                                       @NotNull List<? extends CharSequence> lines2,
                                       @NotNull List<? extends CharSequence> lines3,
                                       @NotNull ComparisonPolicy policy,
                                       @NotNull CancellationChecker indicator) {
    indicator.checkCanceled();
    return doCompare(getLines(lines1, policy), getLines(lines2, policy), getLines(lines3, policy), policy, indicator, true);
  }
@NotNull
  public static List<MergeRange> merge(@NotNull List<? extends CharSequence> lines1,
                                       @NotNull List<? extends CharSequence> lines2,
                                       @NotNull List<? extends CharSequence> lines3,
                                       @NotNull ComparisonPolicy policy,
                                       @NotNull CancellationChecker indicator)