@NotNull
  public static <T> FairDiffIterable diff(T @NotNull [] data1, T @NotNull [] data2, @NotNull ProgressIndicator indicator)
    throws DiffTooBigException {
    return DiffIterableUtil.diff(data1, data2, new IndicatorCancellationChecker(indicator));
  }
@NotNull
  public static <T> FairDiffIterable diff(T @NotNull [] data1, T @NotNull [] data2, @NotNull ProgressIndicator indicator)