anchor.diff:          key: (prop) => prop.name,
           value: (PropertyDefinition prop) => prop.type.create(initialValue: propertyInits[prop.name])
       );
  -  
  +
     @override
  -  _PropertyInstance operator [](String key) => _entityProperties[key];
  +  _PropertyInstance operator [](String key) {
  +    if (!containsKey(key))
  +      throw new NoSuchPropertyError(kind, key);
  +    return _entityProperties[key];
  +  }
   
     @override
     bool containsKey(String key) => _entityProperties.containsKey(key);
  
positive.code: class EntityResult<T extends Entity> {
    static const KEY_ONLY = 0;
    static const ENTITY_PRESENT = 1;
    
    /**
     * The looked up key
     */
  
negative.code: class PropertyMap extends UnmodifiableMapMixin<String,_PropertyInstance> {
    final KindDefinition kind;
    Map<String,_PropertyInstance> _entityProperties;
  
    PropertyMap(KindDefinition kind, Map<String,dynamic> propertyInits) :
      this.kind = kind,
      _entityProperties = new Map.fromIterable(
  