anchor.diff:      final rootElement = new GameElement(540, 540);
       final stage = new Stage(canvasElement, rootElement);
   
  -    return new GameRoot._internal(stage, rootElement, leftCountDiv, gameStateDiv, clockDiv);
  +    return new GameRoot._internal(canvasElement, stage, rootElement, leftCountDiv, gameStateDiv, clockDiv);
     }
   
  -  GameRoot._internal(this._stage, this._gameElement,
  +  GameRoot._internal(this._canvas, this._stage, this._gameElement,
         this._leftCountDiv, this._gameStateDiv, this._clockDiv) {
  +    _canvas.on.mouseMove.add(_canvas_mouseMove);
  +    _canvas.on.mouseOut.add(_canvas_mouseOut);
       newGame();
       _requestFrame();
     }
  
positive.code:   static final String _yKey = 'y';
  
    final Stage _stage;
    final GameElement _gameElement;
    final Element _leftCountDiv;
    final Element _gameStateDiv;
    final Element _clockDiv;
  
    dartlib.GlobalId _updatedEventId;
  
    factory GameRoot(CanvasElement canvasElement,
        Element leftCountDiv, Element gameStateDiv, Element clockDiv) {
  
negative.code:   void _gameUpdated(args) {
      updateElement();
    }
  
    void requestFrame(){
      window.webkitRequestAnimationFrame(_onFrame);
    }
  
    void _canvas_mouseMove(MouseEvent e){
      _mouseLocation = new dartlib.Coordinate(e.offsetX, e.offsetY);
    }
  
    void _canvas_mouseOut(MouseEvent e){
      _mouseLocation = null;
    }
  }
  