anchor.diff:      final prefix = text.substring(max(0, patch.start2 - padding),
           patch.start2);
       if (!prefix.isEmpty) {
  -      patch.diffs.insertRange(0, 1, new Diff(DIFF_EQUAL, prefix));
  +      patch.diffs.insert(0, new Diff(DIFF_EQUAL, prefix));
       }
       // Add the suffix.
       final suffix = text.substring(patch.start2 + patch.length1,
  
positive.code:             && (lastequality.length <= max(length_insertions2,
                                                  length_deletions2))) {
            // Duplicate record.
            diffs.insertRange(equalities.last, 1,
                              new Diff(DIFF_DELETE, lastequality));
            // Change second copy to insert.
            diffs[equalities.last + 1].operation = DIFF_INSERT;
  
negative.code:                   diffs[i].text = '${diffs[i].text}'
                        '${text_insert.substring(0, commonlength)}';
                  } else {
                    diffs.insert(0, new Diff(DIFF_EQUAL,
                                      text_insert.substring(0, commonlength)));
                    pointer++;
                  }
  