anchor.diff:      var target = this,
           current = target,
           next = target,
  -        event = new Event(name, this);
  +        event = new ScopeEvent(name, this);
   
       //down while you can, then up and next sibling or up and next sibling until back at root
       if (listenerArgs == null) {
  
positive.code:   }
  }
  
  class Event {
    String name;
    Scope targetScope;
    Scope currentScope;
    bool propagationStopped = false;
    bool defaultPrevented = false;
  
    Event(this.name, this.targetScope);
  
    stopPropagation () => propagationStopped = true;
    preventDefault() => defaultPrevented = true;
  
negative.code:     var empty = [],
          namedListeners,
          scope = this,
          event = new ScopeEvent(name, this),
          listenerArgs = [event],
          i;
  
  