anchor.diff:      identical(_iterable, collection)) {
         // Short circuit and assume that the list has not been modified.
         return false;
  -    } else if (collection is List) {
  +    }
  +
  +    if (collection is List) {
         List list = collection;
         for(int index = 0; index < list.length; index++) {
           var item = list[index];
  
positive.code:         index++;
        }
      }
      _truncate(record);
      _iterable = collection;
      return isDirty;
  
negative.code:     _object = obj;
      if (obj == null) {
        _mode = _MODE_IDENTITY_;
        return;
      }
  
      if (field == null) {
        _instanceMirror = null;
        if (obj is Map) {
          if (_mode != _MODE_MAP_) {
  