anchor.diff:    }
   
     // Create a new cell and link it in as the last one in the list.
  -  LinkedHashMapCell/*<K, V>*/ _newLinkedCell(K key, V value) {
  -    LinkedHashMapCell/*<K, V>*/ cell =
  -        new LinkedHashMapCell/*<K, V>*/(key, value);
  +  LinkedHashMapCell _newLinkedCell(K key, V value) {
  +    LinkedHashMapCell cell = new LinkedHashMapCell(key, value);
       if (_first == null) {
         _first = _last = cell;
       } else {
  -      LinkedHashMapCell/*<K, V>*/ last = _last;
  +      LinkedHashMapCell last = _last;
         cell._previous = last;
         _last = last._next = cell;
       }
  
positive.code:     var hash = internalComputeHashCode(key);
      var bucket = _getTableBucket(rest, hash);
      if (bucket == null) {
        LinkedHashMapCell/*<K, V>*/ cell = _newLinkedCell(key, value);
        _setTableEntry(rest, hash, JS('var', '[#]', cell));
      } else {
        int index = internalFindBucketIndex(bucket, key);
        if (index >= 0) {
          LinkedHashMapCell/*<K, V>*/ cell = JS('var', '#[#]', bucket, index);
          cell.hashMapCellValue = value;
        } else {
          LinkedHashMapCell/*<K, V>*/ cell = _newLinkedCell(key, value);
          JS('void', '#.push(#)', bucket, cell);
        }
      }
  
negative.code: 
    String toString() => Maps.mapToString(this);
  
    LinkedHashMapCell _getTableCell(var table, var key) {
      return JS('var', '#[#]', table, key);
    }
  
    List<LinkedHashMapCell> _getTableBucket(var table, var key) {
      return JS('var', '#[#]', table, key);
    }
  
  