(function(A){A.extend(A.event.special,{focusin:{setup:function(){if(A.browser.msie){return false}this.addEventListener("focus",A.event.special.focusin.handler,true)},teardown:function(){if(A.browser.msie){return false}this.removeEventListener("focus",A.event.special.focusin.handler,true)},handler:function(C){var B=Array.prototype.slice.call(arguments,1);B.unshift(A.extend(A.event.fix(C),{type:"focusin"}));return A.event.handle.apply(this,B)}},focusout:{setup:function(){if(A.browser.msie){return false}this.addEventListener("blur",A.event.special.focusout.handler,true)},teardown:function(){if(A.browser.msie){return false}this.removeEventListener("blur",A.event.special.focusout.handler,true)},handler:function(C){var B=Array.prototype.slice.call(arguments,1);B.unshift(A.extend(A.event.fix(C),{type:"focusout"}));return A.event.handle.apply(this,B)}}});A.extend(A.fn,{delegate:function(D,C,B){return this.bind(D,function(E){var F=A(E.target);if(F.is(C)){return B.apply(F,arguments)}})},triggerEvent:function(B,C){return this.triggerHandler(B,[jQuery.event.fix({type:B,target:C})])}})})(jQuery)