YAHOO.util.CustomEvent=function(B,A){this.type=B;this.scope=A||window;this.subscribers=[];if(YAHOO.util.Event){YAHOO.util.Event.regCE(this)}};YAHOO.util.CustomEvent.prototype={subscribe:function(B,C,A){this.subscribers.push(new YAHOO.util.Subscriber(B,C,A))},unsubscribe:function(D,F){var E=false;for(var B=0,A=this.subscribers.length;B<A;++B){var C=this.subscribers[B];if(C&&C.contains(D,F)){this._delete(B);E=true}}return E},fire:function(){for(var B=0,A=this.subscribers.length;B<A;++B){var D=this.subscribers[B];if(D){var C=(D.override)?D.obj:this.scope;D.fn.call(C,this.type,arguments,D.obj)}}},unsubscribeAll:function(){for(var B=0,A=this.subscribers.length;B<A;++B){this._delete(B)}},_delete:function(A){var B=this.subscribers[A];if(B){delete B.fn;delete B.obj}delete this.subscribers[A]}};YAHOO.util.Subscriber=function(B,C,A){this.fn=B;this.obj=C||null;this.override=(A)};YAHOO.util.Subscriber.prototype.contains=function(A,B){return(this.fn==A&&this.obj==B)};if(!YAHOO.util.Event){YAHOO.util.Event=function(){var I=false;var J=[];var F=[];var K=[];var H=[];var G=[];var D=[];var C=0;var E=[];var B=[];var A=0;return{POLL_RETRYS:200,POLL_INTERVAL:50,EL:0,TYPE:1,FN:2,WFN:3,SCOPE:3,ADJ_SCOPE:4,isSafari:(/Safari|Konqueror|KHTML/gi).test(navigator.userAgent),isIE:(!this.isSafari&&!navigator.userAgent.match(/opera/gi)&&navigator.userAgent.match(/msie/gi)),addDelayedListener:function(O,P,N,L,M){F[F.length]=[O,P,N,L,M];if(I){C=this.POLL_RETRYS;this.startTimeout(0)}},startTimeout:function(M){var N=(M||M===0)?M:this.POLL_INTERVAL;var L=this;var O=function(){L._tryPreloadAttach()};this.timeout=setTimeout(O,N)},onAvailable:function(N,L,O,M){E.push({id:N,fn:L,obj:O,override:M});C=this.POLL_RETRYS;this.startTimeout(0)},addListener:function(N,L,U,W,M){if(!U||!U.call){return false}if(this._isValidCollection(N)){var V=true;for(var R=0,T=N.length;R<T;++R){V=(this.on(N[R],L,U,W,M)&&V)}return V}else{if(typeof N=="string"){var Q=this.getEl(N);if(I&&Q){N=Q}else{this.addDelayedListener(N,L,U,W,M);return true}}}if(!N){return false}if("unload"==L&&W!==this){K[K.length]=[N,L,U,W,M];return true}var Y=(M)?W:N;var O=function(Z){return U.call(Y,YAHOO.util.Event.getEvent(Z),W)};var X=[N,L,U,O,Y];var S=J.length;J[S]=X;if(this.useLegacyEvent(N,L)){var P=this.getLegacyIndex(N,L);if(P==-1){P=G.length;B[N.id+L]=P;G[P]=[N,L,N["on"+L]];D[P]=[];N["on"+L]=function(Z){YAHOO.util.Event.fireLegacyEvent(YAHOO.util.Event.getEvent(Z),P)}}D[P].push(S)}else{if(N.addEventListener){N.addEventListener(L,O,false)}else{if(N.attachEvent){N.attachEvent("on"+L,O)}}}return true},fireLegacyEvent:function(R,M){var S=true;var L=D[M];for(var N=0,P=L.length;N<P;++N){var O=L[N];if(O){var T=J[O];if(T&&T[this.WFN]){var U=T[this.ADJ_SCOPE];var Q=T[this.WFN].call(U,R);S=(S&&Q)}else{delete L[N]}}}return S},getLegacyIndex:function(M,N){var L=this.generateId(M)+N;if(typeof B[L]=="undefined"){return -1}else{return B[L]}},useLegacyEvent:function(L,M){if(!L.addEventListener&&!L.attachEvent){return true}else{if(this.isSafari){if("click"==M||"dblclick"==M){return true}}}return false},removeListener:function(M,L,R,P){if(!R||!R.call){return false}if(typeof M=="string"){M=this.getEl(M)}else{if(this._isValidCollection(M)){var S=true;for(var N=0,Q=M.length;N<Q;++N){S=(this.removeListener(M[N],L,R)&&S)}return S}}if("unload"==L){for(N=0,Q=K.length;N<Q;N++){var T=K[N];if(T&&T[0]==M&&T[1]==L&&T[2]==R){delete K[N];return true}}return false}var O=null;if("undefined"==typeof P){P=this._getCacheIndex(M,L,R)}if(P>=0){O=J[P]}if(!M||!O){return false}if(M.removeEventListener){M.removeEventListener(L,O[this.WFN],false)}else{if(M.detachEvent){M.detachEvent("on"+L,O[this.WFN])}}delete J[P][this.WFN];delete J[P][this.FN];delete J[P];return true},getTarget:function(N,M){var L=N.target||N.srcElement;if(M&&L&&"#text"==L.nodeName){return L.parentNode}else{return L}},getPageX:function(M){var L=M.pageX;if(!L&&0!==L){L=M.clientX||0;if(this.isIE){L+=this._getScrollLeft()}}return L},getPageY:function(L){var M=L.pageY;if(!M&&0!==M){M=L.clientY||0;if(this.isIE){M+=this._getScrollTop()}}return M},getXY:function(L){return[this.getPageX(L),this.getPageY(L)]},getRelatedTarget:function(M){var L=M.relatedTarget;if(!L){if(M.type=="mouseout"){L=M.toElement}else{if(M.type=="mouseover"){L=M.fromElement}}}return L},getTime:function(M){if(!M.time){var L=new Date().getTime();try{M.time=L}catch(N){return L}}return M.time},stopEvent:function(L){this.stopPropagation(L);this.preventDefault(L)},stopPropagation:function(L){if(L.stopPropagation){L.stopPropagation()}else{L.cancelBubble=true}},preventDefault:function(L){if(L.preventDefault){L.preventDefault()}else{L.returnValue=false}},getEvent:function(M){var L=M||window.event;if(!L){var N=this.getEvent.caller;while(N){L=N.arguments[0];if(L&&Event==L.constructor){break}N=N.caller}}return L},getCharCode:function(L){return L.charCode||((L.type=="keypress")?L.keyCode:0)},_getCacheIndex:function(P,Q,O){for(var N=0,M=J.length;N<M;++N){var L=J[N];if(L&&L[this.FN]==O&&L[this.EL]==P&&L[this.TYPE]==Q){return N}}return -1},generateId:function(L){var M=L.id;if(!M){M="yuievtautoid-"+(A++);L.id=M}return M},_isValidCollection:function(L){return(L&&L.length&&typeof L!="string"&&!L.tagName&&!L.alert&&typeof L[0]!="undefined")},elCache:{},getEl:function(L){return document.getElementById(L)},clearCache:function(){},regCE:function(L){H.push(L)},_load:function(L){I=true},_tryPreloadAttach:function(){if(this.locked){return false}this.locked=true;var Q=!I;if(!Q){Q=(C>0)}var R=[];for(var M=0,L=F.length;M<L;++M){var S=F[M];if(S){var O=this.getEl(S[this.EL]);if(O){this.on(O,S[this.TYPE],S[this.FN],S[this.SCOPE],S[this.ADJ_SCOPE]);delete F[M]}else{R.push(S)}}}F=R;notAvail=[];for(M=0,L=E.length;M<L;++M){var P=E[M];if(P){O=this.getEl(P.id);if(O){var N=(P.override)?P.obj:O;P.fn.call(N,P.obj);delete E[M]}else{notAvail.push(P)}}}C=(R.length===0&&notAvail.length===0)?0:C-1;if(Q){this.startTimeout()}this.locked=false},_unload:function(Q,P){for(var N=0,L=K.length;N<L;++N){var M=K[N];if(M){var O=(M[this.ADJ_SCOPE])?M[this.SCOPE]:window;M[this.FN].call(O,this.getEvent(Q),M[this.SCOPE])}}if(J&&J.length>0){for(N=0,L=J.length;N<L;++N){M=J[N];if(M){this.removeListener(M[this.EL],M[this.TYPE],M[this.FN],N)}}this.clearCache()}for(N=0,L=H.length;N<L;++N){H[N].unsubscribeAll();delete H[N]}for(N=0,L=G.length;N<L;++N){delete G[N][0];delete G[N]}},_getScrollLeft:function(){return this._getScroll()[1]},_getScrollTop:function(){return this._getScroll()[0]},_getScroll:function(){var L=document.documentElement;db=document.body;if(L&&L.scrollTop){return[L.scrollTop,L.scrollLeft]}else{if(db){return[db.scrollTop,db.scrollLeft]}else{return[0,0]}}}}}();YAHOO.util.Event.on=YAHOO.util.Event.addListener;if(document&&document.body){YAHOO.util.Event._load()}else{YAHOO.util.Event.on(window,"load",YAHOO.util.Event._load,YAHOO.util.Event,true)}YAHOO.util.Event.on(window,"unload",YAHOO.util.Event._unload,YAHOO.util.Event,true);YAHOO.util.Event._tryPreloadAttach()}