void (int start1, int end1, int start2, int end2) { CharSequence inner1 = myText1.subSequence(start1, end1); CharSequence inner2 = myText2.subSequence(start2, end2); FairDiffIterable innerChanges = ByCharRt.compare(inner1, inner2, myIndicator); for (Range chunk : innerChanges.iterateUnchanged()) { myBuilder.markEqual(start1 + chunk.start1, start2 + chunk.start2, chunk.end1 - chunk.start1); } }