anchor.diff:     * updates the map by mapping [key] to the value returned by
      * [ifAbsent]. Returns the value in the map.
      *
  -   * It is an error to add or remove keys from map during the call to
  +   * It is an error to add or remove keys from the map during the call to
      * [ifAbsent].
      */
     V putIfAbsent(K key, V ifAbsent());
  
positive.code:       {K key(element), V value(element)}) = HashMap<K, V>.fromIterable;
  
    /**
     * Creates a [Map] associating the given [keys] to [values].
     *
     * This constructor iterates over [keys] and [values] and maps each element of
     * [keys] to the corresponding element of [values].
  
negative.code: part of dart.core;
  
  /**
   * An unordered collection of key-value pairs,
   * from which you retrieve a value by using its associated key.
   *
   * Each key must be unique.
   * Null values are supported, but null keys are not.
   */
  abstract class Map<K, V> {
    /**
     * Creates a Map instance with the default implementation.
     */
    factory Map() => new HashMap<K, V>();
  
    /**
     * Creates a Map instance that contains all key-value pairs of [other].
     */
    factory Map.from(Map<K, V> other) => new HashMap<K, V>.from(other);
  
    /**
     * Creates a Map instance
     * where the keys and values are computed from the [iterable].
     *
     * For each element of the [iterable] this constructor computes a key-value
     * pair, by applying [key] and [value] respectively.
     *
     * The keys computed by the source [iterable] 
     * do not need to be unique. The last
     * occurrence of a key will simply overwrite any previous value.
     *
     * If no values are specified for [key] and [value] the default is the
  