anchor.diff:   * A more efficient implementation is usually possible by overriding
    * some of the other members as well.
    */
  -class UnmodifiableMapBase<K, V> =
  +abstract class UnmodifiableMapBase<K, V> =
       MapBase<K, V> with _UnmodifiableMapMixin<K, V>;
   
   /**
  
positive.code: /**
   * Mixin that overrides mutating map operations with implementations that throw.
   */
  class _UnmodifiableMapMixin<K, V> implements Map<K, V> {
    void operator[]=(K key, V value) {
      throw new UnsupportedError("Cannot modify unmodifiable map");
    }
  
negative.code:  * A more efficient implementation is usually possible by overriding
   * some of the other members as well.
   */
  abstract class MapBase<K, V> implements Map<K, V> {
    MapBase();  // Prevents use as mixin.
  
    Iterable<K> get keys;
  