yui=window.yui||{};yui.CustomEvent=function(P,U){this.type=P;this.scope=U||window;this.subscribers=[];if(yui["Event"]){yui.Event.regCE(this);}};yui.CustomEvent.prototype.subscribe=function(P,U){this.subscribers.push(new yui.Subscriber(P,U));};yui.CustomEvent.prototype.unsubscribe=function(o,P){for(var U=0;U<this.subscribers.length;++U){var G=this.subscribers[U];if(G&&G.contains(o,P)){this._delete(U);}}};yui.CustomEvent.prototype.fire=function(){for(var U=0;U<this.subscribers.length;++U){var P=this.subscribers[U];if(P){P.fn.call(this.scope,this.type,arguments,P.obj);}}};yui.CustomEvent.prototype.unsubscribeAll=function(){for(var U=0;U<this.subscribers.length;++U){this._delete(U);}};yui.CustomEvent.prototype._delete=function(U){var P=this.subscribers[U];if(P){delete P.fn;delete P.obj;}delete this.subscribers[U];};yui.Subscriber=function(P,U){this.fn=P;this.obj=U||null;};yui.Subscriber.prototype.contains=function(U,P){return (this.fn==U&&this.obj==P);};yui=window.yui||{};yui.Event=new function(){var U=this;this.loadComplete=false;this.listeners=[];this.delayedListeners=[];this.unloadListeners=[];this.customEvents=[];this.legacyEvents=[];this.legacyHandlers=[];this.EL=0;this.TYPE=1;this.FN=2;this.WFN=3;this.SCOPE=3;this.isSafari=(navigator.userAgent.match(/safari/gi));this.isIE=(!this.isSafari&&navigator.userAgent.match(/msie/gi));this.addListener=function(G,Z,C,Q){if(this._isValidCollection(G)){for(var l=0;l<G.length;++l){this.on(G[l],Z,C,Q);}return ;}else{if(typeof G=="string"){if(this.loadComplete){G=this.getEl(G);}else{this.delayedListeners[this.delayedListeners.length]=[G,Z,C,Q];return ;}}}if(!G){return ;}if("unload"==Z&&Q!==this){this.unloadListeners[this.unloadListeners.length]=[G,Z,C,Q];return ;}var j=function(J){return C.call(G,U.getEvent(J),Q);};var a=[G,Z,C,j];var o=this.listeners.length;this.listeners[o]=a;if(this.useLegacyEvent(G,Z)){var P=this.getLegacyIndex(G,Z);if(P==-1){P=this.legacyEvents.length;this.legacyEvents[P]=[G,Z,G["on"+Z]];this.legacyHandlers[P]=[];G["on"+Z]=function(J){U.fireLegacyEvent(U.getEvent(J),P);};}this.legacyHandlers[P].push(o);}else{if(G.addEventListener){G.addEventListener(Z,j,false);}else{if(G.attachEvent){G.attachEvent("on"+Z,j);}}}};this.on=this.addListener;this.fireLegacyEvent=function(Z,P){var j=true;var Q=U.legacyEvents[0];var o=U.legacyHandlers[P];for(i=0;i<o.length;++i){var l=o[i];if(l){var G=U.listeners[l][U.WFN].call(Q,Z);j=(j&&G);}}return j;};this.getLegacyIndex=function(o,j){for(var G=0;G<this.legacyEvents.length;++G){var P=this.legacyEvents[G];if(P&&P[0]==o&&P[1]==j){return G;}}return -1;};this.useLegacyEvent=function(P,G){return ((!P.addEventListener&&!P.attachEvent)||(G=="click"&&this.isSafari));};this.removeListener=function(Z,Q,j){if(typeof Z=="string"){Z=this.getEl(Z);}else{if(this._isValidCollection(Z)){for(var o=0;o<Z.length;++o){this.removeListener(Z[o],Q,j);}return ;}}var G=null;var P=this._getCacheIndex(Z,Q,j);if(P>=0){G=this.listeners[P];}if(!Z||!G){return false;}if(Z.removeEventListener){Z.removeEventListener(Q,G[this.WFN],false);}else{if(Z.detachEvent){Z.detachEvent("on"+Q,G[this.WFN]);}}delete this.listeners[P][this.WFN];delete this.listeners[P][this.FN];delete this.listeners[P];return true;};this.getTarget=function(o,P){var G=o.target||o.srcElement;if(P&&G&&"#text"==G.nodeName){return G.parentNode;}else{return G;}};this.getPageX=function(G){var P=G.pageX;if(!P&&0!==P){P=G.clientX||0;if(this.isIE){P+=this._getScrollLeft();}}return P;};this.getPageY=function(P){var G=P.pageY;if(!G&&0!==G){G=P.clientY||0;if(this.isIE){G+=this._getScrollTop();}}return G;};this.getRelatedTarget=function(G){var P=G.relatedTarget;if(!P){if(G.type=="mouseout"){P=G.toElement;}else{if(G.type=="mouseover"){P=G.fromElement;}}}return P;};this.getTime=function(G){if(!G.time){var P=new Date().getTime();try{G.time=P;}catch(o){return P;}}return G.time;};this.stopEvent=function(P){this.stopPropagation(P);this.preventDefault(P);};this.stopPropagation=function(P){if(P.stopPropagation){P.stopPropagation();}else{P.cancelBubble=true;}};this.preventDefault=function(P){if(P.preventDefault){P.preventDefault();}else{P.returnValue=false;}};this.getEvent=function(G){var P=G||window.event;if(!P){var o=this.getEvent.caller;while(o){P=o.arguments[0];if(P&&Event==P.constructor){break;}o=o.caller;}}return P;};this.getCharCode=function(P){return P.charCode||(P.type=="keypress")?P.keyCode:0;};this._getCacheIndex=function(j,Q,o){for(var G=0;G<this.listeners.length;++G){var P=this.listeners[G];if(P&&P[this.FN]==o&&P[this.EL]==j&&P[this.TYPE]==Q){return G;}}return -1;};this._isValidCollection=function(P){return (P&&P.length&&typeof P!="string"&&!P.alert&&!P.name&&!P.id&&typeof P[0]!="undefined");};this.elCache={};this.getEl=function(P){return document.getElementById(P);};this.clearCache=function(){for(i in this.elCache){delete this.elCache[i];}};this.regCE=function(P){this.customEvents.push(P);};this._load=function(P){U.loadComplete=true;};this._tryPreloadAttach=function(){var o=!this.loadComplete;for(var P=0;P<this.delayedListeners.length;++P){var j=this.delayedListeners[P];if(j){var G=this.getEl(j[this.EL]);if(G){this.on(G,j[this.TYPE],j[this.FN],j[this.SCOPE]);delete this.delayedListeners[P];}}}if(o){setTimeout("yui.Event._tryPreloadAttach()",50);}};this._unload=function(j,o){for(var G=0;G<o.unloadListeners.length;++G){var P=o.unloadListeners[G];if(P){P[o.FN](o.getEvent(j),P[o.SCOPE]);}}if(o.listeners&&o.listeners.length>0){for(G=0;G<o.listeners.length;++G){P=o.listeners[G];if(P){o.removeListener(P[o.EL],P[o.TYPE],P[o.FN]);}}o.clearCache();}for(G=0;G<o.customEvents.length;++G){o.customEvents[G].unsubscribeAll();delete o.customEvents[G];}for(G=0;G<o.legacyEvents.length;++G){delete o.legacyEvents[G][0];delete o.legacyEvents[G];}};this._getScrollLeft=function(){return this._getScroll()[1];};this._getScrollTop=function(){return this._getScroll()[0];};this._getScroll=function(){var P=document.documentElement;db=document.body;if(P&&P.scrollTop){return [P.scrollTop,P.scrollLeft];}else{if(db){return [db.scrollTop,db.scrollLeft];}else{return [0,0];}}};};if(document&&document.body){yui.Event._load();}else{yui.Event.on(window,"load",yui.Event._load,yui.Event);}yui.Event.on(window,"unload",yui.Event._unload,yui.Event);yui.Event._tryPreloadAttach();