@NotNull
  static List<MergeRange> buildMerge(@NotNull FairDiffIterable fragments1,
                                     @NotNull FairDiffIterable fragments2,
                                     @NotNull SideEquality trueEquality,
                                     @NotNull CancellationChecker indicator) {
    assert fragments1.getLength1() == fragments2.getLength1();
    return new FairMergeBuilder(trueEquality).execute(fragments1, fragments2);
  }
@NotNull
  static List<MergeRange> buildMerge(@NotNull FairDiffIterable fragments1,
                                     @NotNull FairDiffIterable fragments2,
                                     @NotNull SideEquality trueEquality,
                                     @NotNull CancellationChecker indicator)