@NotNull
  @Override
  protected ChangeIterable createChangeIterable() {
    return new SubiterableChangeIterable(myChanged, myStart1, myEnd1, myStart2, myEnd2, myFirstIndex);
  }
@NotNull
  @Override
  protected ChangeIterable createChangeIterable()