anchor.diff:        responseFactory(null);
   }
   
  -abstract class Firebase {
  -  static const String serviceName = "firebase::Firebase";
  -  void initWithUrl(String url);
  -  void addValueEventListener(Object listener);
  -  void addChildEventListener(Object listener);
  -  dynamic observeSingleEventOfType(EventType eventType,[Function responseFactory = null]);
  -  dynamic authWithCustomToken(String token,[Function responseFactory = null]);
  -  dynamic authAnonymously([Function responseFactory = null]);
  -  dynamic authWithOAuthToken(String provider,String credentials,[Function responseFactory = null]);
  -  dynamic authWithPassword(String email,String password,[Function responseFactory = null]);
  -  dynamic unauth([Function responseFactory = null]);
  -  void getChild(String path, Object child);
  -  void getParent(Object parent);
  -  void getRoot(Object root);
  -  dynamic setValue(String jsonValue,int priority,bool hasPriority,[Function responseFactory = null]);
  -  dynamic removeValue([Function responseFactory = null]);
  -  dynamic push(Object child,[Function responseFactory = null]);
  -  dynamic setPriority(int priority,[Function responseFactory = null]);
  -  dynamic createUser(String email,String password,[Function responseFactory = null]);
  -  dynamic changeEmail(String oldEmail,String password,String newEmail,[Function responseFactory = null]);
  -  dynamic changePassword(String newPassword,String email,String oldPassword,[Function responseFactory = null]);
  -  dynamic removeUser(String email,String password,[Function responseFactory = null]);
  -  dynamic resetPassword(String email,[Function responseFactory = null]);
  -}
  -
  -
  -class _FirebaseProxyImpl extends bindings.Proxy {
  -  _FirebaseProxyImpl.fromEndpoint(
  +abstract class DatabaseReference {
  +  static const String serviceName = null;
  +  void addValueEventListener(String path, Object listener);
  +  void addChildEventListener(String path, Object listener);
  +  dynamic observeSingleEventOfType(String path,EventType eventType,[Function responseFactory = null]);
  +  dynamic setValue(String path,String jsonValue,int priority,bool hasPriority,[Function responseFactory = null]);
  +  dynamic removeValue(String path,[Function responseFactory = null]);
  +  dynamic push(String path,Object child,[Function responseFactory = null]);
  +  dynamic setPriority(String path,int priority,[Function responseFactory = null]);
  +}
  +
  +
  +class _DatabaseReferenceProxyImpl extends bindings.Proxy {
  +  _DatabaseReferenceProxyImpl.fromEndpoint(
         core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint);
   
  -  _FirebaseProxyImpl.fromHandle(core.MojoHandle handle) :
  +  _DatabaseReferenceProxyImpl.fromHandle(core.MojoHandle handle) :
         super.fromHandle(handle);
   
  -  _FirebaseProxyImpl.unbound() : super.unbound();
  -
  -  static _FirebaseProxyImpl newFromEndpoint(
  +  _DatabaseReferenceProxyImpl.unbound() : super.unbound();
  +
  +  static _DatabaseReferenceProxyImpl newFromEndpoint(
         core.MojoMessagePipeEndpoint endpoint) {
  -    assert(endpoint.setDescription("For _FirebaseProxyImpl"));
  -    return new _FirebaseProxyImpl.fromEndpoint(endpoint);
  +    assert(endpoint.setDescription("For _DatabaseReferenceProxyImpl"));
  +    return new _DatabaseReferenceProxyImpl.fromEndpoint(endpoint);
     }
   
     service_describer.ServiceDescription get serviceDescription =>
  -    new _FirebaseServiceDescription();
  +    new _DatabaseReferenceServiceDescription();
   
     void handleResponse(bindings.ServiceMessage message) {
       switch (message.header.type) {
  -      case _firebaseMethodObserveSingleEventOfTypeName:
  -        var r = FirebaseObserveSingleEventOfTypeResponseParams.deserialize(
  +      case _databaseReferenceMethodObserveSingleEventOfTypeName:
  +        var r = DatabaseReferenceObserveSingleEventOfTypeResponseParams.deserialize(
               message.payload);
           if (!message.header.hasRequestId) {
             proxyError("Expected a message with a valid request Id.");
  
positive.code:     return result;
    }
  
    static _FirebaseAuthWithCustomTokenParams decode(bindings.Decoder decoder0) {
      if (decoder0 == null) {
        return null;
      }
      _FirebaseAuthWithCustomTokenParams result = new _FirebaseAuthWithCustomTokenParams();
  
      var mainDataHeader = decoder0.decodeStructDataHeader();
      if (mainDataHeader.version <= kVersions.last.version) {
  
negative.code:     }
      if (mainDataHeader.version >= 0) {
        
        result.path = decoder0.decodeString(8, false);
      }
      return result;
    }
  