anchor.diff:      List<Diff> diffs = patch.diffs;
       if (diffs.isEmpty || diffs[0].operation != DIFF_EQUAL) {
         // Add nullPadding equality.
  -      diffs.insertRange(0, 1, new Diff(DIFF_EQUAL, nullPadding));
  +      diffs.insert(0, new Diff(DIFF_EQUAL, nullPadding));
         patch.start1 -= paddingLength;  // Should be 0.
         patch.start2 -= paddingLength;  // Should be 0.
         patch.length1 += paddingLength;
  
positive.code:               overlap_length1 >= insertion.length / 2) {
              // Overlap found.
              // Insert an equality and trim the surrounding edits.
              diffs.insertRange(pointer, 1,
                  new Diff(DIFF_EQUAL, insertion.substring(0, overlap_length1)));
              diffs[pointer - 1].text =
                  deletion.substring(0, deletion.length - overlap_length1);
  
negative.code:             // Delete the offending records and add the merged ones.
              if (count_delete == 0) {
                diffs.removeRange(pointer - count_insert, count_insert);
                diffs.insert(pointer - count_insert,
                    new Diff(DIFF_INSERT, text_insert));
              } else if (count_insert == 0) {
                diffs.removeRange(pointer - count_delete, count_delete);
                diffs.insert(pointer - count_delete,
                    new Diff(DIFF_DELETE, text_delete));
              } else {
                diffs.removeRange(pointer - count_delete - count_insert,
                    count_delete + count_insert);
                diffs.insert(pointer - count_delete - count_insert,
                    new Diff(DIFF_INSERT, text_insert));
                diffs.insert(pointer - count_delete - count_insert,
                    new Diff(DIFF_DELETE, text_delete));
              }
              pointer = pointer - count_delete - count_insert
  