docs: function addGlobalHandler(eventType, handler, thisObject){
      var handlers = globalHandlers[eventType];
      if (handlers)
      {
        // search for similar handler, returns if found (prevent for handler dublicates)
        for (var i = 0, item; item = handlers[i]; i++)
          if (item.handler === handler && item.thisObject === thisObject)
            return;
      }
      else
      {
        if (noCaptureScheme)
          // nothing to do, but it will provide observeGlobalEvents calls if other one doesn't
          addHandler(document, eventType, $null);
        else
          document.addEventListener(eventType, observeGlobalEvents, true);
  
        handlers = globalHandlers[eventType] = [];
      }
  
      // add new handler
      handlers.push({
        handler: handler,
        thisObject: thisObject
      });
    }