anchor.diff:  
     void mount(Element parent, dynamic slot) {
       super.mount(parent, slot);
  -    _child = _updateChild(_child, _widget.child, uniqueChild);
  +    _child = _updateChild(_child, _widget.child, _uniqueChild);
     }
   
     void update(T newWidget) {
       super.update(newWidget);
       assert(_widget == newWidget);
  -    _child = _updateChild(_child, _widget.child, uniqueChild);
  +    _child = _updateChild(_child, _widget.child, _uniqueChild);
     }
   
     void insertChildRenderObject(RenderObject child, dynamic slot) {
       final renderObject = this.renderObject; // TODO(ianh): Remove this once the analyzer is cleverer
       assert(renderObject is RenderObjectWithChildMixin);
  -    assert(slot == uniqueChild);
  +    assert(slot == _uniqueChild);
       renderObject.child = child;
       assert(renderObject == this.renderObject); // TODO(ianh): Remove this once the analyzer is cleverer
     }
  
positive.code:   }
  }
  
  class LeafRenderObjectElement<T extends RenderObjectWidget> extends RenderObjectElement<T> {
    LeafRenderObjectElement(T widget): super(widget);
  }
  
  class OneChildRenderObjectElement<T extends OneChildRenderObjectWidget> extends RenderObjectElement<T> {
    OneChildRenderObjectElement(T widget) : super(widget);
  
  
negative.code:     }
    }
  
    void insertChildRenderObject(RenderObject child, dynamic slot);
  
    void removeChildRenderObject(RenderObject child);
  }
  
  /// Instantiation of RenderObjectWidgets that have no children
  class LeafRenderObjectElement<T extends RenderObjectWidget> extends RenderObjectElement<T> {
    LeafRenderObjectElement(T widget): super(widget);
  
    void insertChildRenderObject(RenderObject child, dynamic slot) {
      assert(false);
    }
  