anchor.diff:    var _mouseOut;
     Map<int, StreamSubscription> _mouseOutSubscriptions = new Map();
     var _mouseUp;
  -  
  +
     bool _autoStop;
     /// True if we should automatically stop drags on mouse up
     bool get autoStop => _autoStop;
  
positive.code: // TODO make universal enable/disable flag
  class DragHandler {
    static final _logger = new Logger("drag-handler")..level = Level.OFF;
    
    // stream controllers
    StreamController<DragEvent> _dragStreamController = new StreamController<DragEvent>();
    StreamController<DragEvent> _dragStartStreamController = new StreamController<DragEvent>();
  
negative.code:   Stream<DragEvent> get onDragEnd => _dragEndStreamController.stream;
    Stream<DragEvent> get onDragOut => _dragOutStreamController.stream;
    Stream<DragEvent> get onDragOver => _dragOverStreamController.stream;
  
    /// The function to call to determine if the drag should be allowed to start on mouse down
    AllowDragStart dragConditions;
  
    // methods to subscribe / unsubscribe safely
    void _listen(String event, Node element, [bool useCapture = false]) {
      var subscriptions, handler, provider;
  