anchor.diff:    static final ServerValue = new _ServerValue();
   }
   
  -/**
  - * A Firebase represents a particular location in your Firebase and can be used
  - * for reading or writing data to that Firebase location.
  - */
   class JsFirebase extends JsQuery implements Firebase {
     Stream<Event> _onAuth;
     Disconnect _onDisconnect;
   
  -  /**
  -   * Construct a new Firebase reference from a full Firebase URL.
  -   */
     JsFirebase(String url) : super(url);
   
  -  /**
  -   * Construct a new Firebase reference from a JsObject.
  -   */
     JsFirebase.fromJsObject(JsObject obj) : super.fromJsObject(obj);
   
  -  /**
  -   * Getter for onDisconnect.
  -   */
     Disconnect get onDisconnect {
       if (_onDisconnect == null) {
         _onDisconnect = new JsDisconnect(_fb.callMethod('onDisconnect'));
  
positive.code:    */
    Firebase root() => new JsFirebase.fromJsObject(_fb.callMethod('root'));
  
    /**
     * Returns the last token in a Firebase location.
     * [key] on the root of a Firebase is `null`.
     */
    String get key => _fb.callMethod('key');
  
    /**
     * Gets the absolute URL corresponding to this Firebase reference's location.
     */
    String toString() {
      return _fb.toString();
    }
  
    /**
     * Write data to this Firebase location. This will overwrite any data at
     * this location and all child locations.
     *
     * The effect of the write will be visible immediately and the corresponding
     * events ('onValue', 'onChildAdded', etc.) will be triggered.
     * Synchronization of the data to the Firebase servers will also be started,
     * and the Future returned by this method will complete after synchronization
     * has finished.
     *
     * Passing null for the new value is equivalent to calling remove().
     *
     * A single set() will generate a single onValue event at the location where
     * the set() was performed.
     */
    Future set(value) {
      var c = new Completer();
      value = jsify(value);
  
negative.code:     return c.future;
    }
  
    Future update(Map<String, dynamic> value) {
      var c = new Completer();
      var jsValue = jsify(value);
  