anchor.diff:    
     
   
  -  //***************************************************************************
  -  //*** Map implementation methods and properties ***
  -  //Pass through to the inner _objectData map.
  +  /***************************************************************************
  +   * Map implementation methods and properties *
  +   * 
  +   */
  +  
  +  // Pass through to the inner _objectData map.
     bool containsValue(value) => _objectData.containsValue(value);
  +  
  +  // Pass through to the inner _objectData map.
     bool containsKey(value) => _objectData.containsKey(value);
  +  
  +  // Pass through to the inner _objectData map.
     operator [](key) => _objectData[key];
  +  
  +  // Pass through to the inner _objectData map.
     forEach(func(key,value)) => _objectData.forEach(func);
  +  
  +  // Pass through to the inner _objectData map.
     Iterable get keys => _objectData.keys;
  +  
  +  // Pass through to the inner _objectData map.
     Iterable get values => _objectData.values;
  +  
  +  // Pass through to the inner _objectData map.
     int get length => _objectData.length;
  +  
  +  // Pass through to the inner _objectData map.
     bool get isEmpty => _objectData.isEmpty;
   
  -  //Specific implementations which check isExtendable to determine if an
  -  //unknown key should be allowed
  -
  -  ///If [isExtendable] is true, or the key already exists,
  -  ///then allow the edit.
  -  ///Throw [JsonObjectException] if we're not allowed to add a new
  -  ///key
  +  /** 
  +   * Specific implementations which check isExtendable to determine if an
  +   *
  +   * unknown key should be allowed
  +   * 
  +   * If [isExtendable] is true, or the key already exists,
  +   * then allow the edit.
  +   * Throw [JsonObjectException] if we're not allowed to add a new
  +   * key
  +   */
     operator []=(key,value) {
       //if the map isExtendable, or it already contains the key, then
       if (this.isExtendable == true || this.containsKey(key)) {
  
positive.code:     }
    }
  
    ///If [isExtendable] is true, then allow the map to be cleared
    ///Throw [JsonObjectException] if we're not allowed to clear.
    clear() {
      if (this.isExtendable == true) {
        _objectData.clear();
  
negative.code:     return dest;
    }
  
    /** noSuchMethod() is where the magic happens.
     * If we try to access a property using dot notation (eg: o.wibble ), then
     * noSuchMethod will be invoked, and identify the getter or setter name.
     * It then looks up in the map contained in _objectData (represented using
     * this (as this class implements [Map], and forwards it's calls to that
     * class.
     * If it finds the getter or setter then it either updates the value, or
     * replaces the value.
     * 
     * If isExtendable = true, then it will allow the property access
     * even if the property doesn't yet exist.
     */
    noSuchMethod(InvocationMirror mirror) {
      int positionalArgs = 0;
      if (mirror.positionalArguments != null) positionalArgs = mirror.positionalArguments.length;
  