YAHOO.util.Attribute=function(D,C){if(C){this.owner=C;this.configure(D,true)}};YAHOO.util.Attribute.prototype={name:undefined,value:null,owner:null,readOnly:false,writeOnce:false,_initialConfig:null,_written:false,method:null,setter:null,getter:null,validator:null,getValue:function(){var B=this.value;if(this.getter){B=this.getter.call(this.owner,this.name)}return B},setValue:function(H,L){var I,G=this.owner,K=this.name;var J={type:K,prevValue:this.getValue(),newValue:H};if(this.readOnly||(this.writeOnce&&this._written)){return false}if(this.validator&&!this.validator.call(G,H)){return false}if(!L){I=G.fireBeforeChangeEvent(J);if(I===false){return false}}if(this.setter){H=this.setter.call(G,H,this.name);if(H===undefined){}}if(this.method){this.method.call(G,H,this.name)}this.value=H;this._written=true;J.type=K;if(!L){this.owner.fireChangeEvent(J)}return true},configure:function(F,E){F=F||{};if(E){this._written=false}this._initialConfig=this._initialConfig||{};for(var D in F){if(F.hasOwnProperty(D)){this[D]=F[D];if(E){this._initialConfig[D]=F[D]}}}},resetValue:function(){return this.setValue(this._initialConfig.value)},resetConfig:function(){this.configure(this._initialConfig,true)},refresh:function(B){this.setValue(this.value,B)}};(function(){var B=YAHOO.util.Lang;YAHOO.util.AttributeProvider=function(){};YAHOO.util.AttributeProvider.prototype={_configs:null,get:function(A){this._configs=this._configs||{};var D=this._configs[A];if(!D||!this._configs.hasOwnProperty(A)){return null}return D.getValue()},set:function(F,A,H){this._configs=this._configs||{};var G=this._configs[F];if(!G){return false}return G.setValue(A,H)},getAttributeKeys:function(){this._configs=this._configs;var A=[],D;for(D in this._configs){if(B.hasOwnProperty(this._configs,D)&&!B.isUndefined(this._configs[D])){A[A.length]=D}}return A},setAttributes:function(A,F){for(var E in A){if(B.hasOwnProperty(A,E)){this.set(E,A[E],F)}}},resetValue:function(A,D){this._configs=this._configs||{};if(this._configs[A]){this.set(A,this._configs[A]._initialConfig.value,D);return true}return false},refresh:function(G,I){this._configs=this._configs||{};var A=this._configs;G=((B.isString(G))?[G]:G)||this.getAttributeKeys();for(var H=0,J=G.length;H<J;++H){if(A.hasOwnProperty(G[H])){this._configs[G[H]].refresh(I)}}},register:function(D,A){this.setAttributeConfig(D,A)},getAttributeConfig:function(E){this._configs=this._configs||{};var F=this._configs[E]||{};var A={};for(E in F){if(B.hasOwnProperty(F,E)){A[E]=F[E]}}return A},setAttributeConfig:function(F,E,A){this._configs=this._configs||{};E=E||{};if(!this._configs[F]){E.name=F;this._configs[F]=this.createAttribute(E)}else{this._configs[F].configure(E,A)}},configureAttribute:function(F,E,A){this.setAttributeConfig(F,E,A)},resetAttributeConfig:function(A){this._configs=this._configs||{};this._configs[A].resetConfig()},subscribe:function(D,A){this._events=this._events||{};if(!(D in this._events)){this._events[D]=this.createEvent(D)}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments)},on:function(){this.subscribe.apply(this,arguments)},addListener:function(){this.subscribe.apply(this,arguments)},fireBeforeChangeEvent:function(A){var D="before";D+=A.type.charAt(0).toUpperCase()+A.type.substr(1)+"Change";A.type=D;return this.fireEvent(A.type,A)},fireChangeEvent:function(A){A.type+="Change";return this.fireEvent(A.type,A)},createAttribute:function(A){return new YAHOO.util.Attribute(A,this)}};YAHOO.augment(YAHOO.util.AttributeProvider,YAHOO.util.EventProvider)})();(function(){var F=YAHOO.util.Dom,E=YAHOO.util.AttributeProvider;var D=function(B,A){this.init.apply(this,arguments)};D.DOM_EVENTS={click:true,dblclick:true,keydown:true,keypress:true,keyup:true,mousedown:true,mousemove:true,mouseout:true,mouseover:true,mouseup:true,focus:true,blur:true,submit:true,change:true};D.prototype={DOM_EVENTS:null,DEFAULT_HTML_SETTER:function(A,C){var B=this.get("element");if(B){B[C]=A}},DEFAULT_HTML_GETTER:function(C){var B=this.get("element"),A;if(B){A=B[C]}return A},appendChild:function(A){A=A.get?A.get("element"):A;return this.get("element").appendChild(A)},getElementsByTagName:function(A){return this.get("element").getElementsByTagName(A)},hasChildNodes:function(){return this.get("element").hasChildNodes()},insertBefore:function(B,A){B=B.get?B.get("element"):B;A=(A&&A.get)?A.get("element"):A;return this.get("element").insertBefore(B,A)},removeChild:function(A){A=A.get?A.get("element"):A;return this.get("element").removeChild(A)},replaceChild:function(B,A){B=B.get?B.get("element"):B;A=A.get?A.get("element"):A;return this.get("element").replaceChild(B,A)},initAttributes:function(A){},addListener:function(B,C,A,J){var K=this.get("element")||this.get("id");J=J||this;var L=this;if(!this._events[B]){if(K&&this.DOM_EVENTS[B]){YAHOO.util.Event.addListener(K,B,function(G){if(G.srcElement&&!G.target){G.target=G.srcElement}L.fireEvent(B,G)},A,J)}this.createEvent(B,this)}return YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments)},on:function(){return this.addListener.apply(this,arguments)},subscribe:function(){return this.addListener.apply(this,arguments)},removeListener:function(A,B){return this.unsubscribe.apply(this,arguments)},addClass:function(A){F.addClass(this.get("element"),A)},getElementsByClassName:function(A,B){return F.getElementsByClassName(A,B,this.get("element"))},hasClass:function(A){return F.hasClass(this.get("element"),A)},removeClass:function(A){return F.removeClass(this.get("element"),A)},replaceClass:function(A,B){return F.replaceClass(this.get("element"),A,B)},setStyle:function(A,B){return F.setStyle(this.get("element"),A,B)},getStyle:function(A){return F.getStyle(this.get("element"),A)},fireQueue:function(){var B=this._queue;for(var A=0,C=B.length;A<C;++A){this[B[A][0]].apply(this,B[A][1])}},appendTo:function(B,A){B=(B.get)?B.get("element"):F.get(B);this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:B});A=(A&&A.get)?A.get("element"):F.get(A);var C=this.get("element");if(!C){return false}if(!B){return false}if(C.parent!=B){if(A){B.insertBefore(C,A)}else{B.appendChild(C)}}this.fireEvent("appendTo",{type:"appendTo",target:B});return C},get:function(C){var A=this._configs||{},B=A.element;if(B&&!A[C]&&!YAHOO.lang.isUndefined(B.value[C])){this._setHTMLAttrConfig(C)}return E.prototype.get.call(this,C)},setAttributes:function(A,K){var M={},C=this._configOrder;for(var B=0,N=C.length;B<N;++B){if(A[C[B]]!==undefined){M[C[B]]=true;this.set(C[B],A[C[B]],K)}}for(var L in A){if(A.hasOwnProperty(L)&&!M[L]){this.set(L,A[L],K)}}},set:function(C,A,H){var B=this.get("element");if(!B){this._queue[this._queue.length]=["set",arguments];if(this._configs[C]){this._configs[C].value=A}return }if(!this._configs[C]&&!YAHOO.lang.isUndefined(B[C])){this._setHTMLAttrConfig(C)}return E.prototype.set.apply(this,arguments)},setAttributeConfig:function(C,B,A){this._configOrder.push(C);E.prototype.setAttributeConfig.apply(this,arguments)},createEvent:function(A,B){this._events[A]=true;return E.prototype.createEvent.apply(this,arguments)},init:function(A,B){this._initElement(A,B)},destroy:function(){var A=this.get("element");YAHOO.util.Event.purgeElement(A,true);this.unsubscribeAll();if(A&&A.parentNode){A.parentNode.removeChild(A)}this._queue=[];this._events={};this._configs={};this._configOrder=[]},_initElement:function(C,I){this._queue=this._queue||[];this._events=this._events||{};this._configs=this._configs||{};this._configOrder=[];I=I||{};I.element=I.element||C||null;var A=false;var J=D.DOM_EVENTS;this.DOM_EVENTS=this.DOM_EVENTS||{};for(var B in J){if(J.hasOwnProperty(B)){this.DOM_EVENTS[B]=J[B]}}if(typeof I.element==="string"){this._setHTMLAttrConfig("id",{value:I.element})}if(F.get(I.element)){A=true;this._initHTMLElement(I);this._initContent(I)}YAHOO.util.Event.onAvailable(I.element,function(){if(!A){this._initHTMLElement(I)}this.fireEvent("available",{type:"available",target:F.get(I.element)})},this,true);YAHOO.util.Event.onContentReady(I.element,function(){if(!A){this._initContent(I)}this.fireEvent("contentReady",{type:"contentReady",target:F.get(I.element)})},this,true)},_initHTMLElement:function(A){this.setAttributeConfig("element",{value:F.get(A.element),readOnly:true})},_initContent:function(A){this.initAttributes(A);this.setAttributes(A,true);this.fireQueue()},_setHTMLAttrConfig:function(C,A){var B=this.get("element");A=A||{};A.name=C;A.setter=A.setter||this.DEFAULT_HTML_SETTER;A.getter=A.getter||this.DEFAULT_HTML_GETTER;A.value=A.value||B[C];this._configs[C]=new YAHOO.util.Attribute(A,this)}};YAHOO.augment(D,E);YAHOO.util.Element=D})();YAHOO.register("element",YAHOO.util.Element,{version:"2.7.0",build:"1796"});