anchor.diff:    }
   }
   
  -
  -Set<Component> _mountedComponents = new HashSet<Component>();
  -Set<Component> _unmountedComponents = new HashSet<Component>();
  -
  -void _enqueueDidMount(Component c) {
  -  assert(!_notifingMountStatus);
  -  _mountedComponents.add(c);
  -}
  -
  -void _enqueueDidUnmount(Component c) {
  -  assert(!_notifingMountStatus);
  -  _unmountedComponents.add(c);
  -}
  -
  -bool _notifingMountStatus = false;
  -
  -void _notifyMountStatusChanged() {
  -  try {
  -    _notifingMountStatus = true;
  -    _unmountedComponents.forEach((c) => c._didUnmount());
  -    _mountedComponents.forEach((c) => c._didMount());
  -    _mountedComponents.clear();
  -    _unmountedComponents.clear();
  -  } finally {
  -    _notifingMountStatus = false;
  -  }
  -}
  -
   List<Component> _dirtyComponents = new List<Component>();
   bool _buildScheduled = false;
   bool _inRenderDirtyComponents = false;
  
positive.code:     assert(root != null);
      removeChild(_built);
      _built = null;
      _enqueueDidUnmount(this);
      super.remove();
    }
  
  
negative.code:     _unmountCallbacks.add(fn);
    }
  
    Component({ Object key, bool stateful })
        : _stateful = stateful != null ? stateful : false,
          _order = _currentOrder + 1,
  