anchor.diff:        : '$item[$previousIndex -> $currentIndex]';
   }
   
  +/// A linked list of [ItemRecord]s with the same [ItemRecord.item]
   class _DuplicateItemRecordList {
     ItemRecord head, tail;
   
     /**
  -   * Add the [record] before the [previousRecord] in the list of duplicates or
  -   * at the end of the list when no [previousRecord] is specified.
  +   * Add the [record] before the [insertBefore] in the list of duplicates or at the end of the list
  +   * when no [insertBefore] is specified.
      *
  -   * Note: by design all records in the list of duplicates hold the save value
  -   * in [record.item].
  +   * Note: by design all records in the list of duplicates hold the save value in [record.item].
      */
     void add(ItemRecord record, ItemRecord previousRecord) {
       assert(previousRecord == null || previousRecord.item == record.item);
  
positive.code:     }
    }
  
    ItemRecord get(key, int hideIndex) {
      ItemRecord record;
      for (record = head; record != null; record = record._nextDup) {
        if ((hideIndex == null || hideIndex < record.currentIndex) &&
  
negative.code:   /**
     * This is the core function which handles differences between collections.
     *
     * - [record] is the record which we saw at this position last time. If [:null:] then it is a new
     *   item.
     * - [item] is the current item in the collection
     * - [index] is the position of the item in the collection
     */
  