anchor.diff:      requestFrame();
     }
   
  +  void _onDragStart(core.CancelableEventArgs e) {
  +    if(!_overShape) {
  +      e.cancel();
  +    }
  +  }
  +
     bool _onFrame(num highResTime){
       _stage.draw();
  -    if(_mouseLocation != null){
  -      RetainedDebug.borderHitTest(_stage, _mouseLocation);
  -    }
       _frameRequested = false;
     }
   
  
positive.code: 
    void _setMouse(core.Coordinate value) {
      _mouseLocation = value;
      requestFrame();
    }
  }
  
negative.code: 
    core.Coordinate _mouseLocation;
    bool _frameRequested = false;
    bool _overShape = false;
  
    factory DraggerDemo(CanvasElement canvas){
  
  