anchor.diff:      notify(
           new FrameworkEvent<MouseEvent>(
               'mouseMove',
  +            relatedObject: event
  +        )
  +    );
  +  }
  +  
  +  void _keyHandler(KeyboardEvent event) {
  +    notify(
  +        new FrameworkEvent<KeyboardEvent>(
  +            'key',
               relatedObject: event
           )
       );
  
positive.code:         'item_renderer_containerMouseOut', 
          container.onMouseOut.listen(_mouseOutHandler)
      );
  
      invokeLaterSingle('invalidateData', invalidateData);
    }
  
negative.code:   Stream<FrameworkEvent> get onDataChanged;
    Stream<FrameworkEvent> get onFieldChanged;
    Stream<FrameworkEvent> get onFieldsChanged;
    Stream<FrameworkEvent<MouseEvent>> get onClick;
    Stream<FrameworkEvent<MouseEvent>> get onMouseUp;
    Stream<FrameworkEvent<MouseEvent>> get onMouseDown;
    Stream<FrameworkEvent<MouseEvent>> get onMouseOver;
    Stream<FrameworkEvent<MouseEvent>> get onMouseOut;
    Stream<FrameworkEvent<MouseEvent>> get onMouseMove;
    Stream<FrameworkEvent<KeyboardEvent>> get onKey;
    Stream<FrameworkEvent> get onDataPropertyChanged;
  
    int get index;
  