@NotNull
    public DiffIterable build() {
      for (Range range : myIterable.iterateChanges()) {
        int endCut = expandWhitespacesBackward(myText1, myText2,
                                               range.start1, range.start2,
                                               range.end1, range.end2);
        int startCut = expandWhitespacesForward(myText1, myText2,
                                                range.start1, range.start2,
                                                range.end1 - endCut, range.end2 - endCut);

        Range expand = new Range(range.start1 + startCut, range.end1 - endCut, range.start2 + startCut, range.end2 - endCut);

        if (!expand.isEmpty()) {
          myChanges.add(expand);
        }
      }

      return create(myChanges, myText1.length(), myText2.length());
    }
@NotNull
    public DiffIterable build()