anchor.diff:      }
     }
   
  -  ItemRecord get(key, int hideIndex) {
  +  /// Returns an [ItemRecord] having [ItemRecord.item] == [item] and [ItemRecord.currentIndex] >=
  +  /// [hideIndex]
  +  ItemRecord get(item, int hideIndex) {
       ItemRecord record;
       for (record = head; record != null; record = record._nextDup) {
         if ((hideIndex == null || hideIndex < record.currentIndex) &&
  
positive.code:     }
    }
  
    void _undoDeltas() {
      ItemRecord<V> record;
  
  
negative.code:   }
  
    /**
     * Reset the state of the change objects to show no changes. This means set previousKey to
     * currentKey, and clear all of the queues (additions, moves, removals).
     */
    void _reset() {
      if (isDirty) {
  