(function(){var pseudos={relay:false},copyFromEvents=["once","throttle","pause"],count=copyFromEvents.length;while(count--){pseudos[copyFromEvents[count]]=Events.lookupPseudo(copyFromEvents[count])}DOMEvent.definePseudo=function(key,listener){pseudos[key]=listener;return this};var proto=Element.prototype;[Element,Window,Document].invoke("implement",Events.Pseudos(pseudos,proto.addEvent,proto.removeEvent))})();