anchor.diff:  }
   
   // Dart Type -> JS constructorfor proxy
  -final Map<Type, JsObject> _exportedConstructors = <Type, JsObject>{};
  +final Map<Type, JsFunction> _exportedConstructors = <Type, JsFunction>{};
   
  -registerJsConstructorForType(Type type, JsObject constructor) {
  +registerJsConstructorForType(Type type, JsFunction constructor) {
     _exportedConstructors[type] = constructor;
   }
   
  
positive.code:         wrapper = new JsList.fromJsObject(o);
        } else {
          // look up JsInterface factory
          var jsConstructor = o['constructor'] as JsObject;
          var dartConstructor = _interfaceConstructors[jsConstructor];
          if (dartConstructor != null) {
            wrapper = dartConstructor(o);
  
negative.code: 
  typedef JsInterface InterfaceFactory(JsObject o);
  
  registerFactoryForJsConstructor(JsFunction constructor,
      InterfaceFactory factory) {
    _interfaceConstructors[constructor] = factory;
  }
  