anchor.diff:    Map<Symbol, DeclarationMirror> get declarations {
       if (_declarations != null) return _declarations;
       return _declarations =
  -        new _UnmodifiableMapView<Symbol, DeclarationMirror>(_members);
  +        new UnmodifiableMapView<Symbol, DeclarationMirror>(_members);
     }
   
     Map<Symbol, Mirror> _cachedMembers;
  
positive.code: import "dart:collection";
  
  final emptyList = new UnmodifiableListView([]);
  final emptyMap = new _UnmodifiableMapView({});
  
  // TODO(14314): Move to dart:collection.
  class _UnmodifiableMapView<K, V> implements Map<K, V> {
    final Map<K, V> _source;
  
    _UnmodifiableMapView(Map<K, V> source) : _source = source;
  
   static void _throw() {
      throw new UnsupportedError("Cannot modify an unmodifiable Map");
    }
  
    int get length => _source.length;
    bool get isEmpty => _source.isEmpty;
    bool get isNotEmpty => _source.isNotEmpty;
    V operator [](K key) => _source[key];
    bool containsKey(K key) => _source.containsKey(key);
    bool containsValue(V value) => _source.containsValue(value);
    void forEach(void f(K key, V value)) => _source.forEach(f);
    Iterable<K> get keys => _source.keys;
    Iterable<V> get values => _source.values;
    void operator []=(K key, V value) => _throw();
    V putIfAbsent(K key, V ifAbsent()) { _throw(); }
    void addAll(Map<K, V> other) => _throw();
    V remove(K key) { _throw(); }
    void clear() => _throw();
  }
  
  class _InternalMirrorError {
    final String _msg;
  
negative.code:       new_map[key] = value;
      }
    });
    return new UnmodifiableMapView(new_map);
  }
  
  Map _makeMemberMap(List mirrors) {
    return new UnmodifiableMapView<Symbol, DeclarationMirror>(
        new Map<Symbol, DeclarationMirror>.fromIterable(
            mirrors, key: (e) => e.simpleName));
  }
  