anchor.diff:        }
       });
   
  -    _heating.onStream(root.onMouseOut, (Event event) {
  +    _heating.onStream(root.onMouseOut, (MouseEvent event) {
         _element = null;
         _waiting.enter();
       });
  
positive.code:       _display.enter();
      });
  
      _display.onStream(root.onMouseOut, (Event event) {
        _cooling.enter();
      });
  
      _cooling.onStream(root.onMouseOver, (Event event) {
        Element element = event.target;
        if (element.dataset.containsKey(dataKey)) {
          show(_element = element, _element.dataset[dataKey]);
  
negative.code:     _display = machine.newState('display');
      _cooling = machine.newState('cooling');
  
      _waiting.onStream(root.onMouseOver, (MouseEvent event) {
        Element element = event.target;
        if (element.dataset.containsKey(dataKey)) {
          _element = element;
  