anchor.diff:  
       if (oldNode != null) {
         if (oldNode.runtimeType == newNode.runtimeType && oldNode.key == newNode.key) {
  -        if (newNode._retainStatefulNodeIfPossible(oldNode)) {
  +        if (oldNode.retainStatefulNodeIfPossible(newNode)) {
             assert(oldNode.mounted);
             assert(!newNode.mounted);
             oldNode.setParent(this);
  
positive.code:   RenderObject get root => _root;
  
    // Subclasses which implements Nodes that become stateful may return true
    // if the |old| node has become stateful and should be retained.
    // This is called immediately before _sync().
    // Component._retainStatefulNodeIfPossible() calls syncFields().
    bool _retainStatefulNodeIfPossible(Widget old) => false;
  
    void _sync(Widget old, dynamic slot);
    void updateSlot(dynamic newSlot);
  
negative.code:   }
  }
  
  class RenderBoxToWidgetAdapter extends AbstractWidgetRoot {
  
    RenderBoxToWidgetAdapter(
  