anchor.diff:  
     @override
     void removeRenderObjectChild(RenderObject child, dynamic slot) {
  -    final ContainerRenderObjectMixin<RenderObject, ContainerParentDataMixin<RenderObject>> renderObject =
  -      this.renderObject as ContainerRenderObjectMixin<RenderObject, ContainerParentDataMixin<RenderObject>>;
  +    final ContainerRenderObjectMixin<RenderObject, ContainerParentDataMixin<RenderObject>> renderObject = this.renderObject;
       assert(child.parent == renderObject);
       renderObject.remove(child);
       assert(renderObject == this.renderObject);
  
positive.code: 
    @override
    void insertRenderObjectChild(RenderObject child, IndexedSlot<Element?> slot) {
      final ContainerRenderObjectMixin<RenderObject, ContainerParentDataMixin<RenderObject>> renderObject =
        this.renderObject as ContainerRenderObjectMixin<RenderObject, ContainerParentDataMixin<RenderObject>>;
      assert(renderObject.debugValidateChild(child));
      renderObject.insert(child, after: slot.value?.renderObject);
      assert(renderObject == this.renderObject);
  
negative.code: 
    @override
    void moveRenderObjectChild(RenderObject child, IndexedSlot<Element?> oldSlot, IndexedSlot<Element?> newSlot) {
      final ContainerRenderObjectMixin<RenderObject, ContainerParentDataMixin<RenderObject>> renderObject = this.renderObject;
      assert(child.parent == renderObject);
      renderObject.move(child, after: newSlot.value?.renderObject);
      assert(renderObject == this.renderObject);
  