YAHOO.util.CustomEvent=function(d,b,c,a){this.type=d;this.scope=b||window;this.silent=c;this.signature=a||YAHOO.util.CustomEvent.LIST;this.subscribers=[];if(!this.silent){}var e="_YUICEOnSubscribe";if(d!==e){this.subscribeEvent=new YAHOO.util.CustomEvent(e,this,true)}};YAHOO.util.CustomEvent.LIST=0;YAHOO.util.CustomEvent.FLAT=1;YAHOO.util.CustomEvent.prototype={subscribe:function(b,c,a){if(this.subscribeEvent){this.subscribeEvent.fire(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(){var a=this.subscribers.length;if(!a&&this.silent){return true}var c=[],b=true,d;for(d=0;d<arguments.length;++d){c.push(arguments[d])}var g=c.length;if(!this.silent){}for(d=0;d<a;++d){var f=this.subscribers[d];if(f){if(!this.silent){}var e=f.getScope(this.scope);if(this.signature==YAHOO.util.CustomEvent.FLAT){var h=null;if(c.length>0){h=c[0]}b=f.fn.call(e,h,f.obj)}else{b=f.fn.call(e,this.type,c,f.obj)}if(false===b){if(!this.silent){}return false}}}return true},unsubscribeAll:function(){for(var b=0,a=this.subscribers.length;b<a;++b){this._delete(a-1-b)}},_delete:function(a){var b=this.subscribers[a];if(b){delete b.fn;delete b.obj}this.subscribers.splice(a,1)},toString:function(){return"CustomEvent: '"+this.type+"', scope: "+this.scope}};YAHOO.util.Subscriber=function(b,c,a){this.fn=b;this.obj=c||null;this.override=a};YAHOO.util.Subscriber.prototype.getScope=function(a){if(this.override){if(this.override===true){return this.obj}else{return this.override}}return a};YAHOO.util.Subscriber.prototype.contains=function(a,b){if(b){return(this.fn==a&&this.obj==b)}else{return(this.fn==a)}};YAHOO.util.Subscriber.prototype.toString=function(){return"Subscriber { obj: "+(this.obj||"")+", override: "+(this.override||"no")+" }"};if(!YAHOO.util.Event){YAHOO.util.Event=function(){var g=false;var h=[];var i=[];var f=[];var d=[];var c=0;var e=[];var b=[];var a=0;return{POLL_RETRYS:200,POLL_INTERVAL:20,EL:0,TYPE:1,FN:2,WFN:3,OBJ: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)),_interval:null,startInterval:function(){if(!this._interval){var j=this;var k=function(){j._tryPreloadAttach()};this._interval=setInterval(k,this.POLL_INTERVAL)}},onAvailable:function(l,j,m,k){e.push({id:l,fn:j,obj:m,override:k,checkReady:false});c=this.POLL_RETRYS;this.startInterval()},onContentReady:function(l,j,m,k){e.push({id:l,fn:j,obj:m,override:k,checkReady:true});c=this.POLL_RETRYS;this.startInterval()},addListener:function(l,j,u,p,k){if(!u||!u.call){return false}if(this._isValidCollection(l)){var v=true;for(var q=0,s=l.length;q<s;++q){v=this.on(l[q],j,u,p,k)&&v}return v}else{if(typeof l=="string"){var o=this.getEl(l);if(o){l=o}else{this.onAvailable(l,function(){YAHOO.util.Event.on(l,j,u,p,k)});return true}}}if(!l){return false}if("unload"==j&&p!==this){i[i.length]=[l,j,u,p,k];return true}var x=l;if(k){if(k===true){x=p}else{x=k}}var m=function(y){return u.call(x,YAHOO.util.Event.getEvent(y),p)};var w=[l,j,u,m,x];var r=h.length;h[r]=w;if(this.useLegacyEvent(l,j)){var n=this.getLegacyIndex(l,j);if(n==-1||l!=f[n][0]){n=f.length;b[l.id+j]=n;f[n]=[l,j,l["on"+j]];d[n]=[];l["on"+j]=function(y){YAHOO.util.Event.fireLegacyEvent(YAHOO.util.Event.getEvent(y),n)}}d[n].push(w)}else{try{this._simpleAdd(l,j,m,false)}catch(t){this.removeListener(l,j,u);return false}}return true},fireLegacyEvent:function(o,k){var p=true;var j=d[k];for(var l=0,m=j.length;l<m;++l){var q=j[l];if(q&&q[this.WFN]){var r=q[this.ADJ_SCOPE];var n=q[this.WFN].call(r,o);p=(p&&n)}}return p},getLegacyIndex:function(k,l){var j=this.generateId(k)+l;if(typeof b[j]=="undefined"){return -1}else{return b[j]}},useLegacyEvent:function(j,k){if(!j.addEventListener&&!j.attachEvent){return true}else{if(this.isSafari){if("click"==k||"dblclick"==k){return true}}}return false},removeListener:function(k,j,s){var n,q;if(typeof k=="string"){k=this.getEl(k)}else{if(this._isValidCollection(k)){var t=true;for(n=0,q=k.length;n<q;++n){t=(this.removeListener(k[n],j,s)&&t)}return t}}if(!s||!s.call){return this.purgeElement(k,false,j)}if("unload"==j){for(n=0,q=i.length;n<q;n++){var u=i[n];if(u&&u[0]==k&&u[1]==j&&u[2]==s){i.splice(n,1);return true}}return false}var o=null;var p=arguments[3];if("undefined"==typeof p){p=this._getCacheIndex(k,j,s)}if(p>=0){o=h[p]}if(!k||!o){return false}if(this.useLegacyEvent(k,j)){var m=this.getLegacyIndex(k,j);var l=d[m];if(l){for(n=0,q=l.length;n<q;++n){u=l[n];if(u&&u[this.EL]==k&&u[this.TYPE]==j&&u[this.FN]==s){l.splice(n,1);break}}}}else{try{this._simpleRemove(k,j,o[this.WFN],false)}catch(r){return false}}delete h[p][this.WFN];delete h[p][this.FN];h.splice(p,1);return true},getTarget:function(l,k){var j=l.target||l.srcElement;return this.resolveTextNode(j)},resolveTextNode:function(j){if(j&&3==j.nodeType){return j.parentNode}else{return j}},getPageX:function(k){var j=k.pageX;if(!j&&0!==j){j=k.clientX||0;if(this.isIE){j+=this._getScrollLeft()}}return j},getPageY:function(j){var k=j.pageY;if(!k&&0!==k){k=j.clientY||0;if(this.isIE){k+=this._getScrollTop()}}return k},getXY:function(j){return[this.getPageX(j),this.getPageY(j)]},getRelatedTarget:function(k){var j=k.relatedTarget;if(!j){if(k.type=="mouseout"){j=k.toElement}else{if(k.type=="mouseover"){j=k.fromElement}}}return this.resolveTextNode(j)},getTime:function(k){if(!k.time){var j=new Date().getTime();try{k.time=j}catch(l){return j}}return k.time},stopEvent:function(j){this.stopPropagation(j);this.preventDefault(j)},stopPropagation:function(j){if(j.stopPropagation){j.stopPropagation()}else{j.cancelBubble=true}},preventDefault:function(j){if(j.preventDefault){j.preventDefault()}else{j.returnValue=false}},getEvent:function(k){var j=k||window.event;if(!j){var l=this.getEvent.caller;while(l){j=l.arguments[0];if(j&&Event==j.constructor){break}l=l.caller}}return j},getCharCode:function(j){return j.charCode||j.keyCode||0},_getCacheIndex:function(n,o,m){for(var l=0,k=h.length;l<k;++l){var j=h[l];if(j&&j[this.FN]==m&&j[this.EL]==n&&j[this.TYPE]==o){return l}}return -1},generateId:function(j){var k=j.id;if(!k){k="yuievtautoid-"+a;++a;j.id=k}return k},_isValidCollection:function(j){return(j&&j.length&&typeof j!="string"&&!j.tagName&&!j.alert&&typeof j[0]!="undefined")},elCache:{},getEl:function(j){return document.getElementById(j)},clearCache:function(){},_load:function(k){g=true;var j=YAHOO.util.Event;if(this.isIE){j._simpleRemove(window,"load",j._load)}},_tryPreloadAttach:function(){if(this.locked){return false}this.locked=true;var p=!g;if(!p){p=(c>0)}var o=[];for(var k=0,j=e.length;k<j;++k){var n=e[k];if(n){var m=this.getEl(n.id);if(m){if(!n.checkReady||g||m.nextSibling||(document&&document.body)){var l=m;if(n.override){if(n.override===true){l=n.obj}else{l=n.override}}n.fn.call(l,n.obj);e[k]=null}}else{o.push(n)}}}c=(o.length===0)?0:c-1;if(p){this.startInterval()}else{clearInterval(this._interval);this._interval=null}this.locked=false;return true},purgeElement:function(n,o,q){var p=this.getListeners(n,q);if(p){for(var m=0,j=p.length;m<j;++m){var k=p[m];this.removeListener(n,k.type,k.fn)}}if(o&&n&&n.childNodes){for(m=0,j=n.childNodes.length;m<j;++m){this.purgeElement(n.childNodes[m],o,q)}}},getListeners:function(n,p){var o=[];if(h&&h.length>0){for(var m=0,j=h.length;m<j;++m){var k=h[m];if(k&&k[this.EL]===n&&(!p||p===k[this.TYPE])){o.push({type:k[this.TYPE],fn:k[this.FN],obj:k[this.OBJ],adjust:k[this.ADJ_SCOPE],index:m})}}}return(o.length)?o:null},_unload:function(s){var r=YAHOO.util.Event,p,o,m,k,n;for(p=0,k=i.length;p<k;++p){m=i[p];if(m){var q=window;if(m[r.ADJ_SCOPE]){if(m[r.ADJ_SCOPE]===true){q=m[r.OBJ]}else{q=m[r.ADJ_SCOPE]}}m[r.FN].call(q,r.getEvent(s),m[r.OBJ]);i[p]=null;m=null;q=null}}i=null;if(h&&h.length>0){o=h.length;while(o){n=o-1;m=h[n];if(m){r.removeListener(m[r.EL],m[r.TYPE],m[r.FN],n)}o=o-1}m=null;r.clearCache()}for(p=0,k=f.length;p<k;++p){f[p][0]=null;f[p]=null}f=null;r._simpleRemove(window,"unload",r._unload)},_getScrollLeft:function(){return this._getScroll()[1]},_getScrollTop:function(){return this._getScroll()[0]},_getScroll:function(){var j=document.documentElement,k=document.body;if(j&&(j.scrollTop||j.scrollLeft)){return[j.scrollTop,j.scrollLeft]}else{if(k){return[k.scrollTop,k.scrollLeft]}else{return[0,0]}}},_simpleAdd:function(){if(window.addEventListener){return function(l,m,k,j){l.addEventListener(m,k,(j))}}else{if(window.attachEvent){return function(l,m,k,j){l.attachEvent("on"+m,k)}}else{return function(){}}}}(),_simpleRemove:function(){if(window.removeEventListener){return function(l,m,k,j){l.removeEventListener(m,k,(j))}}else{if(window.detachEvent){return function(k,l,j){k.detachEvent("on"+l,j)}}else{return function(){}}}}()}}();(function(){var a=YAHOO.util.Event;a.on=a.addListener;if(document&&document.body){a._load()}else{a._simpleAdd(window,"load",a._load)}a._simpleAdd(window,"unload",a._unload);a._tryPreloadAttach()})()}YAHOO.util.EventProvider=function(){};YAHOO.util.EventProvider.prototype={__yui_events:null,__yui_subscribers:null,subscribe:function(a,c,f,e){this.__yui_events=this.__yui_events||{};var d=this.__yui_events[a];if(d){d.subscribe(c,f,e)}else{this.__yui_subscribers=this.__yui_subscribers||{};var b=this.__yui_subscribers;if(!b[a]){b[a]=[]}b[a].push({fn:c,obj:f,override:e})}},unsubscribe:function(a,b,d){this.__yui_events=this.__yui_events||{};var c=this.__yui_events[a];if(c){return c.unsubscribe(b,d)}else{return false}},createEvent:function(g,d){this.__yui_events=this.__yui_events||{};var a=d||{};var j=this.__yui_events;if(j[g]){}else{var h=a.scope||this;var e=a.silent||null;var b=new YAHOO.util.CustomEvent(g,h,e,YAHOO.util.CustomEvent.FLAT);j[g]=b;if(a.onSubscribeCallback){b.subscribeEvent.subscribe(a.onSubscribeCallback)}this.__yui_subscribers=this.__yui_subscribers||{};var f=this.__yui_subscribers[g];if(f){for(var c=0;c<f.length;++c){b.subscribe(f[c].fn,f[c].obj,f[c].override)}}}return j[g]},fireEvent:function(e,d,a,c){this.__yui_events=this.__yui_events||{};var g=this.__yui_events[e];if(g){var b=[];for(var f=1;f<arguments.length;++f){b.push(arguments[f])}return g.fire.apply(g,b)}else{return null}},hasEvent:function(a){if(this.__yui_events){if(this.__yui_events[a]){return true}}return false}};