anchor.diff:  
         this._changesHead = this._changesTail = null;
         this._additionsHead = this._additionsTail = null;
  -      this._removalsHead = this._removalsTail = null;
  +      this._removalsHead = null;
       }
     }
   
  
positive.code:     }
      for (record = this._removalsHead;
          !identical(record, null);
          record = record._nextRemoved) {
        removals.add(record);
      }
      return "map: " +
  
negative.code:       }
      });
  
      if (insertBefore != null) {
        // Remaining records that weren't seen are the removals.
        _removalsHead = insertBefore;
  
        for (var record = insertBefore; record != null; record = record._next) {
          _records.remove(record.key);
          record.previousValue = record.currentValue;
          record.currentValue = null;
        }
  
        if (_removalsHead == _mapHead) {
          // Remove the head record reference.
          _mapHead = null;
        } else {
          // Truncate removals from end of record list.
          _removalsHead._prev._next = null;
        }
      }
  
  