anchor.diff:    Map<Symbol,dynamic> get props => {#value: value};
   }
   
  -abstract class State {
  -  State clone();
  -}
  -
  +/// A Widget is a View that acts as a template. Its render() method typically
  +/// returns elements to be rendered
   abstract class Widget extends View {
     Map<Symbol, dynamic> _props;
     State _state, _nextState;
  
positive.code:     shadow = null;
    }
  
    View render();
  
    void refresh() {
      assert(_path != null);
  
  
negative.code: 
    Widget(this._props);
  
    /// Constructs the initial state when the Widget is mounted.
    /// (Stateful widgets should override.)
    State get firstState => null;
  
    /// Returns the currently rendered state. This should be treated as read-only.
    /// (Subclasses may want to override to change the return type.)
    State get state => _state;
  
    /// Returns the state that will be rendered on the next update.
    /// This is typically used to update the state due to an event.
    /// Accessing nextState automatically marks the Widget as dirty.
    /// (Subclasses may want to override to change the return type.)
    State get nextState {
      if (_nextState == null) {
        _nextState = _state.clone();
  