if(typeof YAHOO=="undefined"){var YAHOO={};}YAHOO.namespace=function(){var A=arguments,E=null,C,B,D;for(C=0;C<A.length;C=C+1){D=A[C].split(".");E=YAHOO;for(B=(D[0]=="YAHOO")?1:0;B<D.length;B=B+1){E[D[B]]=E[D[B]]||{};E=E[D[B]];}}return E;};YAHOO.log=function(D,A,C){var B=YAHOO.widget.Logger;if(B&&B.log){return B.log(D,A,C);}else{return false;}};YAHOO.register=function(A,E,D){var I=YAHOO.env.modules;if(!I[A]){I[A]={versions:[],builds:[]};}var B=I[A],H=D.version,G=D.build,F=YAHOO.env.listeners;B.name=A;B.version=H;B.build=G;B.versions.push(H);B.builds.push(G);B.mainClass=E;for(var C=0;C<F.length;C=C+1){F[C](B);}if(E){E.VERSION=H;E.BUILD=G;}else{YAHOO.log("mainClass is undefined for module "+A,"warn");}};YAHOO.env=YAHOO.env||{modules:[],listeners:[]};YAHOO.env.getVersion=function(A){return YAHOO.env.modules[A]||null;};YAHOO.env.ua=function(){var C={ie:0,opera:0,gecko:0,webkit:0};var B=navigator.userAgent,A;if((/KHTML/).test(B)){C.webkit=1;}A=B.match(/AppleWebKit\/([^\s]*)/);if(A&&A[1]){C.webkit=parseFloat(A[1]);}if(!C.webkit){A=B.match(/Opera[\s\/]([^\s]*)/);if(A&&A[1]){C.opera=parseFloat(A[1]);}else{A=B.match(/MSIE\s([^;]*)/);if(A&&A[1]){C.ie=parseFloat(A[1]);}else{A=B.match(/Gecko\/([^\s]*)/);if(A){C.gecko=1;A=B.match(/rv:([^\s\)]*)/);if(A&&A[1]){C.gecko=parseFloat(A[1]);}}}}}return C;}();(function(){YAHOO.namespace("util","widget","example");if("undefined"!==typeof YAHOO_config){var B=YAHOO_config.listener,A=YAHOO.env.listeners,D=true,C;if(B){for(C=0;C<A.length;C=C+1){if(A[C]==B){D=false;break;}}if(D){A.push(B);}}}})();YAHOO.lang={isArray:function(B){if(B){var A=YAHOO.lang;return A.isNumber(B.length)&&A.isFunction(B.splice)&&!A.hasOwnProperty(B.length);}return false;},isBoolean:function(A){return typeof A==="boolean";},isFunction:function(A){return typeof A==="function";},isNull:function(A){return A===null;},isNumber:function(A){return typeof A==="number"&&isFinite(A);},isObject:function(A){return(A&&(typeof A==="object"||YAHOO.lang.isFunction(A)))||false;},isString:function(A){return typeof A==="string";},isUndefined:function(A){return typeof A==="undefined";},hasOwnProperty:function(A,B){if(Object.prototype.hasOwnProperty){return A.hasOwnProperty(B);}return !YAHOO.lang.isUndefined(A[B])&&A.constructor.prototype[B]!==A[B];},_IEEnumFix:function(C,B){if(YAHOO.env.ua.ie){var E=["toString","valueOf"],A;for(A=0;A<E.length;A=A+1){var F=E[A],D=B[F];if(YAHOO.lang.isFunction(D)&&D!=Object.prototype[F]){C[F]=D;}}}},extend:function(D,E,C){if(!E||!D){throw new Error("YAHOO.lang.extend failed, please check that all dependencies are included.");}var B=function(){};B.prototype=E.prototype;D.prototype=new B();D.prototype.constructor=D;D.superclass=E.prototype;if(E.prototype.constructor==Object.prototype.constructor){E.prototype.constructor=E;}if(C){for(var A in C){D.prototype[A]=C[A];}YAHOO.lang._IEEnumFix(D.prototype,C);}},augmentObject:function(E,D){if(!D||!E){throw new Error("Absorb failed, verify dependencies.");}var A=arguments,C,F,B=A[2];if(B&&B!==true){for(C=2;C<A.length;C=C+1){E[A[C]]=D[A[C]];}}else{for(F in D){if(B||!E[F]){E[F]=D[F];}}YAHOO.lang._IEEnumFix(E,D);}},augmentProto:function(D,C){if(!C||!D){throw new Error("Augment failed, verify dependencies.");}var A=[D.prototype,C.prototype];for(var B=2;B<arguments.length;B=B+1){A.push(arguments[B]);}YAHOO.lang.augmentObject.apply(this,A);},dump:function(A,G){var C=YAHOO.lang,D,F,I=[],J="{...}",B="f(){...}",H=", ",E=" => ";if(!C.isObject(A)){return A+"";}else{if(A instanceof Date||("nodeType" in A&&"tagName" in A)){return A;}else{if(C.isFunction(A)){return B;}}}G=(C.isNumber(G))?G:3;if(C.isArray(A)){I.push("[");for(D=0,F=A.length;D<F;D=D+1){if(C.isObject(A[D])){I.push((G>0)?C.dump(A[D],G-1):J);}else{I.push(A[D]);}I.push(H);}if(I.length>1){I.pop();}I.push("]");}else{I.push("{");for(D in A){if(C.hasOwnProperty(A,D)){I.push(D+E);if(C.isObject(A[D])){I.push((G>0)?C.dump(A[D],G-1):J);}else{I.push(A[D]);}I.push(H);}}if(I.length>1){I.pop();}I.push("}");}return I.join("");},substitute:function(Q,B,J){var G,F,E,M,N,P,D=YAHOO.lang,L=[],C,H="dump",K=" ",A="{",O="}";for(;;){G=Q.lastIndexOf(A);if(G<0){break;}F=Q.indexOf(O,G);if(G+1>=F){break;}C=Q.substring(G+1,F);M=C;P=null;E=M.indexOf(K);if(E>-1){P=M.substring(E+1);M=M.substring(0,E);}N=B[M];if(J){N=J(M,N,P);}if(D.isObject(N)){if(D.isArray(N)){N=D.dump(N,parseInt(P,10));}else{P=P||"";var I=P.indexOf(H);if(I>-1){P=P.substring(4);}if(N.toString===Object.prototype.toString||I>-1){N=D.dump(N,parseInt(P,10));}else{N=N.toString();}}}else{if(!D.isString(N)&&!D.isNumber(N)){N="~-"+L.length+"-~";L[L.length]=C;}}Q=Q.substring(0,G)+N+Q.substring(F+1);}for(G=L.length-1;G>=0;G=G-1){Q=Q.replace(new RegExp("~-"+G+"-~"),"{"+L[G]+"}","g");}return Q;},trim:function(A){try{return A.replace(/^\s+|\s+$/g,"");}catch(B){return A;}},merge:function(){var C={},A=arguments,B;for(B=0;B<A.length;B=B+1){YAHOO.lang.augmentObject(C,A[B],true);}return C;},isValue:function(B){var A=YAHOO.lang;return(A.isObject(B)||A.isString(B)||A.isNumber(B)||A.isBoolean(B));}};YAHOO.util.Lang=YAHOO.lang;YAHOO.lang.augment=YAHOO.lang.augmentProto;YAHOO.augment=YAHOO.lang.augmentProto;YAHOO.extend=YAHOO.lang.extend;YAHOO.register("yahoo",YAHOO,{version:"2.3.1",build:"541"});(function(){var B=YAHOO.util,K,I,H=0,J={},F={};var C=YAHOO.env.ua.opera,L=YAHOO.env.ua.webkit,A=YAHOO.env.ua.gecko,G=YAHOO.env.ua.ie;var E={HYPHEN:/(-[a-z])/i,ROOT_TAG:/^body|html$/i};var M=function(O){if(!E.HYPHEN.test(O)){return O;}if(J[O]){return J[O];}var P=O;while(E.HYPHEN.exec(P)){P=P.replace(RegExp.$1,RegExp.$1.substr(1).toUpperCase());}J[O]=P;return P;};var N=function(P){var O=F[P];if(!O){O=new RegExp("(?:^|\\s+)"+P+"(?:\\s+|$)");F[P]=O;}return O;};if(document.defaultView&&document.defaultView.getComputedStyle){K=function(O,R){var Q=null;if(R=="float"){R="cssFloat";}var P=document.defaultView.getComputedStyle(O,"");if(P){Q=P[M(R)];}return O.style[R]||Q;};}else{if(document.documentElement.currentStyle&&G){K=function(O,Q){switch(M(Q)){case"opacity":var S=100;try{S=O.filters["DXImageTransform.Microsoft.Alpha"].opacity;}catch(R){try{S=O.filters("alpha").opacity;}catch(R){}}return S/100;case"float":Q="styleFloat";default:var P=O.currentStyle?O.currentStyle[Q]:null;return(O.style[Q]||P);}};}else{K=function(O,P){return O.style[P];};}}if(G){I=function(O,P,Q){switch(P){case"opacity":if(YAHOO.lang.isString(O.style.filter)){O.style.filter="alpha(opacity="+Q*100+")";if(!O.currentStyle||!O.currentStyle.hasLayout){O.style.zoom=1;}}break;case"float":P="styleFloat";default:O.style[P]=Q;}};}else{I=function(O,P,Q){if(P=="float"){P="cssFloat";}O.style[P]=Q;};}var D=function(O,P){return O&&O.nodeType==1&&(!P||P(O));};YAHOO.util.Dom={get:function(Q){if(Q&&(Q.tagName||Q.item)){return Q;}if(YAHOO.lang.isString(Q)||!Q){return document.getElementById(Q);}if(Q.length!==undefined){var R=[];for(var P=0,O=Q.length;P<O;++P){R[R.length]=B.Dom.get(Q[P]);}return R;}return Q;},getStyle:function(O,Q){Q=M(Q);var P=function(R){return K(R,Q);};return B.Dom.batch(O,P,B.Dom,true);},setStyle:function(O,Q,R){Q=M(Q);var P=function(S){I(S,Q,R);};B.Dom.batch(O,P,B.Dom,true);},getXY:function(O){var P=function(R){if((R.parentNode===null||R.offsetParent===null||this.getStyle(R,"display")=="none")&&R!=document.body){return false;}var Q=null;var V=[];var S;var T=R.ownerDocument;if(R.getBoundingClientRect){S=R.getBoundingClientRect();return[S.left+B.Dom.getDocumentScrollLeft(R.ownerDocument),S.top+B.Dom.getDocumentScrollTop(R.ownerDocument)];}else{V=[R.offsetLeft,R.offsetTop];Q=R.offsetParent;var U=this.getStyle(R,"position")=="absolute";if(Q!=R){while(Q){V[0]+=Q.offsetLeft;V[1]+=Q.offsetTop;if(L&&!U&&this.getStyle(Q,"position")=="absolute"){U=true;}Q=Q.offsetParent;}}if(L&&U){V[0]-=R.ownerDocument.body.offsetLeft;V[1]-=R.ownerDocument.body.offsetTop;}}Q=R.parentNode;while(Q.tagName&&!E.ROOT_TAG.test(Q.tagName)){if(B.Dom.getStyle(Q,"display").search(/^inline|table-row.*$/i)){V[0]-=Q.scrollLeft;V[1]-=Q.scrollTop;}Q=Q.parentNode;}return V;};return B.Dom.batch(O,P,B.Dom,true);},getX:function(O){var P=function(Q){return B.Dom.getXY(Q)[0];};return B.Dom.batch(O,P,B.Dom,true);},getY:function(O){var P=function(Q){return B.Dom.getXY(Q)[1];};return B.Dom.batch(O,P,B.Dom,true);},setXY:function(O,R,Q){var P=function(U){var T=this.getStyle(U,"position");if(T=="static"){this.setStyle(U,"position","relative");T="relative";}var W=this.getXY(U);if(W===false){return false;}var V=[parseInt(this.getStyle(U,"left"),10),parseInt(this.getStyle(U,"top"),10)];if(isNaN(V[0])){V[0]=(T=="relative")?0:U.offsetLeft;}if(isNaN(V[1])){V[1]=(T=="relative")?0:U.offsetTop;}if(R[0]!==null){U.style.left=R[0]-W[0]+V[0]+"px";}if(R[1]!==null){U.style.top=R[1]-W[1]+V[1]+"px";}if(!Q){var S=this.getXY(U);if((R[0]!==null&&S[0]!=R[0])||(R[1]!==null&&S[1]!=R[1])){this.setXY(U,R,true);}}};B.Dom.batch(O,P,B.Dom,true);},setX:function(P,O){B.Dom.setXY(P,[O,null]);},setY:function(O,P){B.Dom.setXY(O,[null,P]);},getRegion:function(O){var P=function(Q){if((Q.parentNode===null||Q.offsetParent===null||this.getStyle(Q,"display")=="none")&&Q!=document.body){return false;}var R=B.Region.getRegion(Q);return R;};return B.Dom.batch(O,P,B.Dom,true);},getClientWidth:function(){return B.Dom.getViewportWidth();},getClientHeight:function(){return B.Dom.getViewportHeight();},getElementsByClassName:function(S,W,T,U){W=W||"*";T=(T)?B.Dom.get(T):null||document;if(!T){return[];}var P=[],O=T.getElementsByTagName(W),V=N(S);for(var Q=0,R=O.length;Q<R;++Q){if(V.test(O[Q].className)){P[P.length]=O[Q];if(U){U.call(O[Q],O[Q]);}}}return P;},hasClass:function(Q,P){var O=N(P);var R=function(S){return O.test(S.className);};return B.Dom.batch(Q,R,B.Dom,true);},addClass:function(P,O){var Q=function(R){if(this.hasClass(R,O)){return false;}R.className=YAHOO.lang.trim([R.className,O].join(" "));return true;};return B.Dom.batch(P,Q,B.Dom,true);},removeClass:function(Q,P){var O=N(P);var R=function(S){if(!this.hasClass(S,P)){return false;}var T=S.className;S.className=T.replace(O," ");if(this.hasClass(S,P)){this.removeClass(S,P);}S.className=YAHOO.lang.trim(S.className);return true;};return B.Dom.batch(Q,R,B.Dom,true);},replaceClass:function(R,P,O){if(!O||P===O){return false;}var Q=N(P);var S=function(T){if(!this.hasClass(T,P)){this.addClass(T,O);return true;}T.className=T.className.replace(Q," "+O+" ");if(this.hasClass(T,P)){this.replaceClass(T,P,O);}T.className=YAHOO.lang.trim(T.className);return true;};return B.Dom.batch(R,S,B.Dom,true);},generateId:function(O,Q){Q=Q||"yui-gen";var P=function(R){if(R&&R.id){return R.id;}var S=Q+H++;if(R){R.id=S;}return S;};return B.Dom.batch(O,P,B.Dom,true)||P.apply(B.Dom,arguments);},isAncestor:function(P,Q){P=B.Dom.get(P);if(!P||!Q){return false;}var O=function(R){if(P.contains&&R.nodeType&&!L){return P.contains(R);}else{if(P.compareDocumentPosition&&R.nodeType){return !!(P.compareDocumentPosition(R)&16);}else{if(R.nodeType){return !!this.getAncestorBy(R,function(S){return S==P;});}}}return false;};return B.Dom.batch(Q,O,B.Dom,true);},inDocument:function(O){var P=function(Q){if(L){while(Q=Q.parentNode){if(Q==document.documentElement){return true;}}return false;}return this.isAncestor(document.documentElement,Q);};return B.Dom.batch(O,P,B.Dom,true);},getElementsBy:function(V,P,Q,S){P=P||"*";Q=(Q)?B.Dom.get(Q):null||document;if(!Q){return[];}var R=[],U=Q.getElementsByTagName(P);for(var T=0,O=U.length;T<O;++T){if(V(U[T])){R[R.length]=U[T];if(S){S(U[T]);}}}return R;},batch:function(S,V,U,Q){S=(S&&(S.tagName||S.item))?S:B.Dom.get(S);if(!S||!V){return false;}var R=(Q)?U:window;if(S.tagName||S.length===undefined){return V.call(R,S,U);}var T=[];for(var P=0,O=S.length;P<O;++P){T[T.length]=V.call(R,S[P],U);}return T;},getDocumentHeight:function(){var P=(document.compatMode!="CSS1Compat")?document.body.scrollHeight:document.documentElement.scrollHeight;var O=Math.max(P,B.Dom.getViewportHeight());return O;},getDocumentWidth:function(){var P=(document.compatMode!="CSS1Compat")?document.body.scrollWidth:document.documentElement.scrollWidth;var O=Math.max(P,B.Dom.getViewportWidth());return O;},getViewportHeight:function(){var O=self.innerHeight;var P=document.compatMode;if((P||G)&&!C){O=(P=="CSS1Compat")?document.documentElement.clientHeight:document.body.clientHeight;}return O;},getViewportWidth:function(){var O=self.innerWidth;var P=document.compatMode;if(P||G){O=(P=="CSS1Compat")?document.documentElement.clientWidth:document.body.clientWidth;}return O;},getAncestorBy:function(O,P){while(O=O.parentNode){if(D(O,P)){return O;}}return null;},getAncestorByClassName:function(P,O){P=B.Dom.get(P);if(!P){return null;}var Q=function(R){return B.Dom.hasClass(R,O);};return B.Dom.getAncestorBy(P,Q);},getAncestorByTagName:function(P,O){P=B.Dom.get(P);if(!P){return null;}var Q=function(R){return R.tagName&&R.tagName.toUpperCase()==O.toUpperCase();};return B.Dom.getAncestorBy(P,Q);},getPreviousSiblingBy:function(O,P){while(O){O=O.previousSibling;if(D(O,P)){return O;}}return null;},getPreviousSibling:function(O){O=B.Dom.get(O);if(!O){return null;}return B.Dom.getPreviousSiblingBy(O);},getNextSiblingBy:function(O,P){while(O){O=O.nextSibling;if(D(O,P)){return O;}}return null;},getNextSibling:function(O){O=B.Dom.get(O);if(!O){return null;}return B.Dom.getNextSiblingBy(O);},getFirstChildBy:function(O,Q){var P=(D(O.firstChild,Q))?O.firstChild:null;return P||B.Dom.getNextSiblingBy(O.firstChild,Q);},getFirstChild:function(O,P){O=B.Dom.get(O);if(!O){return null;}return B.Dom.getFirstChildBy(O);},getLastChildBy:function(O,Q){if(!O){return null;}var P=(D(O.lastChild,Q))?O.lastChild:null;return P||B.Dom.getPreviousSiblingBy(O.lastChild,Q);},getLastChild:function(O){O=B.Dom.get(O);return B.Dom.getLastChildBy(O);},getChildrenBy:function(P,R){var Q=B.Dom.getFirstChildBy(P,R);var O=Q?[Q]:[];B.Dom.getNextSiblingBy(Q,function(S){if(!R||R(S)){O[O.length]=S;}return false;});return O;},getChildren:function(O){O=B.Dom.get(O);if(!O){}return B.Dom.getChildrenBy(O);},getDocumentScrollLeft:function(O){O=O||document;return Math.max(O.documentElement.scrollLeft,O.body.scrollLeft);},getDocumentScrollTop:function(O){O=O||document;return Math.max(O.documentElement.scrollTop,O.body.scrollTop);},insertBefore:function(P,O){P=B.Dom.get(P);O=B.Dom.get(O);if(!P||!O||!O.parentNode){return null;}return O.parentNode.insertBefore(P,O);},insertAfter:function(P,O){P=B.Dom.get(P);O=B.Dom.get(O);if(!P||!O||!O.parentNode){return null;}if(O.nextSibling){return O.parentNode.insertBefore(P,O.nextSibling);}else{return O.parentNode.appendChild(P);}}};})();YAHOO.util.Region=function(C,D,A,B){this.top=C;this[1]=C;this.right=D;this.bottom=A;this.left=B;this[0]=B;};YAHOO.util.Region.prototype.contains=function(A){return(A.left>=this.left&&A.right<=this.right&&A.top>=this.top&&A.bottom<=this.bottom);};YAHOO.util.Region.prototype.getArea=function(){return((this.bottom-this.top)*(this.right-this.left));};YAHOO.util.Region.prototype.intersect=function(E){var C=Math.max(this.top,E.top);var D=Math.min(this.right,E.right);var A=Math.min(this.bottom,E.bottom);var B=Math.max(this.left,E.left);if(A>=C&&D>=B){return new YAHOO.util.Region(C,D,A,B);}else{return null;}};YAHOO.util.Region.prototype.union=function(E){var C=Math.min(this.top,E.top);var D=Math.max(this.right,E.right);var A=Math.max(this.bottom,E.bottom);var B=Math.min(this.left,E.left);return new YAHOO.util.Region(C,D,A,B);};YAHOO.util.Region.prototype.toString=function(){return("Region {top: "+this.top+", right: "+this.right+", bottom: "+this.bottom+", left: "+this.left+"}");};YAHOO.util.Region.getRegion=function(D){var F=YAHOO.util.Dom.getXY(D);var C=F[1];var E=F[0]+D.offsetWidth;var A=F[1]+D.offsetHeight;var B=F[0];return new YAHOO.util.Region(C,E,A,B);};YAHOO.util.Point=function(A,B){if(YAHOO.lang.isArray(A)){B=A[1];A=A[0];}this.x=this.right=this.left=this[0]=A;this.y=this.top=this.bottom=this[1]=B;};YAHOO.util.Point.prototype=new YAHOO.util.Region();YAHOO.register("dom",YAHOO.util.Dom,{version:"2.3.1",build:"541"});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);}this.lastError=null;};YAHOO.util.CustomEvent.LIST=0;YAHOO.util.CustomEvent.FLAT=1;YAHOO.util.CustomEvent.prototype={subscribe:function(B,C,A){if(!B){throw new Error("Invalid callback for subscriber to '"+this.type+"'");}if(this.subscribeEvent){this.subscribeEvent.fire(B,C,A);}this.subscribers.push(new YAHOO.util.Subscriber(B,C,A));},unsubscribe:function(D,F){if(!D){return this.unsubscribeAll();}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 E=this.subscribers.length;if(!E&&this.silent){return true;}var H=[],G=true,D,I=false;for(D=0;D<arguments.length;++D){H.push(arguments[D]);}var A=H.length;if(!this.silent){}for(D=0;D<E;++D){var L=this.subscribers[D];if(!L){I=true;}else{if(!this.silent){}var K=L.getScope(this.scope);if(this.signature==YAHOO.util.CustomEvent.FLAT){var B=null;if(H.length>0){B=H[0];}try{G=L.fn.call(K,B,L.obj);}catch(F){this.lastError=F;}}else{try{G=L.fn.call(K,this.type,H,L.obj);}catch(F){this.lastError=F;}}if(false===G){if(!this.silent){}return false;}}}if(I){var J=[],C=this.subscribers;for(D=0,E=C.length;D<E;D=D+1){J.push(C[D]);}this.subscribers=J;}return true;},unsubscribeAll:function(){for(var B=0,A=this.subscribers.length;B<A;++B){this._delete(A-1-B);}this.subscribers=[];return B;},_delete:function(A){var B=this.subscribers[A];if(B){delete B.fn;delete B.obj;}this.subscribers[A]=null;},toString:function(){return"CustomEvent: '"+this.type+"', scope: "+this.scope;}};YAHOO.util.Subscriber=function(B,C,A){this.fn=B;this.obj=YAHOO.lang.isUndefined(C)?null:C;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 H=false;var J=false;var I=[];var K=[];var G=[];var E=[];var C=0;var F=[];var B=[];var A=0;var D={63232:38,63233:40,63234:37,63235:39};return{POLL_RETRYS:4000,POLL_INTERVAL:10,EL:0,TYPE:1,FN:2,WFN:3,UNLOAD_OBJ:3,ADJ_SCOPE:4,OBJ:5,OVERRIDE:6,lastError:null,isSafari:YAHOO.env.ua.webkit,webkit:YAHOO.env.ua.webkit,isIE:YAHOO.env.ua.ie,_interval:null,startInterval:function(){if(!this._interval){var L=this;var M=function(){L._tryPreloadAttach();};this._interval=setInterval(M,this.POLL_INTERVAL);}},onAvailable:function(N,L,O,M){F.push({id:N,fn:L,obj:O,override:M,checkReady:false});C=this.POLL_RETRYS;this.startInterval();},onDOMReady:function(L,N,M){if(J){setTimeout(function(){var O=window;if(M){if(M===true){O=N;}else{O=M;}}L.call(O,"DOMReady",[],N);},0);}else{this.DOMReadyEvent.subscribe(L,N,M);}},onContentReady:function(N,L,O,M){F.push({id:N,fn:L,obj:O,override:M,checkReady:true});C=this.POLL_RETRYS;this.startInterval();},addListener:function(N,L,W,R,M){if(!W||!W.call){return false;}if(this._isValidCollection(N)){var X=true;for(var S=0,U=N.length;S<U;++S){X=this.on(N[S],L,W,R,M)&&X;}return X;}else{if(YAHOO.lang.isString(N)){var Q=this.getEl(N);if(Q){N=Q;}else{this.onAvailable(N,function(){YAHOO.util.Event.on(N,L,W,R,M);});return true;}}}if(!N){return false;}if("unload"==L&&R!==this){K[K.length]=[N,L,W,R,M];return true;}var Z=N;if(M){if(M===true){Z=R;}else{Z=M;}}var O=function(a){return W.call(Z,YAHOO.util.Event.getEvent(a,N),R);};var Y=[N,L,W,O,Z,R,M];var T=I.length;I[T]=Y;if(this.useLegacyEvent(N,L)){var P=this.getLegacyIndex(N,L);if(P==-1||N!=G[P][0]){P=G.length;B[N.id+L]=P;G[P]=[N,L,N["on"+L]];E[P]=[];N["on"+L]=function(a){YAHOO.util.Event.fireLegacyEvent(YAHOO.util.Event.getEvent(a),P);};}E[P].push(Y);}else{try{this._simpleAdd(N,L,O,false);}catch(V){this.lastError=V;this.removeListener(N,L,W);return false;}}return true;},fireLegacyEvent:function(P,N){var R=true,L,T,S,U,Q;T=E[N];for(var M=0,O=T.length;M<O;++M){S=T[M];if(S&&S[this.WFN]){U=S[this.ADJ_SCOPE];Q=S[this.WFN].call(U,P);R=(R&&Q);}}L=G[N];if(L&&L[2]){L[2](P);}return R;},getLegacyIndex:function(M,N){var L=this.generateId(M)+N;if(typeof B[L]=="undefined"){return -1;}else{return B[L];}},useLegacyEvent:function(M,N){if(this.webkit&&("click"==N||"dblclick"==N)){var L=parseInt(this.webkit,10);if(!isNaN(L)&&L<418){return true;}}return false;},removeListener:function(M,L,U){var P,S,W;if(typeof M=="string"){M=this.getEl(M);}else{if(this._isValidCollection(M)){var V=true;for(P=0,S=M.length;P<S;++P){V=(this.removeListener(M[P],L,U)&&V);}return V;}}if(!U||!U.call){return this.purgeElement(M,false,L);}if("unload"==L){for(P=0,S=K.length;P<S;P++){W=K[P];if(W&&W[0]==M&&W[1]==L&&W[2]==U){K[P]=null;return true;}}return false;}var Q=null;var R=arguments[3];if("undefined"===typeof R){R=this._getCacheIndex(M,L,U);}if(R>=0){Q=I[R];}if(!M||!Q){return false;}if(this.useLegacyEvent(M,L)){var O=this.getLegacyIndex(M,L);var N=E[O];if(N){for(P=0,S=N.length;P<S;++P){W=N[P];if(W&&W[this.EL]==M&&W[this.TYPE]==L&&W[this.FN]==U){N[P]=null;break;}}}}else{try{this._simpleRemove(M,L,Q[this.WFN],false);}catch(T){this.lastError=T;return false;}}delete I[R][this.WFN];delete I[R][this.FN];I[R]=null;return true;},getTarget:function(N,M){var L=N.target||N.srcElement;return this.resolveTextNode(L);},resolveTextNode:function(L){if(L&&3==L.nodeType){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 this.resolveTextNode(L);},getTime:function(N){if(!N.time){var M=new Date().getTime();try{N.time=M;}catch(L){this.lastError=L;return M;}}return N.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(Q,O){var P=Q||window.event;if(!P){var R=this.getEvent.caller;while(R){P=R.arguments[0];if(P&&Event==P.constructor){break;}R=R.caller;}}if(P&&this.isIE){try{var N=P.srcElement;if(N){var M=N.type;}}catch(L){P.target=O;}}return P;},getCharCode:function(M){var L=M.keyCode||M.charCode||0;if(YAHOO.env.ua.webkit&&(L in D)){L=D[L];}return L;},_getCacheIndex:function(P,Q,O){for(var N=0,M=I.length;N<M;++N){var L=I[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;++A;L.id=M;}return M;},_isValidCollection:function(M){try{return(typeof M!=="string"&&M.length&&!M.tagName&&!M.alert&&typeof M[0]!=="undefined");}catch(L){return false;}},elCache:{},getEl:function(L){return(typeof L==="string")?document.getElementById(L):L;},clearCache:function(){},DOMReadyEvent:new YAHOO.util.CustomEvent("DOMReady",this),_load:function(M){if(!H){H=true;var L=YAHOO.util.Event;L._ready();L._tryPreloadAttach();}},_ready:function(M){if(!J){J=true;var L=YAHOO.util.Event;L.DOMReadyEvent.fire();L._simpleRemove(document,"DOMContentLoaded",L._ready);}},_tryPreloadAttach:function(){if(this.locked){return false;}if(this.isIE){if(!J){this.startInterval();return false;}}this.locked=true;var Q=!H;if(!Q){Q=(C>0);}var P=[];var R=function(T,U){var S=T;if(U.override){if(U.override===true){S=U.obj;}else{S=U.override;}}U.fn.call(S,U.obj);};var M,L,O,N;for(M=0,L=F.length;M<L;++M){O=F[M];if(O&&!O.checkReady){N=this.getEl(O.id);if(N){R(N,O);F[M]=null;}else{P.push(O);}}}for(M=0,L=F.length;M<L;++M){O=F[M];if(O&&O.checkReady){N=this.getEl(O.id);if(N){if(H||N.nextSibling){R(N,O);F[M]=null;}}else{P.push(O);}}}C=(P.length===0)?0:C-1;if(Q){this.startInterval();}else{clearInterval(this._interval);this._interval=null;}this.locked=false;return true;},purgeElement:function(O,P,R){var Q=this.getListeners(O,R),N,L;if(Q){for(N=0,L=Q.length;N<L;++N){var M=Q[N];this.removeListener(O,M.type,M.fn,M.index);}}if(P&&O&&O.childNodes){for(N=0,L=O.childNodes.length;N<L;++N){this.purgeElement(O.childNodes[N],P,R);}}},getListeners:function(N,L){var Q=[],M;if(!L){M=[I,K];}else{if(L=="unload"){M=[K];}else{M=[I];}}for(var P=0;P<M.length;P=P+1){var T=M[P];if(T&&T.length>0){for(var R=0,S=T.length;R<S;++R){var O=T[R];if(O&&O[this.EL]===N&&(!L||L===O[this.TYPE])){Q.push({type:O[this.TYPE],fn:O[this.FN],obj:O[this.OBJ],adjust:O[this.OVERRIDE],scope:O[this.ADJ_SCOPE],index:R});}}}}return(Q.length)?Q:null;},_unload:function(S){var R=YAHOO.util.Event,P,O,M,L,N;for(P=0,L=K.length;P<L;++P){M=K[P];if(M){var Q=window;if(M[R.ADJ_SCOPE]){if(M[R.ADJ_SCOPE]===true){Q=M[R.UNLOAD_OBJ];}else{Q=M[R.ADJ_SCOPE];}}M[R.FN].call(Q,R.getEvent(S,M[R.EL]),M[R.UNLOAD_OBJ]);K[P]=null;M=null;Q=null;}}K=null;if(I&&I.length>0){O=I.length;while(O){N=O-1;M=I[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,L=G.length;P<L;++P){G[P][0]=null;G[P]=null;}G=null;R._simpleRemove(window,"unload",R._unload);},_getScrollLeft:function(){return this._getScroll()[1];},_getScrollTop:function(){return this._getScroll()[0];},_getScroll:function(){var L=document.documentElement,M=document.body;if(L&&(L.scrollTop||L.scrollLeft)){return[L.scrollTop,L.scrollLeft];}else{if(M){return[M.scrollTop,M.scrollLeft];}else{return[0,0];}}},regCE:function(){},_simpleAdd:function(){if(window.addEventListener){return function(N,O,M,L){N.addEventListener(O,M,(L));};}else{if(window.attachEvent){return function(N,O,M,L){N.attachEvent("on"+O,M);};}else{return function(){};}}}(),_simpleRemove:function(){if(window.removeEventListener){return function(N,O,M,L){N.removeEventListener(O,M,(L));};}else{if(window.detachEvent){return function(M,N,L){M.detachEvent("on"+N,L);};}else{return function(){};}}}()};}();(function(){var D=YAHOO.util.Event;D.on=D.addListener;if(D.isIE){YAHOO.util.Event.onDOMReady(YAHOO.util.Event._tryPreloadAttach,YAHOO.util.Event,true);var B,E=document,A=E.body;if(("undefined"!==typeof YAHOO_config)&&YAHOO_config.injecting){B=document.createElement("script");var C=E.getElementsByTagName("head")[0]||A;C.insertBefore(B,C.firstChild);}else{E.write('<script id="_yui_eu_dr" defer="true" src="//:"><\/script>');B=document.getElementById("_yui_eu_dr");}if(B){B.onreadystatechange=function(){if("complete"===this.readyState){this.parentNode.removeChild(this);YAHOO.util.Event._ready();}};}else{}B=null;}else{if(D.webkit){D._drwatch=setInterval(function(){var F=document.readyState;if("loaded"==F||"complete"==F){clearInterval(D._drwatch);D._drwatch=null;D._ready();}},D.POLL_INTERVAL);}else{D._simpleAdd(document,"DOMContentLoaded",D._ready);}}D._simpleAdd(window,"load",D._load);D._simpleAdd(window,"unload",D._unload);D._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(C,E,G){this.__yui_events=this.__yui_events||{};var A=this.__yui_events;if(C){var F=A[C];if(F){return F.unsubscribe(E,G);}}else{var B=true;for(var D in A){if(YAHOO.lang.hasOwnProperty(A,D)){B=B&&A[D].unsubscribe(E,G);}}return B;}return false;},unsubscribeAll:function(A){return this.unsubscribe(A);},createEvent:function(G,D){this.__yui_events=this.__yui_events||{};var A=D||{};var I=this.__yui_events;if(I[G]){}else{var H=A.scope||this;var E=(A.silent);var B=new YAHOO.util.CustomEvent(G,H,E,YAHOO.util.CustomEvent.FLAT);I[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 I[G];},fireEvent:function(E,D,A,C){this.__yui_events=this.__yui_events||{};var G=this.__yui_events[E];if(!G){return null;}var B=[];for(var F=1;F<arguments.length;++F){B.push(arguments[F]);}return G.fire.apply(G,B);},hasEvent:function(A){if(this.__yui_events){if(this.__yui_events[A]){return true;}}return false;}};YAHOO.util.KeyListener=function(A,F,B,C){if(!A){}else{if(!F){}else{if(!B){}}}if(!C){C=YAHOO.util.KeyListener.KEYDOWN;}var D=new YAHOO.util.CustomEvent("keyPressed");this.enabledEvent=new YAHOO.util.CustomEvent("enabled");this.disabledEvent=new YAHOO.util.CustomEvent("disabled");if(typeof A=="string"){A=document.getElementById(A);}if(typeof B=="function"){D.subscribe(B);}else{D.subscribe(B.fn,B.scope,B.correctScope);}function E(K,J){if(!F.shift){F.shift=false;}if(!F.alt){F.alt=false;}if(!F.ctrl){F.ctrl=false;}if(K.shiftKey==F.shift&&K.altKey==F.alt&&K.ctrlKey==F.ctrl){var H;var G;if(F.keys instanceof Array){for(var I=0;I<F.keys.length;I++){H=F.keys[I];if(H==K.charCode){D.fire(K.charCode,K);break;}else{if(H==K.keyCode){D.fire(K.keyCode,K);break;}}}}else{H=F.keys;if(H==K.charCode){D.fire(K.charCode,K);}else{if(H==K.keyCode){D.fire(K.keyCode,K);}}}}}this.enable=function(){if(!this.enabled){YAHOO.util.Event.addListener(A,C,E);this.enabledEvent.fire(F);}this.enabled=true;};this.disable=function(){if(this.enabled){YAHOO.util.Event.removeListener(A,C,E);this.disabledEvent.fire(F);}this.enabled=false;};this.toString=function(){return"KeyListener ["+F.keys+"] "+A.tagName+(A.id?"["+A.id+"]":"");};};YAHOO.util.KeyListener.KEYDOWN="keydown";YAHOO.util.KeyListener.KEYUP="keyup";YAHOO.register("event",YAHOO.util.Event,{version:"2.3.1",build:"541"});YAHOO.register("yahoo-dom-event",YAHOO,{version:"2.3.1",build:"541"});
YAHOO.util.Attribute=function(B,A){if(A){this.owner=A;this.configure(B,true);}};YAHOO.util.Attribute.prototype={name:undefined,value:null,owner:null,readOnly:false,writeOnce:false,_initialConfig:null,_written:false,method:null,validator:null,getValue:function(){return this.value;},setValue:function(F,B){var E;var A=this.owner;var C=this.name;var D={type:C,prevValue:this.getValue(),newValue:F};if(this.readOnly||(this.writeOnce&&this._written)){return false;}if(this.validator&&!this.validator.call(A,F)){return false;}if(!B){E=A.fireBeforeChangeEvent(D);if(E===false){return false;}}if(this.method){this.method.call(A,F);}this.value=F;this._written=true;D.type=C;if(!B){this.owner.fireChangeEvent(D);}return true;},configure:function(B,C){B=B||{};this._written=false;this._initialConfig=this._initialConfig||{};for(var A in B){if(A&&YAHOO.lang.hasOwnProperty(B,A)){this[A]=B[A];if(C){this._initialConfig[A]=B[A];}}}},resetValue:function(){return this.setValue(this._initialConfig.value);},resetConfig:function(){this.configure(this._initialConfig);},refresh:function(A){this.setValue(this.value,A);}};(function(){var A=YAHOO.util.Lang;YAHOO.util.AttributeProvider=function(){};YAHOO.util.AttributeProvider.prototype={_configs:null,get:function(C){this._configs=this._configs||{};var B=this._configs[C];if(!B){return undefined;}return B.value;},set:function(D,E,B){this._configs=this._configs||{};var C=this._configs[D];if(!C){return false;}return C.setValue(E,B);},getAttributeKeys:function(){this._configs=this._configs;var D=[];var B;for(var C in this._configs){B=this._configs[C];if(A.hasOwnProperty(this._configs,C)&&!A.isUndefined(B)){D[D.length]=C;}}return D;},setAttributes:function(D,B){for(var C in D){if(A.hasOwnProperty(D,C)){this.set(C,D[C],B);}}},resetValue:function(C,B){this._configs=this._configs||{};if(this._configs[C]){this.set(C,this._configs[C]._initialConfig.value,B);return true;}return false;},refresh:function(E,C){this._configs=this._configs;E=((A.isString(E))?[E]:E)||this.getAttributeKeys();for(var D=0,B=E.length;D<B;++D){if(this._configs[E[D]]&&!A.isUndefined(this._configs[E[D]].value)&&!A.isNull(this._configs[E[D]].value)){this._configs[E[D]].refresh(C);}}},register:function(B,C){this.setAttributeConfig(B,C);},getAttributeConfig:function(C){this._configs=this._configs||{};var B=this._configs[C]||{};var D={};for(C in B){if(A.hasOwnProperty(B,C)){D[C]=B[C];}}return D;},setAttributeConfig:function(B,C,D){this._configs=this._configs||{};C=C||{};if(!this._configs[B]){C.name=B;this._configs[B]=this.createAttribute(C);}else{this._configs[B].configure(C,D);}},configureAttribute:function(B,C,D){this.setAttributeConfig(B,C,D);},resetAttributeConfig:function(B){this._configs=this._configs||{};this._configs[B].resetConfig();},subscribe:function(B,C){this._events=this._events||{};if(!(B in this._events)){this._events[B]=this.createEvent(B);}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments);},on:function(){this.subscribe.apply(this,arguments);},addListener:function(){this.subscribe.apply(this,arguments);},fireBeforeChangeEvent:function(C){var B="before";B+=C.type.charAt(0).toUpperCase()+C.type.substr(1)+"Change";C.type=B;return this.fireEvent(C.type,C);},fireChangeEvent:function(B){B.type+="Change";return this.fireEvent(B.type,B);},createAttribute:function(B){return new YAHOO.util.Attribute(B,this);}};YAHOO.augment(YAHOO.util.AttributeProvider,YAHOO.util.EventProvider);})();(function(){var D=YAHOO.util.Dom,F=YAHOO.util.AttributeProvider;YAHOO.util.Element=function(G,H){if(arguments.length){this.init(G,H);}};YAHOO.util.Element.prototype={DOM_EVENTS:null,appendChild:function(G){G=G.get?G.get("element"):G;this.get("element").appendChild(G);},getElementsByTagName:function(G){return this.get("element").getElementsByTagName(G);},hasChildNodes:function(){return this.get("element").hasChildNodes();},insertBefore:function(G,H){G=G.get?G.get("element"):G;H=(H&&H.get)?H.get("element"):H;this.get("element").insertBefore(G,H);},removeChild:function(G){G=G.get?G.get("element"):G;this.get("element").removeChild(G);return true;},replaceChild:function(G,H){G=G.get?G.get("element"):G;H=H.get?H.get("element"):H;return this.get("element").replaceChild(G,H);},initAttributes:function(G){},addListener:function(K,J,L,I){var H=this.get("element");I=I||this;H=this.get("id")||H;var G=this;if(!this._events[K]){if(this.DOM_EVENTS[K]){YAHOO.util.Event.addListener(H,K,function(M){if(M.srcElement&&!M.target){M.target=M.srcElement;}G.fireEvent(K,M);},L,I);}this.createEvent(K,this);}YAHOO.util.EventProvider.prototype.subscribe.apply(this,arguments);},on:function(){this.addListener.apply(this,arguments);},subscribe:function(){this.addListener.apply(this,arguments);},removeListener:function(H,G){this.unsubscribe.apply(this,arguments);},addClass:function(G){D.addClass(this.get("element"),G);},getElementsByClassName:function(H,G){return D.getElementsByClassName(H,G,this.get("element"));},hasClass:function(G){return D.hasClass(this.get("element"),G);},removeClass:function(G){return D.removeClass(this.get("element"),G);},replaceClass:function(H,G){return D.replaceClass(this.get("element"),H,G);},setStyle:function(I,H){var G=this.get("element");if(!G){return this._queue[this._queue.length]=["setStyle",arguments];}return D.setStyle(G,I,H);},getStyle:function(G){return D.getStyle(this.get("element"),G);},fireQueue:function(){var H=this._queue;for(var I=0,G=H.length;I<G;++I){this[H[I][0]].apply(this,H[I][1]);}},appendTo:function(H,I){H=(H.get)?H.get("element"):D.get(H);this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:H});I=(I&&I.get)?I.get("element"):D.get(I);var G=this.get("element");if(!G){return false;}if(!H){return false;}if(G.parent!=H){if(I){H.insertBefore(G,I);}else{H.appendChild(G);}}this.fireEvent("appendTo",{type:"appendTo",target:H});},get:function(G){var I=this._configs||{};var H=I.element;if(H&&!I[G]&&!YAHOO.lang.isUndefined(H.value[G])){return H.value[G];}return F.prototype.get.call(this,G);},setAttributes:function(L,H){var K=this.get("element");for(var J in L){if(!this._configs[J]&&!YAHOO.lang.isUndefined(K[J])){this.setAttributeConfig(J);}}for(var I=0,G=this._configOrder.length;I<G;++I){if(L[this._configOrder[I]]){this.set(this._configOrder[I],L[this._configOrder[I]],H);}}},set:function(H,J,G){var I=this.get("element");if(!I){this._queue[this._queue.length]=["set",arguments];if(this._configs[H]){this._configs[H].value=J;}return ;}if(!this._configs[H]&&!YAHOO.lang.isUndefined(I[H])){C.call(this,H);}return F.prototype.set.apply(this,arguments);},setAttributeConfig:function(G,I,J){var H=this.get("element");if(H&&!this._configs[G]&&!YAHOO.lang.isUndefined(H[G])){C.call(this,G,I);}else{F.prototype.setAttributeConfig.apply(this,arguments);}this._configOrder.push(G);},getAttributeKeys:function(){var H=this.get("element");var I=F.prototype.getAttributeKeys.call(this);for(var G in H){if(!this._configs[G]){I[G]=I[G]||H[G];}}return I;},createEvent:function(H,G){this._events[H]=true;F.prototype.createEvent.apply(this,arguments);},init:function(H,G){A.apply(this,arguments);}};var A=function(H,G){this._queue=this._queue||[];this._events=this._events||{};this._configs=this._configs||{};this._configOrder=[];G=G||{};G.element=G.element||H||null;this.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};var I=false;if(YAHOO.lang.isString(H)){C.call(this,"id",{value:G.element});}if(D.get(H)){I=true;E.call(this,G);B.call(this,G);}YAHOO.util.Event.onAvailable(G.element,function(){if(!I){E.call(this,G);}this.fireEvent("available",{type:"available",target:G.element});},this,true);YAHOO.util.Event.onContentReady(G.element,function(){if(!I){B.call(this,G);}this.fireEvent("contentReady",{type:"contentReady",target:G.element});},this,true);};var E=function(G){this.setAttributeConfig("element",{value:D.get(G.element),readOnly:true});};var B=function(G){this.initAttributes(G);this.setAttributes(G,true);this.fireQueue();};var C=function(G,I){var H=this.get("element");I=I||{};I.name=G;I.method=I.method||function(J){H[G]=J;};I.value=I.value||H[G];this._configs[G]=new YAHOO.util.Attribute(I,this);};YAHOO.augment(YAHOO.util.Element,F);})();YAHOO.register("element",YAHOO.util.Element,{version:"2.3.1",build:"541"});
var Prototype={Version:"1.6.0",Browser:{IE:!!(window.attachEvent&&!window.opera),Opera:!!window.opera,WebKit:navigator.userAgent.indexOf("AppleWebKit/")>-1,Gecko:navigator.userAgent.indexOf("Gecko")>-1&&navigator.userAgent.indexOf("KHTML")==-1,MobileSafari:!!navigator.userAgent.match(/Apple.*Mobile.*Safari/)},BrowserFeatures:{XPath:!!document.evaluate,ElementExtensions:!!window.HTMLElement,SpecificElementExtensions:document.createElement("div").__proto__&&document.createElement("div").__proto__!==document.createElement("form").__proto__},ScriptFragment:"<script[^>]*>([\\S\\s]*?)<\/script>",JSONFilter:/^\/\*-secure-([\s\S]*)\*\/\s*$/,emptyFunction:function(){},K:function(x){return x;}};if(Prototype.Browser.MobileSafari){Prototype.BrowserFeatures.SpecificElementExtensions=false;}if(Prototype.Browser.WebKit){Prototype.BrowserFeatures.XPath=false;}var Class={create:function(){var parent=null,properties=$A(arguments);if(Object.isFunction(properties[0])){parent=properties.shift();}function klass(){this.initialize.apply(this,arguments);}Object.extend(klass,Class.Methods);klass.superclass=parent;klass.subclasses=[];if(parent){var subclass=function(){};subclass.prototype=parent.prototype;klass.prototype=new subclass;parent.subclasses.push(klass);}for(var i=0;i<properties.length;i++){klass.addMethods(properties[i]);}if(!klass.prototype.initialize){klass.prototype.initialize=Prototype.emptyFunction;}klass.prototype.constructor=klass;return klass;}};Class.Methods={addMethods:function(source){var ancestor=this.superclass&&this.superclass.prototype;var properties=Object.keys(source);if(!Object.keys({toString:true}).length){properties.push("toString","valueOf");}for(var i=0,length=properties.length;i<length;i++){var property=properties[i],value=source[property];if(ancestor&&Object.isFunction(value)&&value.argumentNames().first()=="$super"){var method=value,value=Object.extend((function(m){return function(){return ancestor[m].apply(this,arguments);};})(property).wrap(method),{valueOf:function(){return method;},toString:function(){return method.toString();}});}this.prototype[property]=value;}return this;}};var Abstract={};Object.extend=function(destination,source){for(var property in source){destination[property]=source[property];}return destination;};Object.extend(Object,{inspect:function(object){try{if(object===undefined){return"undefined";}if(object===null){return"null";}return object.inspect?object.inspect():object.toString();}catch(e){if(e instanceof RangeError){return"...";}throw e;}},toJSON:function(object){var type=typeof object;switch(type){case"undefined":case"function":case"unknown":return ;case"boolean":return object.toString();}if(object===null){return"null";}if(object.toJSON){return object.toJSON();}if(Object.isElement(object)){return ;}var results=[];for(var property in object){var value=Object.toJSON(object[property]);if(value!==undefined){results.push(property.toJSON()+": "+value);}}return"{"+results.join(", ")+"}";},toQueryString:function(object){return $H(object).toQueryString();},toHTML:function(object){return object&&object.toHTML?object.toHTML():String.interpret(object);},keys:function(object){var keys=[];for(var property in object){keys.push(property);}return keys;},values:function(object){var values=[];for(var property in object){values.push(object[property]);}return values;},clone:function(object){return Object.extend({},object);},isElement:function(object){return object&&object.nodeType==1;},isArray:function(object){return object&&object.constructor===Array;},isHash:function(object){return object instanceof Hash;},isFunction:function(object){return typeof object=="function";},isString:function(object){return typeof object=="string";},isNumber:function(object){return typeof object=="number";},isUndefined:function(object){return typeof object=="undefined";}});Object.extend(Function.prototype,{argumentNames:function(){var names=this.toString().match(/^[\s\(]*function[^(]*\((.*?)\)/)[1].split(",").invoke("strip");return names.length==1&&!names[0]?[]:names;},bind:function(){if(arguments.length<2&&arguments[0]===undefined){return this;}var __method=this,args=$A(arguments),object=args.shift();return function(){return __method.apply(object,args.concat($A(arguments)));};},bindAsEventListener:function(){var __method=this,args=$A(arguments),object=args.shift();return function(event){return __method.apply(object,[event||window.event].concat(args));};},curry:function(){if(!arguments.length){return this;}var __method=this,args=$A(arguments);return function(){return __method.apply(this,args.concat($A(arguments)));};},delay:function(){var __method=this,args=$A(arguments),timeout=args.shift()*1000;return window.setTimeout(function(){return __method.apply(__method,args);},timeout);},wrap:function(wrapper){var __method=this;return function(){return wrapper.apply(this,[__method.bind(this)].concat($A(arguments)));};},methodize:function(){if(this._methodized){return this._methodized;}var __method=this;return this._methodized=function(){return __method.apply(null,[this].concat($A(arguments)));};}});Function.prototype.defer=Function.prototype.delay.curry(0.01);Date.prototype.toJSON=function(){return'"'+this.getUTCFullYear()+"-"+(this.getUTCMonth()+1).toPaddedString(2)+"-"+this.getUTCDate().toPaddedString(2)+"T"+this.getUTCHours().toPaddedString(2)+":"+this.getUTCMinutes().toPaddedString(2)+":"+this.getUTCSeconds().toPaddedString(2)+'Z"';};var Try={these:function(){var returnValue;for(var i=0,length=arguments.length;i<length;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}return returnValue;}};RegExp.prototype.match=RegExp.prototype.test;RegExp.escape=function(str){return String(str).replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1");};var PeriodicalExecuter=Class.create({initialize:function(callback,frequency){this.callback=callback;this.frequency=frequency;this.currentlyExecuting=false;this.registerCallback();},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},execute:function(){this.callback(this);},stop:function(){if(!this.timer){return ;}clearInterval(this.timer);this.timer=null;},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.execute();}finally{this.currentlyExecuting=false;}}}});Object.extend(String,{interpret:function(value){return value==null?"":String(value);},specialChar:{"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","\\":"\\\\"}});Object.extend(String.prototype,{gsub:function(pattern,replacement){var result="",source=this,match;replacement=arguments.callee.prepareReplacement(replacement);while(source.length>0){if(match=source.match(pattern)){result+=source.slice(0,match.index);result+=String.interpret(replacement(match));source=source.slice(match.index+match[0].length);}else{result+=source,source="";}}return result;},sub:function(pattern,replacement,count){replacement=this.gsub.prepareReplacement(replacement);count=count===undefined?1:count;return this.gsub(pattern,function(match){if(--count<0){return match[0];}return replacement(match);});},scan:function(pattern,iterator){this.gsub(pattern,iterator);return String(this);},truncate:function(length,truncation){length=length||30;truncation=truncation===undefined?"...":truncation;return this.length>length?this.slice(0,length-truncation.length)+truncation:String(this);},strip:function(){return this.replace(/^\s+/,"").replace(/\s+$/,"");},stripTags:function(){return this.replace(/<\/?[^>]+>/gi,"");},stripScripts:function(){return this.replace(new RegExp(Prototype.ScriptFragment,"img"),"");},extractScripts:function(){var matchAll=new RegExp(Prototype.ScriptFragment,"img");var matchOne=new RegExp(Prototype.ScriptFragment,"im");return(this.match(matchAll)||[]).map(function(scriptTag){return(scriptTag.match(matchOne)||["",""])[1];});},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script);});},escapeHTML:function(){var self=arguments.callee;self.text.data=this;return self.div.innerHTML;},unescapeHTML:function(){var div=new Element("div");div.innerHTML=this.stripTags();return div.childNodes[0]?(div.childNodes.length>1?$A(div.childNodes).inject("",function(memo,node){return memo+node.nodeValue;}):div.childNodes[0].nodeValue):"";},toQueryParams:function(separator){var match=this.strip().match(/([^?#]*)(#.*)?$/);if(!match){return{};}return match[1].split(separator||"&").inject({},function(hash,pair){if((pair=pair.split("="))[0]){var key=decodeURIComponent(pair.shift());var value=pair.length>1?pair.join("="):pair[0];if(value!=undefined){value=decodeURIComponent(value);}if(key in hash){if(!Object.isArray(hash[key])){hash[key]=[hash[key]];}hash[key].push(value);}else{hash[key]=value;}}return hash;});},toArray:function(){return this.split("");},succ:function(){return this.slice(0,this.length-1)+String.fromCharCode(this.charCodeAt(this.length-1)+1);},times:function(count){return count<1?"":new Array(count+1).join(this);},camelize:function(){var parts=this.split("-"),len=parts.length;if(len==1){return parts[0];}var camelized=this.charAt(0)=="-"?parts[0].charAt(0).toUpperCase()+parts[0].substring(1):parts[0];for(var i=1;i<len;i++){camelized+=parts[i].charAt(0).toUpperCase()+parts[i].substring(1);}return camelized;},capitalize:function(){return this.charAt(0).toUpperCase()+this.substring(1).toLowerCase();},underscore:function(){return this.gsub(/::/,"/").gsub(/([A-Z]+)([A-Z][a-z])/,"#{1}_#{2}").gsub(/([a-z\d])([A-Z])/,"#{1}_#{2}").gsub(/-/,"_").toLowerCase();},dasherize:function(){return this.gsub(/_/,"-");},inspect:function(useDoubleQuotes){var escapedString=this.gsub(/[\x00-\x1f\\]/,function(match){var character=String.specialChar[match[0]];return character?character:"\\u00"+match[0].charCodeAt().toPaddedString(2,16);});if(useDoubleQuotes){return'"'+escapedString.replace(/"/g,'\\"')+'"';}return"'"+escapedString.replace(/'/g,"\\'")+"'";},toJSON:function(){return this.inspect(true);},unfilterJSON:function(filter){return this.sub(filter||Prototype.JSONFilter,"#{1}");},isJSON:function(){var str=this.replace(/\\./g,"@").replace(/"[^"\\\n\r]*"/g,"");return(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(str);},evalJSON:function(sanitize){var json=this.unfilterJSON();try{if(!sanitize||json.isJSON()){return eval("("+json+")");}}catch(e){}throw new SyntaxError("Badly formed JSON string: "+this.inspect());},include:function(pattern){return this.indexOf(pattern)>-1;},startsWith:function(pattern){return this.indexOf(pattern)===0;},endsWith:function(pattern){var d=this.length-pattern.length;return d>=0&&this.lastIndexOf(pattern)===d;},empty:function(){return this=="";},blank:function(){return/^\s*$/.test(this);},interpolate:function(object,pattern){return new Template(this,pattern).evaluate(object);}});if(Prototype.Browser.WebKit||Prototype.Browser.IE){Object.extend(String.prototype,{escapeHTML:function(){return this.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");},unescapeHTML:function(){return this.replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">");}});}String.prototype.gsub.prepareReplacement=function(replacement){if(Object.isFunction(replacement)){return replacement;}var template=new Template(replacement);return function(match){return template.evaluate(match);};};String.prototype.parseQuery=String.prototype.toQueryParams;Object.extend(String.prototype.escapeHTML,{div:document.createElement("div"),text:document.createTextNode("")});with(String.prototype.escapeHTML){div.appendChild(text);}var Template=Class.create({initialize:function(template,pattern){this.template=template.toString();this.pattern=pattern||Template.Pattern;},evaluate:function(object){if(Object.isFunction(object.toTemplateReplacements)){object=object.toTemplateReplacements();}return this.template.gsub(this.pattern,function(match){if(object==null){return"";}var before=match[1]||"";if(before=="\\"){return match[2];}var ctx=object,expr=match[3];var pattern=/^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/,match=pattern.exec(expr);if(match==null){return before;}while(match!=null){var comp=match[1].startsWith("[")?match[2].gsub("\\\\]","]"):match[1];ctx=ctx[comp];if(null==ctx||""==match[3]){break;}expr=expr.substring("["==match[3]?match[1].length:match[0].length);match=pattern.exec(expr);}return before+String.interpret(ctx);}.bind(this));}});Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;var $break={};var Enumerable={each:function(iterator,context){var index=0;iterator=iterator.bind(context);try{this._each(function(value){iterator(value,index++);});}catch(e){if(e!=$break){throw e;}}return this;},eachSlice:function(number,iterator,context){iterator=iterator?iterator.bind(context):Prototype.K;var index=-number,slices=[],array=this.toArray();while((index+=number)<array.length){slices.push(array.slice(index,index+number));}return slices.collect(iterator,context);},all:function(iterator,context){iterator=iterator?iterator.bind(context):Prototype.K;var result=true;this.each(function(value,index){result=result&&!!iterator(value,index);if(!result){throw $break;}});return result;},any:function(iterator,context){iterator=iterator?iterator.bind(context):Prototype.K;var result=false;this.each(function(value,index){if(result=!!iterator(value,index)){throw $break;}});return result;},collect:function(iterator,context){iterator=iterator?iterator.bind(context):Prototype.K;var results=[];this.each(function(value,index){results.push(iterator(value,index));});return results;},detect:function(iterator,context){iterator=iterator.bind(context);var result;this.each(function(value,index){if(iterator(value,index)){result=value;throw $break;}});return result;},findAll:function(iterator,context){iterator=iterator.bind(context);var results=[];this.each(function(value,index){if(iterator(value,index)){results.push(value);}});return results;},grep:function(filter,iterator,context){iterator=iterator?iterator.bind(context):Prototype.K;var results=[];if(Object.isString(filter)){filter=new RegExp(filter);}this.each(function(value,index){if(filter.match(value)){results.push(iterator(value,index));}});return results;},include:function(object){if(Object.isFunction(this.indexOf)){if(this.indexOf(object)!=-1){return true;}}var found=false;this.each(function(value){if(value==object){found=true;throw $break;}});return found;},inGroupsOf:function(number,fillWith){fillWith=fillWith===undefined?null:fillWith;return this.eachSlice(number,function(slice){while(slice.length<number){slice.push(fillWith);}return slice;});},inject:function(memo,iterator,context){iterator=iterator.bind(context);this.each(function(value,index){memo=iterator(memo,value,index);});return memo;},invoke:function(method){var args=$A(arguments).slice(1);return this.map(function(value){return value[method].apply(value,args);});},max:function(iterator,context){iterator=iterator?iterator.bind(context):Prototype.K;var result;this.each(function(value,index){value=iterator(value,index);if(result==undefined||value>=result){result=value;}});return result;},min:function(iterator,context){iterator=iterator?iterator.bind(context):Prototype.K;var result;this.each(function(value,index){value=iterator(value,index);if(result==undefined||value<result){result=value;}});return result;},partition:function(iterator,context){iterator=iterator?iterator.bind(context):Prototype.K;var trues=[],falses=[];this.each(function(value,index){(iterator(value,index)?trues:falses).push(value);});return[trues,falses];},pluck:function(property){var results=[];this.each(function(value){results.push(value[property]);});return results;},reject:function(iterator,context){iterator=iterator.bind(context);var results=[];this.each(function(value,index){if(!iterator(value,index)){results.push(value);}});return results;},sortBy:function(iterator,context){iterator=iterator.bind(context);return this.map(function(value,index){return{value:value,criteria:iterator(value,index)};}).sort(function(left,right){var a=left.criteria,b=right.criteria;return a<b?-1:a>b?1:0;}).pluck("value");},toArray:function(){return this.map();},zip:function(){var iterator=Prototype.K,args=$A(arguments);if(Object.isFunction(args.last())){iterator=args.pop();}var collections=[this].concat(args).map($A);return this.map(function(value,index){return iterator(collections.pluck(index));});},size:function(){return this.toArray().length;},inspect:function(){return"#<Enumerable:"+this.toArray().inspect()+">";}};Object.extend(Enumerable,{map:Enumerable.collect,find:Enumerable.detect,select:Enumerable.findAll,filter:Enumerable.findAll,member:Enumerable.include,entries:Enumerable.toArray,every:Enumerable.all,some:Enumerable.any});function $A(iterable){if(!iterable){return[];}if(iterable.toArray){return iterable.toArray();}var length=iterable.length,results=new Array(length);while(length--){results[length]=iterable[length];}return results;}if(Prototype.Browser.WebKit){function $A(iterable){if(!iterable){return[];}if(!(Object.isFunction(iterable)&&iterable=="[object NodeList]")&&iterable.toArray){return iterable.toArray();}var length=iterable.length,results=new Array(length);while(length--){results[length]=iterable[length];}return results;}}Array.from=$A;Object.extend(Array.prototype,Enumerable);if(!Array.prototype._reverse){Array.prototype._reverse=Array.prototype.reverse;}Object.extend(Array.prototype,{_each:function(iterator){for(var i=0,length=this.length;i<length;i++){iterator(this[i]);}},clear:function(){this.length=0;return this;},first:function(){return this[0];},last:function(){return this[this.length-1];},compact:function(){return this.select(function(value){return value!=null;});},flatten:function(){return this.inject([],function(array,value){return array.concat(Object.isArray(value)?value.flatten():[value]);});},without:function(){var values=$A(arguments);return this.select(function(value){return !values.include(value);});},reverse:function(inline){return(inline!==false?this:this.toArray())._reverse();},reduce:function(){return this.length>1?this:this[0];},uniq:function(sorted){return this.inject([],function(array,value,index){if(0==index||(sorted?array.last()!=value:!array.include(value))){array.push(value);}return array;});},intersect:function(array){return this.uniq().findAll(function(item){return array.detect(function(value){return item===value;});});},clone:function(){return[].concat(this);},size:function(){return this.length;},inspect:function(){return"["+this.map(Object.inspect).join(", ")+"]";},toJSON:function(){var results=[];this.each(function(object){var value=Object.toJSON(object);if(value!==undefined){results.push(value);}});return"["+results.join(", ")+"]";}});if(Object.isFunction(Array.prototype.forEach)){Array.prototype._each=Array.prototype.forEach;}if(!Array.prototype.indexOf){Array.prototype.indexOf=function(item,i){i||(i=0);var length=this.length;if(i<0){i=length+i;}for(;i<length;i++){if(this[i]===item){return i;}}return -1;};}if(!Array.prototype.lastIndexOf){Array.prototype.lastIndexOf=function(item,i){i=isNaN(i)?this.length:(i<0?this.length+i:i)+1;var n=this.slice(0,i).reverse().indexOf(item);return(n<0)?n:i-n-1;};}Array.prototype.toArray=Array.prototype.clone;function $w(string){if(!Object.isString(string)){return[];}string=string.strip();return string?string.split(/\s+/):[];}if(Prototype.Browser.Opera){Array.prototype.concat=function(){var array=[];for(var i=0,length=this.length;i<length;i++){array.push(this[i]);}for(var i=0,length=arguments.length;i<length;i++){if(Object.isArray(arguments[i])){for(var j=0,arrayLength=arguments[i].length;j<arrayLength;j++){array.push(arguments[i][j]);}}else{array.push(arguments[i]);}}return array;};}Object.extend(Number.prototype,{toColorPart:function(){return this.toPaddedString(2,16);},succ:function(){return this+1;},times:function(iterator){$R(0,this,true).each(iterator);return this;},toPaddedString:function(length,radix){var string=this.toString(radix||10);return"0".times(length-string.length)+string;},toJSON:function(){return isFinite(this)?this.toString():"null";}});$w("abs round ceil floor").each(function(method){Number.prototype[method]=Math[method].methodize();});function $H(object){return new Hash(object);}var Hash=Class.create(Enumerable,(function(){if(function(){var i=0,Test=function(value){this.key=value;};Test.prototype.key="foo";for(var property in new Test("bar")){i++;}return i>1;}()){function each(iterator){var cache=[];for(var key in this._object){var value=this._object[key];if(cache.include(key)){continue;}cache.push(key);var pair=[key,value];pair.key=key;pair.value=value;iterator(pair);}}}else{function each(iterator){for(var key in this._object){var value=this._object[key],pair=[key,value];pair.key=key;pair.value=value;iterator(pair);}}}function toQueryPair(key,value){if(Object.isUndefined(value)){return key;}return key+"="+encodeURIComponent(String.interpret(value));}return{initialize:function(object){this._object=Object.isHash(object)?object.toObject():Object.clone(object);},_each:each,set:function(key,value){return this._object[key]=value;},get:function(key){return this._object[key];},unset:function(key){var value=this._object[key];delete this._object[key];return value;},toObject:function(){return Object.clone(this._object);},keys:function(){return this.pluck("key");},values:function(){return this.pluck("value");},index:function(value){var match=this.detect(function(pair){return pair.value===value;});return match&&match.key;},merge:function(object){return this.clone().update(object);},update:function(object){return new Hash(object).inject(this,function(result,pair){result.set(pair.key,pair.value);return result;});},toQueryString:function(){return this.map(function(pair){var key=encodeURIComponent(pair.key),values=pair.value;if(values&&typeof values=="object"){if(Object.isArray(values)){return values.map(toQueryPair.curry(key)).join("&");}}return toQueryPair(key,values);}).join("&");},inspect:function(){return"#<Hash:{"+this.map(function(pair){return pair.map(Object.inspect).join(": ");}).join(", ")+"}>";},toJSON:function(){return Object.toJSON(this.toObject());},clone:function(){return new Hash(this);}};})());Hash.prototype.toTemplateReplacements=Hash.prototype.toObject;Hash.from=$H;var ObjectRange=Class.create(Enumerable,{initialize:function(start,end,exclusive){this.start=start;this.end=end;this.exclusive=exclusive;},_each:function(iterator){var value=this.start;while(this.include(value)){iterator(value);value=value.succ();}},include:function(value){if(value<this.start){return false;}if(this.exclusive){return value<this.end;}return value<=this.end;}});var $R=function(start,end,exclusive){return new ObjectRange(start,end,exclusive);};var Ajax={getTransport:function(){return Try.these(function(){return new XMLHttpRequest();},function(){return new ActiveXObject("Msxml2.XMLHTTP");},function(){return new ActiveXObject("Microsoft.XMLHTTP");})||false;},activeRequestCount:0};Ajax.Responders={responders:[],_each:function(iterator){this.responders._each(iterator);},register:function(responder){if(!this.include(responder)){this.responders.push(responder);}},unregister:function(responder){this.responders=this.responders.without(responder);},dispatch:function(callback,request,transport,json){this.each(function(responder){if(Object.isFunction(responder[callback])){try{responder[callback].apply(responder,[request,transport,json]);}catch(e){}}});}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++;},onComplete:function(){Ajax.activeRequestCount--;}});Ajax.Base=Class.create({initialize:function(options){this.options={method:"post",asynchronous:true,contentType:"application/x-www-form-urlencoded",encoding:"UTF-8",parameters:"",evalJSON:true,evalJS:true};Object.extend(this.options,options||{});this.options.method=this.options.method.toLowerCase();if(Object.isString(this.options.parameters)){this.options.parameters=this.options.parameters.toQueryParams();}}});Ajax.Request=Class.create(Ajax.Base,{_complete:false,initialize:function($super,url,options){$super(options);this.transport=Ajax.getTransport();this.request(url);},request:function(url){this.url=url;this.method=this.options.method;var params=Object.clone(this.options.parameters);if(!["get","post"].include(this.method)){params["_method"]=this.method;this.method="post";}this.parameters=params;if(params=Object.toQueryString(params)){if(this.method=="get"){this.url+=(this.url.include("?")?"&":"?")+params;}else{if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){params+="&_=";}}}try{var response=new Ajax.Response(this);if(this.options.onCreate){this.options.onCreate(response);}Ajax.Responders.dispatch("onCreate",this,response);this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);if(this.options.asynchronous){this.respondToReadyState.bind(this).defer(1);}this.transport.onreadystatechange=this.onStateChange.bind(this);this.setRequestHeaders();this.body=this.method=="post"?(this.options.postBody||params):null;this.transport.send(this.body);if(!this.options.asynchronous&&this.transport.overrideMimeType){this.onStateChange();}}catch(e){this.dispatchException(e);}},onStateChange:function(){var readyState=this.transport.readyState;if(readyState>1&&!((readyState==4)&&this._complete)){this.respondToReadyState(this.transport.readyState);}},setRequestHeaders:function(){var headers={"X-Requested-With":"XMLHttpRequest","X-Prototype-Version":Prototype.Version,"Accept":"text/javascript, text/html, application/xml, text/xml, */*"};if(this.method=="post"){headers["Content-type"]=this.options.contentType+(this.options.encoding?"; charset="+this.options.encoding:"");if(this.transport.overrideMimeType&&(navigator.userAgent.match(/Gecko\/(\d{4})/)||[0,2005])[1]<2005){headers["Connection"]="close";}}if(typeof this.options.requestHeaders=="object"){var extras=this.options.requestHeaders;if(Object.isFunction(extras.push)){for(var i=0,length=extras.length;i<length;i+=2){headers[extras[i]]=extras[i+1];}}else{$H(extras).each(function(pair){headers[pair.key]=pair.value;});}}for(var name in headers){this.transport.setRequestHeader(name,headers[name]);}},success:function(){var status=this.getStatus();return !status||(status>=200&&status<300);},getStatus:function(){try{return this.transport.status||0;}catch(e){return 0;}},respondToReadyState:function(readyState){var state=Ajax.Request.Events[readyState],response=new Ajax.Response(this);if(state=="Complete"){try{this._complete=true;(this.options["on"+response.status]||this.options["on"+(this.success()?"Success":"Failure")]||Prototype.emptyFunction)(response,response.headerJSON);}catch(e){this.dispatchException(e);}var contentType=response.getHeader("Content-type");if(this.options.evalJS=="force"||(this.options.evalJS&&contentType&&contentType.match(/^\s*(text|application)\/(x-)?(java|ecma)script(;.*)?\s*$/i))){this.evalResponse();}}try{(this.options["on"+state]||Prototype.emptyFunction)(response,response.headerJSON);Ajax.Responders.dispatch("on"+state,this,response,response.headerJSON);}catch(e){this.dispatchException(e);}if(state=="Complete"){this.transport.onreadystatechange=Prototype.emptyFunction;}},getHeader:function(name){try{return this.transport.getResponseHeader(name);}catch(e){return null;}},evalResponse:function(){try{return eval((this.transport.responseText||"").unfilterJSON());}catch(e){this.dispatchException(e);}},dispatchException:function(exception){(this.options.onException||Prototype.emptyFunction)(this,exception);Ajax.Responders.dispatch("onException",this,exception);}});Ajax.Request.Events=["Uninitialized","Loading","Loaded","Interactive","Complete"];Ajax.Response=Class.create({initialize:function(request){this.request=request;var transport=this.transport=request.transport,readyState=this.readyState=transport.readyState;if((readyState>2&&!Prototype.Browser.IE)||readyState==4){this.status=this.getStatus();this.statusText=this.getStatusText();this.responseText=String.interpret(transport.responseText);this.headerJSON=this._getHeaderJSON();}if(readyState==4){var xml=transport.responseXML;this.responseXML=xml===undefined?null:xml;this.responseJSON=this._getResponseJSON();}},status:0,statusText:"",getStatus:Ajax.Request.prototype.getStatus,getStatusText:function(){try{return this.transport.statusText||"";}catch(e){return"";}},getHeader:Ajax.Request.prototype.getHeader,getAllHeaders:function(){try{return this.getAllResponseHeaders();}catch(e){return null;}},getResponseHeader:function(name){return this.transport.getResponseHeader(name);},getAllResponseHeaders:function(){return this.transport.getAllResponseHeaders();},_getHeaderJSON:function(){var json=this.getHeader("X-JSON");if(!json){return null;}json=decodeURIComponent(escape(json));try{return json.evalJSON(this.request.options.sanitizeJSON);}catch(e){this.request.dispatchException(e);}},_getResponseJSON:function(){var options=this.request.options;if(!options.evalJSON||(options.evalJSON!="force"&&!(this.getHeader("Content-type")||"").include("application/json"))){return null;}try{return this.transport.responseText.evalJSON(options.sanitizeJSON);}catch(e){this.request.dispatchException(e);}}});Ajax.Updater=Class.create(Ajax.Request,{initialize:function($super,container,url,options){this.container={success:(container.success||container),failure:(container.failure||(container.success?null:container))};options=options||{};var onComplete=options.onComplete;options.onComplete=(function(response,param){this.updateContent(response.responseText);if(Object.isFunction(onComplete)){onComplete(response,param);}}).bind(this);$super(url,options);},updateContent:function(responseText){var receiver=this.container[this.success()?"success":"failure"],options=this.options;if(!options.evalScripts){responseText=responseText.stripScripts();}if(receiver=$(receiver)){if(options.insertion){if(Object.isString(options.insertion)){var insertion={};insertion[options.insertion]=responseText;receiver.insert(insertion);}else{options.insertion(receiver,responseText);}}else{receiver.update(responseText);}}if(this.success()){if(this.onComplete){this.onComplete.bind(this).defer();}}}});Ajax.PeriodicalUpdater=Class.create(Ajax.Base,{initialize:function($super,container,url,options){$super(options);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=container;this.url=url;this.start();},start:function(){this.options.onComplete=this.updateComplete.bind(this);this.onTimerEvent();},stop:function(){this.updater.options.onComplete=undefined;clearTimeout(this.timer);(this.onComplete||Prototype.emptyFunction).apply(this,arguments);},updateComplete:function(response){if(this.options.decay){this.decay=(response.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=response.responseText;}this.timer=this.onTimerEvent.bind(this).delay(this.decay*this.frequency);},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options);}});function $(element){if(arguments.length>1){for(var i=0,elements=[],length=arguments.length;i<length;i++){elements.push($(arguments[i]));}return elements;}if(Object.isString(element)){element=document.getElementById(element);}return Element.extend(element);}if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(expression,parentElement){var results=[];var query=document.evaluate(expression,$(parentElement)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0,length=query.snapshotLength;i<length;i++){results.push(Element.extend(query.snapshotItem(i)));}return results;};}if(!window.Node){var Node={};}if(!Node.ELEMENT_NODE){Object.extend(Node,{ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12});}(function(){var element=this.Element;this.Element=function(tagName,attributes){attributes=attributes||{};tagName=tagName.toLowerCase();var cache=Element.cache;if(Prototype.Browser.IE&&attributes.name){tagName="<"+tagName+' name="'+attributes.name+'">';delete attributes.name;return Element.writeAttribute(document.createElement(tagName),attributes);}if(!cache[tagName]){cache[tagName]=Element.extend(document.createElement(tagName));}return Element.writeAttribute(cache[tagName].cloneNode(false),attributes);};Object.extend(this.Element,element||{});}).call(window);Element.cache={};Element.Methods={visible:function(element){return $(element).style.display!="none";},toggle:function(element){element=$(element);Element[Element.visible(element)?"hide":"show"](element);return element;},hide:function(element){$(element).style.display="none";return element;},show:function(element){$(element).style.display="";return element;},remove:function(element){element=$(element);element.parentNode.removeChild(element);return element;},update:function(element,content){element=$(element);if(content&&content.toElement){content=content.toElement();}if(Object.isElement(content)){return element.update().insert(content);}content=Object.toHTML(content);element.innerHTML=content.stripScripts();content.evalScripts.bind(content).defer();return element;},replace:function(element,content){element=$(element);if(content&&content.toElement){content=content.toElement();}else{if(!Object.isElement(content)){content=Object.toHTML(content);var range=element.ownerDocument.createRange();range.selectNode(element);content.evalScripts.bind(content).defer();content=range.createContextualFragment(content.stripScripts());}}element.parentNode.replaceChild(content,element);return element;},insert:function(element,insertions){element=$(element);if(Object.isString(insertions)||Object.isNumber(insertions)||Object.isElement(insertions)||(insertions&&(insertions.toElement||insertions.toHTML))){insertions={bottom:insertions};}var content,t,range;for(position in insertions){content=insertions[position];position=position.toLowerCase();t=Element._insertionTranslations[position];if(content&&content.toElement){content=content.toElement();}if(Object.isElement(content)){t.insert(element,content);continue;}content=Object.toHTML(content);range=element.ownerDocument.createRange();t.initializeRange(element,range);t.insert(element,range.createContextualFragment(content.stripScripts()));content.evalScripts.bind(content).defer();}return element;},wrap:function(element,wrapper,attributes){element=$(element);if(Object.isElement(wrapper)){$(wrapper).writeAttribute(attributes||{});}else{if(Object.isString(wrapper)){wrapper=new Element(wrapper,attributes);}else{wrapper=new Element("div",wrapper);}}if(element.parentNode){element.parentNode.replaceChild(wrapper,element);}wrapper.appendChild(element);return wrapper;},inspect:function(element){element=$(element);var result="<"+element.tagName.toLowerCase();$H({"id":"id","className":"class"}).each(function(pair){var property=pair.first(),attribute=pair.last();var value=(element[property]||"").toString();if(value){result+=" "+attribute+"="+value.inspect(true);}});return result+">";},recursivelyCollect:function(element,property){element=$(element);var elements=[];while(element=element[property]){if(element.nodeType==1){elements.push(Element.extend(element));}}return elements;},ancestors:function(element){return $(element).recursivelyCollect("parentNode");},descendants:function(element){return $A($(element).getElementsByTagName("*")).each(Element.extend);},firstDescendant:function(element){element=$(element).firstChild;while(element&&element.nodeType!=1){element=element.nextSibling;}return $(element);},immediateDescendants:function(element){if(!(element=$(element).firstChild)){return[];}while(element&&element.nodeType!=1){element=element.nextSibling;}if(element){return[element].concat($(element).nextSiblings());}return[];},previousSiblings:function(element){return $(element).recursivelyCollect("previousSibling");},nextSiblings:function(element){return $(element).recursivelyCollect("nextSibling");},siblings:function(element){element=$(element);return element.previousSiblings().reverse().concat(element.nextSiblings());},match:function(element,selector){if(Object.isString(selector)){selector=new Selector(selector);}return selector.match($(element));},up:function(element,expression,index){element=$(element);if(arguments.length==1){return $(element.parentNode);}var ancestors=element.ancestors();return expression?Selector.findElement(ancestors,expression,index):ancestors[index||0];},down:function(element,expression,index){element=$(element);if(arguments.length==1){return element.firstDescendant();}var descendants=element.descendants();return expression?Selector.findElement(descendants,expression,index):descendants[index||0];},previous:function(element,expression,index){element=$(element);if(arguments.length==1){return $(Selector.handlers.previousElementSibling(element));}var previousSiblings=element.previousSiblings();return expression?Selector.findElement(previousSiblings,expression,index):previousSiblings[index||0];},next:function(element,expression,index){element=$(element);if(arguments.length==1){return $(Selector.handlers.nextElementSibling(element));}var nextSiblings=element.nextSiblings();return expression?Selector.findElement(nextSiblings,expression,index):nextSiblings[index||0];},select:function(){var args=$A(arguments),element=$(args.shift());return Selector.findChildElements(element,args);},adjacent:function(){var args=$A(arguments),element=$(args.shift());return Selector.findChildElements(element.parentNode,args).without(element);},identify:function(element){element=$(element);var id=element.readAttribute("id"),self=arguments.callee;if(id){return id;}do{id="anonymous_element_"+self.counter++;}while($(id));element.writeAttribute("id",id);return id;},readAttribute:function(element,name){element=$(element);if(Prototype.Browser.IE){var t=Element._attributeTranslations.read;if(t.values[name]){return t.values[name](element,name);}if(t.names[name]){name=t.names[name];}if(name.include(":")){return(!element.attributes||!element.attributes[name])?null:element.attributes[name].value;}}return element.getAttribute(name);},writeAttribute:function(element,name,value){element=$(element);var attributes={},t=Element._attributeTranslations.write;if(typeof name=="object"){attributes=name;}else{attributes[name]=value===undefined?true:value;}for(var attr in attributes){var name=t.names[attr]||attr,value=attributes[attr];if(t.values[attr]){name=t.values[attr](element,value);}if(value===false||value===null){element.removeAttribute(name);}else{if(value===true){element.setAttribute(name,name);}else{element.setAttribute(name,value);}}}return element;},getHeight:function(element){return $(element).getDimensions().height;},getWidth:function(element){return $(element).getDimensions().width;},classNames:function(element){return new Element.ClassNames(element);},hasClassName:function(element,className){if(!(element=$(element))){return ;}var elementClassName=element.className;return(elementClassName.length>0&&(elementClassName==className||new RegExp("(^|\\s)"+className+"(\\s|$)").test(elementClassName)));},addClassName:function(element,className){if(!(element=$(element))){return ;}if(!element.hasClassName(className)){element.className+=(element.className?" ":"")+className;}return element;},removeClassName:function(element,className){if(!(element=$(element))){return ;}element.className=element.className.replace(new RegExp("(^|\\s+)"+className+"(\\s+|$)")," ").strip();return element;},toggleClassName:function(element,className){if(!(element=$(element))){return ;}return element[element.hasClassName(className)?"removeClassName":"addClassName"](className);},cleanWhitespace:function(element){element=$(element);var node=element.firstChild;while(node){var nextNode=node.nextSibling;if(node.nodeType==3&&!/\S/.test(node.nodeValue)){element.removeChild(node);}node=nextNode;}return element;},empty:function(element){return $(element).innerHTML.blank();},descendantOf:function(element,ancestor){element=$(element),ancestor=$(ancestor);if(element.compareDocumentPosition){return(element.compareDocumentPosition(ancestor)&8)===8;}if(element.sourceIndex&&!Prototype.Browser.Opera){var e=element.sourceIndex,a=ancestor.sourceIndex,nextAncestor=ancestor.nextSibling;if(!nextAncestor){do{ancestor=ancestor.parentNode;}while(!(nextAncestor=ancestor.nextSibling)&&ancestor.parentNode);}if(nextAncestor){return(e>a&&e<nextAncestor.sourceIndex);}}while(element=element.parentNode){if(element==ancestor){return true;}}return false;},scrollTo:function(element){element=$(element);var pos=element.cumulativeOffset();window.scrollTo(pos[0],pos[1]);return element;},getStyle:function(element,style){element=$(element);style=style=="float"?"cssFloat":style.camelize();var value=element.style[style];if(!value){var css=document.defaultView.getComputedStyle(element,null);value=css?css[style]:null;}if(style=="opacity"){return value?parseFloat(value):1;}return value=="auto"?null:value;},getOpacity:function(element){return $(element).getStyle("opacity");},setStyle:function(element,styles){element=$(element);var elementStyle=element.style,match;if(Object.isString(styles)){element.style.cssText+=";"+styles;return styles.include("opacity")?element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]):element;}for(var property in styles){if(property=="opacity"){element.setOpacity(styles[property]);}else{elementStyle[(property=="float"||property=="cssFloat")?(elementStyle.styleFloat===undefined?"cssFloat":"styleFloat"):property]=styles[property];}}return element;},setOpacity:function(element,value){element=$(element);element.style.opacity=(value==1||value==="")?"":(value<0.00001)?0:value;return element;},getDimensions:function(element){element=$(element);var display=$(element).getStyle("display");if(display!="none"&&display!=null){return{width:element.offsetWidth,height:element.offsetHeight};}var els=element.style;var originalVisibility=els.visibility;var originalPosition=els.position;var originalDisplay=els.display;els.visibility="hidden";els.position="absolute";els.display="block";var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;els.display=originalDisplay;els.position=originalPosition;els.visibility=originalVisibility;return{width:originalWidth,height:originalHeight};},makePositioned:function(element){element=$(element);var pos=Element.getStyle(element,"position");if(pos=="static"||!pos){element._madePositioned=true;element.style.position="relative";if(window.opera){element.style.top=0;element.style.left=0;}}return element;},undoPositioned:function(element){element=$(element);if(element._madePositioned){element._madePositioned=undefined;element.style.position=element.style.top=element.style.left=element.style.bottom=element.style.right="";}return element;},makeClipping:function(element){element=$(element);if(element._overflow){return element;}element._overflow=Element.getStyle(element,"overflow")||"auto";if(element._overflow!=="hidden"){element.style.overflow="hidden";}return element;},undoClipping:function(element){element=$(element);if(!element._overflow){return element;}element.style.overflow=element._overflow=="auto"?"":element._overflow;element._overflow=null;return element;},cumulativeOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;}while(element);return Element._returnOffset(valueL,valueT);},positionedOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;if(element){if(element.tagName=="BODY"){break;}var p=Element.getStyle(element,"position");if(p=="relative"||p=="absolute"){break;}}}while(element);return Element._returnOffset(valueL,valueT);},absolutize:function(element){element=$(element);if(element.getStyle("position")=="absolute"){return ;}var offsets=element.positionedOffset();var top=offsets[1];var left=offsets[0];var width=element.clientWidth;var height=element.clientHeight;element._originalLeft=left-parseFloat(element.style.left||0);element._originalTop=top-parseFloat(element.style.top||0);element._originalWidth=element.style.width;element._originalHeight=element.style.height;element.style.position="absolute";element.style.top=top+"px";element.style.left=left+"px";element.style.width=width+"px";element.style.height=height+"px";return element;},relativize:function(element){element=$(element);if(element.getStyle("position")=="relative"){return ;}element.style.position="relative";var top=parseFloat(element.style.top||0)-(element._originalTop||0);var left=parseFloat(element.style.left||0)-(element._originalLeft||0);element.style.top=top+"px";element.style.left=left+"px";element.style.height=element._originalHeight;element.style.width=element._originalWidth;return element;},cumulativeScrollOffset:function(element){var valueT=0,valueL=0;do{valueT+=element.scrollTop||0;valueL+=element.scrollLeft||0;element=element.parentNode;}while(element);return Element._returnOffset(valueL,valueT);},getOffsetParent:function(element){if(element.offsetParent){return $(element.offsetParent);}if(element==document.body){return $(element);}while((element=element.parentNode)&&element!=document.body){if(Element.getStyle(element,"position")!="static"){return $(element);}}return $(document.body);},viewportOffset:function(forElement){var valueT=0,valueL=0;var element=forElement;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body&&Element.getStyle(element,"position")=="absolute"){break;}}while(element=element.offsetParent);element=forElement;do{if(!Prototype.Browser.Opera||element.tagName=="BODY"){valueT-=element.scrollTop||0;valueL-=element.scrollLeft||0;}}while(element=element.parentNode);return Element._returnOffset(valueL,valueT);},clonePosition:function(element,source){var options=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});source=$(source);var p=source.viewportOffset();element=$(element);var delta=[0,0];var parent=null;if(Element.getStyle(element,"position")=="absolute"){parent=element.getOffsetParent();delta=parent.viewportOffset();}if(parent==document.body){delta[0]-=document.body.offsetLeft;delta[1]-=document.body.offsetTop;}if(options.setLeft){element.style.left=(p[0]-delta[0]+options.offsetLeft)+"px";}if(options.setTop){element.style.top=(p[1]-delta[1]+options.offsetTop)+"px";}if(options.setWidth){element.style.width=source.offsetWidth+"px";}if(options.setHeight){element.style.height=source.offsetHeight+"px";}return element;}};Element.Methods.identify.counter=1;Object.extend(Element.Methods,{getElementsBySelector:Element.Methods.select,childElements:Element.Methods.immediateDescendants});Element._attributeTranslations={write:{names:{className:"class",htmlFor:"for"},values:{}}};if(!document.createRange||Prototype.Browser.Opera){Element.Methods.insert=function(element,insertions){element=$(element);if(Object.isString(insertions)||Object.isNumber(insertions)||Object.isElement(insertions)||(insertions&&(insertions.toElement||insertions.toHTML))){insertions={bottom:insertions};}var t=Element._insertionTranslations,content,position,pos,tagName;for(position in insertions){content=insertions[position];position=position.toLowerCase();pos=t[position];if(content&&content.toElement){content=content.toElement();}if(Object.isElement(content)){pos.insert(element,content);continue;}content=Object.toHTML(content);tagName=((position=="before"||position=="after")?element.parentNode:element).tagName.toUpperCase();if(t.tags[tagName]){var fragments=Element._getContentFromAnonymousElement(tagName,content.stripScripts());if(position=="top"||position=="after"){fragments.reverse();}fragments.each(pos.insert.curry(element));}else{element.insertAdjacentHTML(pos.adjacency,content.stripScripts());}content.evalScripts.bind(content).defer();}return element;};}if(Prototype.Browser.Opera){Element.Methods._getStyle=Element.Methods.getStyle;Element.Methods.getStyle=function(element,style){switch(style){case"left":case"top":case"right":case"bottom":if(Element._getStyle(element,"position")=="static"){return null;}default:return Element._getStyle(element,style);}};Element.Methods._readAttribute=Element.Methods.readAttribute;Element.Methods.readAttribute=function(element,attribute){if(attribute=="title"){return element.title;}return Element._readAttribute(element,attribute);};}else{if(Prototype.Browser.IE){$w("positionedOffset getOffsetParent viewportOffset").each(function(method){Element.Methods[method]=Element.Methods[method].wrap(function(proceed,element){element=$(element);var position=element.getStyle("position");if(position!="static"){return proceed(element);}element.setStyle({position:"relative"});var value=proceed(element);element.setStyle({position:position});return value;});});Element.Methods.getStyle=function(element,style){element=$(element);style=(style=="float"||style=="cssFloat")?"styleFloat":style.camelize();var value=element.style[style];if(!value&&element.currentStyle){value=element.currentStyle[style];}if(style=="opacity"){if(value=(element.getStyle("filter")||"").match(/alpha\(opacity=(.*)\)/)){if(value[1]){return parseFloat(value[1])/100;}}return 1;}if(value=="auto"){if((style=="width"||style=="height")&&(element.getStyle("display")!="none")){return element["offset"+style.capitalize()]+"px";}return null;}return value;};Element.Methods.setOpacity=function(element,value){function stripAlpha(filter){return filter.replace(/alpha\([^\)]*\)/gi,"");}element=$(element);var currentStyle=element.currentStyle;if((currentStyle&&!currentStyle.hasLayout)||(!currentStyle&&element.style.zoom=="normal")){element.style.zoom=1;}var filter=element.getStyle("filter"),style=element.style;if(value==1||value===""){(filter=stripAlpha(filter))?style.filter=filter:style.removeAttribute("filter");return element;}else{if(value<0.00001){value=0;}}style.filter=stripAlpha(filter)+"alpha(opacity="+(value*100)+")";return element;};Element._attributeTranslations={read:{names:{"class":"className","for":"htmlFor"},values:{_getAttr:function(element,attribute){return element.getAttribute(attribute,2);},_getAttrNode:function(element,attribute){var node=element.getAttributeNode(attribute);return node?node.value:"";},_getEv:function(element,attribute){var attribute=element.getAttribute(attribute);return attribute?attribute.toString().slice(23,-2):null;},_flag:function(element,attribute){return $(element).hasAttribute(attribute)?attribute:null;},style:function(element){return element.style.cssText.toLowerCase();},title:function(element){return element.title;}}}};Element._attributeTranslations.write={names:Object.clone(Element._attributeTranslations.read.names),values:{checked:function(element,value){element.checked=!!value;},style:function(element,value){element.style.cssText=value?value:"";}}};Element._attributeTranslations.has={};$w("colSpan rowSpan vAlign dateTime accessKey tabIndex "+"encType maxLength readOnly longDesc").each(function(attr){Element._attributeTranslations.write.names[attr.toLowerCase()]=attr;Element._attributeTranslations.has[attr.toLowerCase()]=attr;});(function(v){Object.extend(v,{href:v._getAttr,src:v._getAttr,type:v._getAttr,action:v._getAttrNode,disabled:v._flag,checked:v._flag,readonly:v._flag,multiple:v._flag,onload:v._getEv,onunload:v._getEv,onclick:v._getEv,ondblclick:v._getEv,onmousedown:v._getEv,onmouseup:v._getEv,onmouseover:v._getEv,onmousemove:v._getEv,onmouseout:v._getEv,onfocus:v._getEv,onblur:v._getEv,onkeypress:v._getEv,onkeydown:v._getEv,onkeyup:v._getEv,onsubmit:v._getEv,onreset:v._getEv,onselect:v._getEv,onchange:v._getEv});})(Element._attributeTranslations.read.values);}else{if(Prototype.Browser.Gecko&&/rv:1\.8\.0/.test(navigator.userAgent)){Element.Methods.setOpacity=function(element,value){element=$(element);element.style.opacity=(value==1)?0.999999:(value==="")?"":(value<0.00001)?0:value;return element;};}else{if(Prototype.Browser.WebKit){Element.Methods.setOpacity=function(element,value){element=$(element);element.style.opacity=(value==1||value==="")?"":(value<0.00001)?0:value;if(value==1){if(element.tagName=="IMG"&&element.width){element.width++;element.width--;}else{try{var n=document.createTextNode(" ");element.appendChild(n);element.removeChild(n);}catch(e){}}}return element;};Element.Methods.cumulativeOffset=function(element){var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body){if(Element.getStyle(element,"position")=="absolute"){break;}}element=element.offsetParent;}while(element);return Element._returnOffset(valueL,valueT);};}}}}if(Prototype.Browser.IE||Prototype.Browser.Opera){Element.Methods.update=function(element,content){element=$(element);if(content&&content.toElement){content=content.toElement();}if(Object.isElement(content)){return element.update().insert(content);}content=Object.toHTML(content);var tagName=element.tagName.toUpperCase();if(tagName in Element._insertionTranslations.tags){$A(element.childNodes).each(function(node){element.removeChild(node);});Element._getContentFromAnonymousElement(tagName,content.stripScripts()).each(function(node){element.appendChild(node);});}else{element.innerHTML=content.stripScripts();}content.evalScripts.bind(content).defer();return element;};}if(document.createElement("div").outerHTML){Element.Methods.replace=function(element,content){element=$(element);if(content&&content.toElement){content=content.toElement();}if(Object.isElement(content)){element.parentNode.replaceChild(content,element);return element;}content=Object.toHTML(content);var parent=element.parentNode,tagName=parent.tagName.toUpperCase();if(Element._insertionTranslations.tags[tagName]){var nextSibling=element.next();var fragments=Element._getContentFromAnonymousElement(tagName,content.stripScripts());parent.removeChild(element);if(nextSibling){fragments.each(function(node){parent.insertBefore(node,nextSibling);});}else{fragments.each(function(node){parent.appendChild(node);});}}else{element.outerHTML=content.stripScripts();}content.evalScripts.bind(content).defer();return element;};}Element._returnOffset=function(l,t){var result=[l,t];result.left=l;result.top=t;return result;};Element._getContentFromAnonymousElement=function(tagName,html){var div=new Element("div"),t=Element._insertionTranslations.tags[tagName];div.innerHTML=t[0]+html+t[1];t[2].times(function(){div=div.firstChild;});return $A(div.childNodes);};Element._insertionTranslations={before:{adjacency:"beforeBegin",insert:function(element,node){element.parentNode.insertBefore(node,element);},initializeRange:function(element,range){range.setStartBefore(element);}},top:{adjacency:"afterBegin",insert:function(element,node){element.insertBefore(node,element.firstChild);},initializeRange:function(element,range){range.selectNodeContents(element);range.collapse(true);}},bottom:{adjacency:"beforeEnd",insert:function(element,node){element.appendChild(node);}},after:{adjacency:"afterEnd",insert:function(element,node){element.parentNode.insertBefore(node,element.nextSibling);},initializeRange:function(element,range){range.setStartAfter(element);}},tags:{TABLE:["<table>","</table>",1],TBODY:["<table><tbody>","</tbody></table>",2],TR:["<table><tbody><tr>","</tr></tbody></table>",3],TD:["<table><tbody><tr><td>","</td></tr></tbody></table>",4],SELECT:["<select>","</select>",1]}};(function(){this.bottom.initializeRange=this.top.initializeRange;Object.extend(this.tags,{THEAD:this.tags.TBODY,TFOOT:this.tags.TBODY,TH:this.tags.TD});}).call(Element._insertionTranslations);Element.Methods.Simulated={hasAttribute:function(element,attribute){attribute=Element._attributeTranslations.has[attribute]||attribute;var node=$(element).getAttributeNode(attribute);return node&&node.specified;}};Element.Methods.ByTag={};Object.extend(Element,Element.Methods);if(!Prototype.BrowserFeatures.ElementExtensions&&document.createElement("div").__proto__){window.HTMLElement={};window.HTMLElement.prototype=document.createElement("div").__proto__;Prototype.BrowserFeatures.ElementExtensions=true;}Element.extend=(function(){if(Prototype.BrowserFeatures.SpecificElementExtensions){return Prototype.K;}var Methods={},ByTag=Element.Methods.ByTag;var extend=Object.extend(function(element){if(!element||element._extendedByPrototype||element.nodeType!=1||element==window){return element;}var methods=Object.clone(Methods),tagName=element.tagName,property,value;if(ByTag[tagName]){Object.extend(methods,ByTag[tagName]);}for(property in methods){value=methods[property];if(Object.isFunction(value)&&!(property in element)){element[property]=value.methodize();}}element._extendedByPrototype=Prototype.emptyFunction;return element;},{refresh:function(){if(!Prototype.BrowserFeatures.ElementExtensions){Object.extend(Methods,Element.Methods);Object.extend(Methods,Element.Methods.Simulated);}}});extend.refresh();return extend;})();Element.hasAttribute=function(element,attribute){if(element.hasAttribute){return element.hasAttribute(attribute);}return Element.Methods.Simulated.hasAttribute(element,attribute);};Element.addMethods=function(methods){var F=Prototype.BrowserFeatures,T=Element.Methods.ByTag;if(!methods){Object.extend(Form,Form.Methods);Object.extend(Form.Element,Form.Element.Methods);Object.extend(Element.Methods.ByTag,{"FORM":Object.clone(Form.Methods),"INPUT":Object.clone(Form.Element.Methods),"SELECT":Object.clone(Form.Element.Methods),"TEXTAREA":Object.clone(Form.Element.Methods)});}if(arguments.length==2){var tagName=methods;methods=arguments[1];}if(!tagName){Object.extend(Element.Methods,methods||{});}else{if(Object.isArray(tagName)){tagName.each(extend);}else{extend(tagName);}}function extend(tagName){tagName=tagName.toUpperCase();if(!Element.Methods.ByTag[tagName]){Element.Methods.ByTag[tagName]={};}Object.extend(Element.Methods.ByTag[tagName],methods);}function copy(methods,destination,onlyIfAbsent){onlyIfAbsent=onlyIfAbsent||false;for(var property in methods){var value=methods[property];if(!Object.isFunction(value)){continue;}if(!onlyIfAbsent||!(property in destination)){destination[property]=value.methodize();}}}function findDOMClass(tagName){var klass;var trans={"OPTGROUP":"OptGroup","TEXTAREA":"TextArea","P":"Paragraph","FIELDSET":"FieldSet","UL":"UList","OL":"OList","DL":"DList","DIR":"Directory","H1":"Heading","H2":"Heading","H3":"Heading","H4":"Heading","H5":"Heading","H6":"Heading","Q":"Quote","INS":"Mod","DEL":"Mod","A":"Anchor","IMG":"Image","CAPTION":"TableCaption","COL":"TableCol","COLGROUP":"TableCol","THEAD":"TableSection","TFOOT":"TableSection","TBODY":"TableSection","TR":"TableRow","TH":"TableCell","TD":"TableCell","FRAMESET":"FrameSet","IFRAME":"IFrame"};if(trans[tagName]){klass="HTML"+trans[tagName]+"Element";}if(window[klass]){return window[klass];}klass="HTML"+tagName+"Element";if(window[klass]){return window[klass];}klass="HTML"+tagName.capitalize()+"Element";if(window[klass]){return window[klass];}window[klass]={};window[klass].prototype=document.createElement(tagName).__proto__;return window[klass];}if(F.ElementExtensions){copy(Element.Methods,HTMLElement.prototype);copy(Element.Methods.Simulated,HTMLElement.prototype,true);}if(F.SpecificElementExtensions){for(var tag in Element.Methods.ByTag){var klass=findDOMClass(tag);if(Object.isUndefined(klass)){continue;}copy(T[tag],klass.prototype);}}Object.extend(Element,Element.Methods);delete Element.ByTag;if(Element.extend.refresh){Element.extend.refresh();}Element.cache={};};document.viewport={getDimensions:function(){var dimensions={};$w("width height").each(function(d){var D=d.capitalize();dimensions[d]=self["inner"+D]||(document.documentElement["client"+D]||document.body["client"+D]);});return dimensions;},getWidth:function(){return this.getDimensions().width;},getHeight:function(){return this.getDimensions().height;},getScrollOffsets:function(){return Element._returnOffset(window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft,window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop);}};var Selector=Class.create({initialize:function(expression){this.expression=expression.strip();this.compileMatcher();},compileMatcher:function(){if(Prototype.BrowserFeatures.XPath&&!(/(\[[\w-]*?:|:checked)/).test(this.expression)){return this.compileXPathMatcher();}var e=this.expression,ps=Selector.patterns,h=Selector.handlers,c=Selector.criteria,le,p,m;if(Selector._cache[e]){this.matcher=Selector._cache[e];return ;}this.matcher=["this.matcher = function(root) {","var r = root, h = Selector.handlers, c = false, n;"];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i in ps){p=ps[i];if(m=e.match(p)){this.matcher.push(Object.isFunction(c[i])?c[i](m):new Template(c[i]).evaluate(m));e=e.replace(m[0],"");break;}}}this.matcher.push("return h.unique(n);\n}");eval(this.matcher.join("\n"));Selector._cache[this.expression]=this.matcher;},compileXPathMatcher:function(){var e=this.expression,ps=Selector.patterns,x=Selector.xpath,le,m;if(Selector._cache[e]){this.xpath=Selector._cache[e];return ;}this.matcher=[".//*"];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i in ps){if(m=e.match(ps[i])){this.matcher.push(Object.isFunction(x[i])?x[i](m):new Template(x[i]).evaluate(m));e=e.replace(m[0],"");break;}}}this.xpath=this.matcher.join("");Selector._cache[this.expression]=this.xpath;},findElements:function(root){root=root||document;if(this.xpath){return document._getElementsByXPath(this.xpath,root);}return this.matcher(root);},match:function(element){this.tokens=[];var e=this.expression,ps=Selector.patterns,as=Selector.assertions;var le,p,m;while(e&&le!==e&&(/\S/).test(e)){le=e;for(var i in ps){p=ps[i];if(m=e.match(p)){if(as[i]){this.tokens.push([i,Object.clone(m)]);e=e.replace(m[0],"");}else{return this.findElements(document).include(element);}}}}var match=true,name,matches;for(var i=0,token;token=this.tokens[i];i++){name=token[0],matches=token[1];if(!Selector.assertions[name](element,matches)){match=false;break;}}return match;},toString:function(){return this.expression;},inspect:function(){return"#<Selector:"+this.expression.inspect()+">";}});Object.extend(Selector,{_cache:{},xpath:{descendant:"//*",child:"/*",adjacent:"/following-sibling::*[1]",laterSibling:"/following-sibling::*",tagName:function(m){if(m[1]=="*"){return"";}return"[local-name()='"+m[1].toLowerCase()+"' or local-name()='"+m[1].toUpperCase()+"']";},className:"[contains(concat(' ', @class, ' '), ' #{1} ')]",id:"[@id='#{1}']",attrPresence:"[@#{1}]",attr:function(m){m[3]=m[5]||m[6];return new Template(Selector.xpath.operators[m[2]]).evaluate(m);},pseudo:function(m){var h=Selector.xpath.pseudos[m[1]];if(!h){return"";}if(Object.isFunction(h)){return h(m);}return new Template(Selector.xpath.pseudos[m[1]]).evaluate(m);},operators:{"=":"[@#{1}='#{3}']","!=":"[@#{1}!='#{3}']","^=":"[starts-with(@#{1}, '#{3}')]","$=":"[substring(@#{1}, (string-length(@#{1}) - string-length('#{3}') + 1))='#{3}']","*=":"[contains(@#{1}, '#{3}')]","~=":"[contains(concat(' ', @#{1}, ' '), ' #{3} ')]","|=":"[contains(concat('-', @#{1}, '-'), '-#{3}-')]"},pseudos:{"first-child":"[not(preceding-sibling::*)]","last-child":"[not(following-sibling::*)]","only-child":"[not(preceding-sibling::* or following-sibling::*)]","empty":"[count(*) = 0 and (count(text()) = 0 or translate(text(), ' \t\r\n', '') = '')]","checked":"[@checked]","disabled":"[@disabled]","enabled":"[not(@disabled)]","not":function(m){var e=m[6],p=Selector.patterns,x=Selector.xpath,le,m,v;var exclusion=[];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i in p){if(m=e.match(p[i])){v=Object.isFunction(x[i])?x[i](m):new Template(x[i]).evaluate(m);exclusion.push("("+v.substring(1,v.length-1)+")");e=e.replace(m[0],"");break;}}}return"[not("+exclusion.join(" and ")+")]";},"nth-child":function(m){return Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ",m);},"nth-last-child":function(m){return Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ",m);},"nth-of-type":function(m){return Selector.xpath.pseudos.nth("position() ",m);},"nth-last-of-type":function(m){return Selector.xpath.pseudos.nth("(last() + 1 - position()) ",m);},"first-of-type":function(m){m[6]="1";return Selector.xpath.pseudos["nth-of-type"](m);},"last-of-type":function(m){m[6]="1";return Selector.xpath.pseudos["nth-last-of-type"](m);},"only-of-type":function(m){var p=Selector.xpath.pseudos;return p["first-of-type"](m)+p["last-of-type"](m);},nth:function(fragment,m){var mm,formula=m[6],predicate;if(formula=="even"){formula="2n+0";}if(formula=="odd"){formula="2n+1";}if(mm=formula.match(/^(\d+)$/)){return"["+fragment+"= "+mm[1]+"]";}if(mm=formula.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(mm[1]=="-"){mm[1]=-1;}var a=mm[1]?Number(mm[1]):1;var b=mm[2]?Number(mm[2]):0;predicate="[((#{fragment} - #{b}) mod #{a} = 0) and "+"((#{fragment} - #{b}) div #{a} >= 0)]";return new Template(predicate).evaluate({fragment:fragment,a:a,b:b});}}}},criteria:{tagName:'n = h.tagName(n, r, "#{1}", c);   c = false;',className:'n = h.className(n, r, "#{1}", c); c = false;',id:'n = h.id(n, r, "#{1}", c);        c = false;',attrPresence:'n = h.attrPresence(n, r, "#{1}"); c = false;',attr:function(m){m[3]=(m[5]||m[6]);return new Template('n = h.attr(n, r, "#{1}", "#{3}", "#{2}"); c = false;').evaluate(m);},pseudo:function(m){if(m[6]){m[6]=m[6].replace(/"/g,'\\"');}return new Template('n = h.pseudo(n, "#{1}", "#{6}", r, c); c = false;').evaluate(m);},descendant:'c = "descendant";',child:'c = "child";',adjacent:'c = "adjacent";',laterSibling:'c = "laterSibling";'},patterns:{laterSibling:/^\s*~\s*/,child:/^\s*>\s*/,adjacent:/^\s*\+\s*/,descendant:/^\s/,tagName:/^\s*(\*|[\w\-]+)(\b|$)?/,id:/^#([\w\-\*]+)(\b|$)/,className:/^\.([\w\-\*]+)(\b|$)/,pseudo:/^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis)abled|not)(\((.*?)\))?(\b|$|(?=\s)|(?=:))/,attrPresence:/^\[([\w]+)\]/,attr:/\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=)\s*((['"])([^\4]*?)\4|([^'"][^\]]*?)))?\]/},assertions:{tagName:function(element,matches){return matches[1].toUpperCase()==element.tagName.toUpperCase();},className:function(element,matches){return Element.hasClassName(element,matches[1]);},id:function(element,matches){return element.id===matches[1];},attrPresence:function(element,matches){return Element.hasAttribute(element,matches[1]);},attr:function(element,matches){var nodeValue=Element.readAttribute(element,matches[1]);return Selector.operators[matches[2]](nodeValue,matches[3]);}},handlers:{concat:function(a,b){for(var i=0,node;node=b[i];i++){a.push(node);}return a;},mark:function(nodes){for(var i=0,node;node=nodes[i];i++){node._counted=true;}return nodes;},unmark:function(nodes){for(var i=0,node;node=nodes[i];i++){node._counted=undefined;}return nodes;},index:function(parentNode,reverse,ofType){parentNode._counted=true;if(reverse){for(var nodes=parentNode.childNodes,i=nodes.length-1,j=1;i>=0;i--){var node=nodes[i];if(node.nodeType==1&&(!ofType||node._counted)){node.nodeIndex=j++;}}}else{for(var i=0,j=1,nodes=parentNode.childNodes;node=nodes[i];i++){if(node.nodeType==1&&(!ofType||node._counted)){node.nodeIndex=j++;}}}},unique:function(nodes){if(nodes.length==0){return nodes;}var results=[],n;for(var i=0,l=nodes.length;i<l;i++){if(!(n=nodes[i])._counted){n._counted=true;results.push(Element.extend(n));}}return Selector.handlers.unmark(results);},descendant:function(nodes){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++){h.concat(results,node.getElementsByTagName("*"));}return results;},child:function(nodes){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++){for(var j=0,children=[],child;child=node.childNodes[j];j++){if(child.nodeType==1&&child.tagName!="!"){results.push(child);}}}return results;},adjacent:function(nodes){for(var i=0,results=[],node;node=nodes[i];i++){var next=this.nextElementSibling(node);if(next){results.push(next);}}return results;},laterSibling:function(nodes){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++){h.concat(results,Element.nextSiblings(node));}return results;},nextElementSibling:function(node){while(node=node.nextSibling){if(node.nodeType==1){return node;}}return null;},previousElementSibling:function(node){while(node=node.previousSibling){if(node.nodeType==1){return node;}}return null;},tagName:function(nodes,root,tagName,combinator){tagName=tagName.toUpperCase();var results=[],h=Selector.handlers;if(nodes){if(combinator){if(combinator=="descendant"){for(var i=0,node;node=nodes[i];i++){h.concat(results,node.getElementsByTagName(tagName));}return results;}else{nodes=this[combinator](nodes);}if(tagName=="*"){return nodes;}}for(var i=0,node;node=nodes[i];i++){if(node.tagName.toUpperCase()==tagName){results.push(node);}}return results;}else{return root.getElementsByTagName(tagName);}},id:function(nodes,root,id,combinator){var targetNode=$(id),h=Selector.handlers;if(!targetNode){return[];}if(!nodes&&root==document){return[targetNode];}if(nodes){if(combinator){if(combinator=="child"){for(var i=0,node;node=nodes[i];i++){if(targetNode.parentNode==node){return[targetNode];}}}else{if(combinator=="descendant"){for(var i=0,node;node=nodes[i];i++){if(Element.descendantOf(targetNode,node)){return[targetNode];}}}else{if(combinator=="adjacent"){for(var i=0,node;node=nodes[i];i++){if(Selector.handlers.previousElementSibling(targetNode)==node){return[targetNode];}}}else{nodes=h[combinator](nodes);}}}}for(var i=0,node;node=nodes[i];i++){if(node==targetNode){return[targetNode];}}return[];}return(targetNode&&Element.descendantOf(targetNode,root))?[targetNode]:[];},className:function(nodes,root,className,combinator){if(nodes&&combinator){nodes=this[combinator](nodes);}return Selector.handlers.byClassName(nodes,root,className);},byClassName:function(nodes,root,className){if(!nodes){nodes=Selector.handlers.descendant([root]);}var needle=" "+className+" ";for(var i=0,results=[],node,nodeClassName;node=nodes[i];i++){nodeClassName=node.className;if(nodeClassName.length==0){continue;}if(nodeClassName==className||(" "+nodeClassName+" ").include(needle)){results.push(node);}}return results;},attrPresence:function(nodes,root,attr){if(!nodes){nodes=root.getElementsByTagName("*");}var results=[];for(var i=0,node;node=nodes[i];i++){if(Element.hasAttribute(node,attr)){results.push(node);}}return results;},attr:function(nodes,root,attr,value,operator){if(!nodes){nodes=root.getElementsByTagName("*");}var handler=Selector.operators[operator],results=[];for(var i=0,node;node=nodes[i];i++){var nodeValue=Element.readAttribute(node,attr);if(nodeValue===null){continue;}if(handler(nodeValue,value)){results.push(node);}}return results;},pseudo:function(nodes,name,value,root,combinator){if(nodes&&combinator){nodes=this[combinator](nodes);}if(!nodes){nodes=root.getElementsByTagName("*");}return Selector.pseudos[name](nodes,value,root);}},pseudos:{"first-child":function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(Selector.handlers.previousElementSibling(node)){continue;}results.push(node);}return results;},"last-child":function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(Selector.handlers.nextElementSibling(node)){continue;}results.push(node);}return results;},"only-child":function(nodes,value,root){var h=Selector.handlers;for(var i=0,results=[],node;node=nodes[i];i++){if(!h.previousElementSibling(node)&&!h.nextElementSibling(node)){results.push(node);}}return results;},"nth-child":function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root);},"nth-last-child":function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root,true);},"nth-of-type":function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root,false,true);},"nth-last-of-type":function(nodes,formula,root){return Selector.pseudos.nth(nodes,formula,root,true,true);},"first-of-type":function(nodes,formula,root){return Selector.pseudos.nth(nodes,"1",root,false,true);},"last-of-type":function(nodes,formula,root){return Selector.pseudos.nth(nodes,"1",root,true,true);},"only-of-type":function(nodes,formula,root){var p=Selector.pseudos;return p["last-of-type"](p["first-of-type"](nodes,formula,root),formula,root);},getIndices:function(a,b,total){if(a==0){return b>0?[b]:[];}return $R(1,total).inject([],function(memo,i){if(0==(i-b)%a&&(i-b)/a>=0){memo.push(i);}return memo;});},nth:function(nodes,formula,root,reverse,ofType){if(nodes.length==0){return[];}if(formula=="even"){formula="2n+0";}if(formula=="odd"){formula="2n+1";}var h=Selector.handlers,results=[],indexed=[],m;h.mark(nodes);for(var i=0,node;node=nodes[i];i++){if(!node.parentNode._counted){h.index(node.parentNode,reverse,ofType);indexed.push(node.parentNode);}}if(formula.match(/^\d+$/)){formula=Number(formula);for(var i=0,node;node=nodes[i];i++){if(node.nodeIndex==formula){results.push(node);}}}else{if(m=formula.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(m[1]=="-"){m[1]=-1;}var a=m[1]?Number(m[1]):1;var b=m[2]?Number(m[2]):0;var indices=Selector.pseudos.getIndices(a,b,nodes.length);for(var i=0,node,l=indices.length;node=nodes[i];i++){for(var j=0;j<l;j++){if(node.nodeIndex==indices[j]){results.push(node);}}}}}h.unmark(nodes);h.unmark(indexed);return results;},"empty":function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(node.tagName=="!"||(node.firstChild&&!node.innerHTML.match(/^\s*$/))){continue;}results.push(node);}return results;},"not":function(nodes,selector,root){var h=Selector.handlers,selectorType,m;var exclusions=new Selector(selector).findElements(root);h.mark(exclusions);for(var i=0,results=[],node;node=nodes[i];i++){if(!node._counted){results.push(node);}}h.unmark(exclusions);return results;},"enabled":function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(!node.disabled){results.push(node);}}return results;},"disabled":function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(node.disabled){results.push(node);}}return results;},"checked":function(nodes,value,root){for(var i=0,results=[],node;node=nodes[i];i++){if(node.checked){results.push(node);}}return results;}},operators:{"=":function(nv,v){return nv==v;},"!=":function(nv,v){return nv!=v;},"^=":function(nv,v){return nv.startsWith(v);},"$=":function(nv,v){return nv.endsWith(v);},"*=":function(nv,v){return nv.include(v);},"~=":function(nv,v){return(" "+nv+" ").include(" "+v+" ");},"|=":function(nv,v){return("-"+nv.toUpperCase()+"-").include("-"+v.toUpperCase()+"-");}},matchElements:function(elements,expression){var matches=new Selector(expression).findElements(),h=Selector.handlers;h.mark(matches);for(var i=0,results=[],element;element=elements[i];i++){if(element._counted){results.push(element);}}h.unmark(matches);return results;},findElement:function(elements,expression,index){if(Object.isNumber(expression)){index=expression;expression=false;}return Selector.matchElements(elements,expression||"*")[index||0];},findChildElements:function(element,expressions){var exprs=expressions.join(","),expressions=[];exprs.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/,function(m){expressions.push(m[1].strip());});var results=[],h=Selector.handlers;for(var i=0,l=expressions.length,selector;i<l;i++){selector=new Selector(expressions[i].strip());h.concat(results,selector.findElements(element));}return(l>1)?h.unique(results):results;}});function $$(){return Selector.findChildElements(document,$A(arguments));}var Form={reset:function(form){$(form).reset();return form;},serializeElements:function(elements,options){if(typeof options!="object"){options={hash:!!options};}else{if(options.hash===undefined){options.hash=true;}}var key,value,submitted=false,submit=options.submit;var data=elements.inject({},function(result,element){if(!element.disabled&&element.name){key=element.name;value=$(element).getValue();if(value!=null&&(element.type!="submit"||(!submitted&&submit!==false&&(!submit||key==submit)&&(submitted=true)))){if(key in result){if(!Object.isArray(result[key])){result[key]=[result[key]];}result[key].push(value);}else{result[key]=value;}}}return result;});return options.hash?data:Object.toQueryString(data);}};Form.Methods={serialize:function(form,options){return Form.serializeElements(Form.getElements(form),options);},getElements:function(form){return $A($(form).getElementsByTagName("*")).inject([],function(elements,child){if(Form.Element.Serializers[child.tagName.toLowerCase()]){elements.push(Element.extend(child));}return elements;});},getInputs:function(form,typeName,name){form=$(form);var inputs=form.getElementsByTagName("input");if(!typeName&&!name){return $A(inputs).map(Element.extend);}for(var i=0,matchingInputs=[],length=inputs.length;i<length;i++){var input=inputs[i];if((typeName&&input.type!=typeName)||(name&&input.name!=name)){continue;}matchingInputs.push(Element.extend(input));}return matchingInputs;},disable:function(form){form=$(form);Form.getElements(form).invoke("disable");return form;},enable:function(form){form=$(form);Form.getElements(form).invoke("enable");return form;},findFirstElement:function(form){var elements=$(form).getElements().findAll(function(element){return"hidden"!=element.type&&!element.disabled;});var firstByIndex=elements.findAll(function(element){return element.hasAttribute("tabIndex")&&element.tabIndex>=0;}).sortBy(function(element){return element.tabIndex;}).first();return firstByIndex?firstByIndex:elements.find(function(element){return["input","select","textarea"].include(element.tagName.toLowerCase());});},focusFirstElement:function(form){form=$(form);form.findFirstElement().activate();return form;},request:function(form,options){form=$(form),options=Object.clone(options||{});var params=options.parameters,action=form.readAttribute("action")||"";if(action.blank()){action=window.location.href;}options.parameters=form.serialize(true);if(params){if(Object.isString(params)){params=params.toQueryParams();}Object.extend(options.parameters,params);}if(form.hasAttribute("method")&&!options.method){options.method=form.method;}return new Ajax.Request(action,options);}};Form.Element={focus:function(element){$(element).focus();return element;},select:function(element){$(element).select();return element;}};Form.Element.Methods={serialize:function(element){element=$(element);if(!element.disabled&&element.name){var value=element.getValue();if(value!=undefined){var pair={};pair[element.name]=value;return Object.toQueryString(pair);}}return"";},getValue:function(element){element=$(element);var method=element.tagName.toLowerCase();return Form.Element.Serializers[method](element);},setValue:function(element,value){element=$(element);var method=element.tagName.toLowerCase();Form.Element.Serializers[method](element,value);return element;},clear:function(element){$(element).value="";return element;},present:function(element){return $(element).value!="";},activate:function(element){element=$(element);try{element.focus();if(element.select&&(element.tagName.toLowerCase()!="input"||!["button","reset","submit"].include(element.type))){element.select();}}catch(e){}return element;},disable:function(element){element=$(element);element.blur();element.disabled=true;return element;},enable:function(element){element=$(element);element.disabled=false;return element;}};var Field=Form.Element;var $F=Form.Element.Methods.getValue;Form.Element.Serializers={input:function(element,value){switch(element.type.toLowerCase()){case"checkbox":case"radio":return Form.Element.Serializers.inputSelector(element,value);default:return Form.Element.Serializers.textarea(element,value);}},inputSelector:function(element,value){if(value===undefined){return element.checked?element.value:null;}else{element.checked=!!value;}},textarea:function(element,value){if(value===undefined){return element.value;}else{element.value=value;}},select:function(element,index){if(index===undefined){return this[element.type=="select-one"?"selectOne":"selectMany"](element);}else{var opt,value,single=!Object.isArray(index);for(var i=0,length=element.length;i<length;i++){opt=element.options[i];value=this.optionValue(opt);if(single){if(value==index){opt.selected=true;return ;}}else{opt.selected=index.include(value);}}}},selectOne:function(element){var index=element.selectedIndex;return index>=0?this.optionValue(element.options[index]):null;},selectMany:function(element){var values,length=element.length;if(!length){return null;}for(var i=0,values=[];i<length;i++){var opt=element.options[i];if(opt.selected){values.push(this.optionValue(opt));}}return values;},optionValue:function(opt){return Element.extend(opt).hasAttribute("value")?opt.value:opt.text;}};Abstract.TimedObserver=Class.create(PeriodicalExecuter,{initialize:function($super,element,frequency,callback){$super(callback,frequency);this.element=$(element);this.lastValue=this.getValue();},execute:function(){var value=this.getValue();if(Object.isString(this.lastValue)&&Object.isString(value)?this.lastValue!=value:String(this.lastValue)!=String(value)){this.callback(this.element,value);this.lastValue=value;}}});Form.Element.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.serialize(this.element);}});Abstract.EventObserver=Class.create({initialize:function(element,callback){this.element=$(element);this.callback=callback;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=="form"){this.registerFormCallbacks();}else{this.registerCallback(this.element);}},onElementEvent:function(){var value=this.getValue();if(this.lastValue!=value){this.callback(this.element,value);this.lastValue=value;}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback,this);},registerCallback:function(element){if(element.type){switch(element.type.toLowerCase()){case"checkbox":case"radio":Event.observe(element,"click",this.onElementEvent.bind(this));break;default:Event.observe(element,"change",this.onElementEvent.bind(this));break;}}}});Form.Element.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.serialize(this.element);}});if(!window.Event){var Event={};}Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,KEY_INSERT:45,cache:{},relatedTarget:function(event){var element;switch(event.type){case"mouseover":element=event.fromElement;break;case"mouseout":element=event.toElement;break;default:return null;}return Element.extend(element);}});Event.Methods=(function(){var isButton;if(Prototype.Browser.IE){var buttonMap={0:1,1:4,2:2};isButton=function(event,code){return event.button==buttonMap[code];};}else{if(Prototype.Browser.WebKit){isButton=function(event,code){switch(code){case 0:return event.which==1&&!event.metaKey;case 1:return event.which==1&&event.metaKey;default:return false;}};}else{isButton=function(event,code){return event.which?(event.which===code+1):(event.button===code);};}}return{isLeftClick:function(event){return isButton(event,0);},isMiddleClick:function(event){return isButton(event,1);},isRightClick:function(event){return isButton(event,2);},element:function(event){var node=Event.extend(event).target;return Element.extend(node.nodeType==Node.TEXT_NODE?node.parentNode:node);},findElement:function(event,expression){var element=Event.element(event);return element.match(expression)?element:element.up(expression);},pointer:function(event){return{x:event.pageX||(event.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)),y:event.pageY||(event.clientY+(document.documentElement.scrollTop||document.body.scrollTop))};},pointerX:function(event){return Event.pointer(event).x;},pointerY:function(event){return Event.pointer(event).y;},stop:function(event){Event.extend(event);event.preventDefault();event.stopPropagation();event.stopped=true;}};})();Event.extend=(function(){var methods=Object.keys(Event.Methods).inject({},function(m,name){m[name]=Event.Methods[name].methodize();return m;});if(Prototype.Browser.IE){Object.extend(methods,{stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.returnValue=false;},inspect:function(){return"[object Event]";}});return function(event){if(!event){return false;}if(event._extendedByPrototype){return event;}event._extendedByPrototype=Prototype.emptyFunction;var pointer=Event.pointer(event);Object.extend(event,{target:event.srcElement,relatedTarget:Event.relatedTarget(event),pageX:pointer.x,pageY:pointer.y});return Object.extend(event,methods);};}else{Event.prototype=Event.prototype||document.createEvent("HTMLEvents").__proto__;Object.extend(Event.prototype,methods);return Prototype.K;}})();Object.extend(Event,(function(){var cache=Event.cache;function getEventID(element){if(element._eventID){return element._eventID;}arguments.callee.id=arguments.callee.id||1;return element._eventID=++arguments.callee.id;}function getDOMEventName(eventName){if(eventName&&eventName.include(":")){return"dataavailable";}return eventName;}function getCacheForID(id){return cache[id]=cache[id]||{};}function getWrappersForEventName(id,eventName){var c=getCacheForID(id);return c[eventName]=c[eventName]||[];}function createWrapper(element,eventName,handler){var id=getEventID(element);var c=getWrappersForEventName(id,eventName);if(c.pluck("handler").include(handler)){return false;}var wrapper=function(event){if(!Event||!Event.extend||(event.eventName&&event.eventName!=eventName)){return false;}Event.extend(event);handler.call(element,event);};wrapper.handler=handler;c.push(wrapper);return wrapper;}function findWrapper(id,eventName,handler){var c=getWrappersForEventName(id,eventName);return c.find(function(wrapper){return wrapper.handler==handler;});}function destroyWrapper(id,eventName,handler){var c=getCacheForID(id);if(!c[eventName]){return false;}c[eventName]=c[eventName].without(findWrapper(id,eventName,handler));}function destroyCache(){for(var id in cache){for(var eventName in cache[id]){cache[id][eventName]=null;}}}if(window.attachEvent){window.attachEvent("onunload",destroyCache);}return{observe:function(element,eventName,handler){element=$(element);var name=getDOMEventName(eventName);var wrapper=createWrapper(element,eventName,handler);if(!wrapper){return element;}if(element.addEventListener){element.addEventListener(name,wrapper,false);}else{element.attachEvent("on"+name,wrapper);}return element;},stopObserving:function(element,eventName,handler){element=$(element);var id=getEventID(element),name=getDOMEventName(eventName);if(!handler&&eventName){getWrappersForEventName(id,eventName).each(function(wrapper){element.stopObserving(eventName,wrapper.handler);});return element;}else{if(!eventName){Object.keys(getCacheForID(id)).each(function(eventName){element.stopObserving(eventName);});return element;}}var wrapper=findWrapper(id,eventName,handler);if(!wrapper){return element;}if(element.removeEventListener){element.removeEventListener(name,wrapper,false);}else{element.detachEvent("on"+name,wrapper);}destroyWrapper(id,eventName,handler);return element;},fire:function(element,eventName,memo){element=$(element);if(element==document&&document.createEvent&&!element.dispatchEvent){element=document.documentElement;}if(document.createEvent){var event=document.createEvent("HTMLEvents");event.initEvent("dataavailable",true,true);}else{var event=document.createEventObject();event.eventType="ondataavailable";}event.eventName=eventName;event.memo=memo||{};if(document.createEvent){element.dispatchEvent(event);}else{element.fireEvent(event.eventType,event);}return event;}};})());Object.extend(Event,Event.Methods);Element.addMethods({fire:Event.fire,observe:Event.observe,stopObserving:Event.stopObserving});Object.extend(document,{fire:Element.Methods.fire.methodize(),observe:Element.Methods.observe.methodize(),stopObserving:Element.Methods.stopObserving.methodize()});(function(){var timer,fired=false;function fireContentLoadedEvent(){if(fired){return ;}if(timer){window.clearInterval(timer);}document.fire("dom:loaded");fired=true;}if(document.addEventListener){if(Prototype.Browser.WebKit){timer=window.setInterval(function(){if(/loaded|complete/.test(document.readyState)){fireContentLoadedEvent();}},0);Event.observe(window,"load",fireContentLoadedEvent);}else{document.addEventListener("DOMContentLoaded",fireContentLoadedEvent,false);}}else{document.write("<script id=__onDOMContentLoaded defer src=//:><\/script>");$("__onDOMContentLoaded").onreadystatechange=function(){if(this.readyState=="complete"){this.onreadystatechange=null;fireContentLoadedEvent();}};}})();Hash.toQueryString=Object.toQueryString;var Toggle={display:Element.toggle};Element.Methods.childOf=Element.Methods.descendantOf;var Insertion={Before:function(element,content){return Element.insert(element,{before:content});},Top:function(element,content){return Element.insert(element,{top:content});},Bottom:function(element,content){return Element.insert(element,{bottom:content});},After:function(element,content){return Element.insert(element,{after:content});}};var $continue=new Error('"throw $continue" is deprecated, use "return" instead');var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;},within:function(element,x,y){if(this.includeScrollOffsets){return this.withinIncludingScrolloffsets(element,x,y);}this.xcomp=x;this.ycomp=y;this.offset=Element.cumulativeOffset(element);return(y>=this.offset[1]&&y<this.offset[1]+element.offsetHeight&&x>=this.offset[0]&&x<this.offset[0]+element.offsetWidth);},withinIncludingScrolloffsets:function(element,x,y){var offsetcache=Element.cumulativeScrollOffset(element);this.xcomp=x+offsetcache[0]-this.deltaX;this.ycomp=y+offsetcache[1]-this.deltaY;this.offset=Element.cumulativeOffset(element);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+element.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+element.offsetWidth);},overlap:function(mode,element){if(!mode){return 0;}if(mode=="vertical"){return((this.offset[1]+element.offsetHeight)-this.ycomp)/element.offsetHeight;}if(mode=="horizontal"){return((this.offset[0]+element.offsetWidth)-this.xcomp)/element.offsetWidth;}},cumulativeOffset:Element.Methods.cumulativeOffset,positionedOffset:Element.Methods.positionedOffset,absolutize:function(element){Position.prepare();return Element.absolutize(element);},relativize:function(element){Position.prepare();return Element.relativize(element);},realOffset:Element.Methods.cumulativeScrollOffset,offsetParent:Element.Methods.getOffsetParent,page:Element.Methods.viewportOffset,clone:function(source,target,options){options=options||{};return Element.clonePosition(target,source,options);}};if(!document.getElementsByClassName){document.getElementsByClassName=function(instanceMethods){function iter(name){return name.blank()?null:"[contains(concat(' ', @class, ' '), ' "+name+" ')]";}instanceMethods.getElementsByClassName=Prototype.BrowserFeatures.XPath?function(element,className){className=className.toString().strip();var cond=/\s/.test(className)?$w(className).map(iter).join(""):iter(className);return cond?document._getElementsByXPath(".//*"+cond,element):[];}:function(element,className){className=className.toString().strip();var elements=[],classNames=(/\s/.test(className)?$w(className):null);if(!classNames&&!className){return elements;}var nodes=$(element).getElementsByTagName("*");className=" "+className+" ";for(var i=0,child,cn;child=nodes[i];i++){if(child.className&&(cn=" "+child.className+" ")&&(cn.include(className)||(classNames&&classNames.all(function(name){return !name.toString().blank()&&cn.include(" "+name+" ");})))){elements.push(Element.extend(child));}}return elements;};return function(className,parentElement){return $(parentElement||document.body).getElementsByClassName(className);};}(Element.Methods);}Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(element){this.element=$(element);},_each:function(iterator){this.element.className.split(/\s+/).select(function(name){return name.length>0;})._each(iterator);},set:function(className){this.element.className=className;},add:function(classNameToAdd){if(this.include(classNameToAdd)){return ;}this.set($A(this).concat(classNameToAdd).join(" "));},remove:function(classNameToRemove){if(!this.include(classNameToRemove)){return ;}this.set($A(this).without(classNameToRemove).join(" "));},toString:function(){return $A(this).join(" ");}};Object.extend(Element.ClassNames.prototype,Enumerable);Element.addMethods();
String.prototype.parseColor=function(){var color="#";if(this.slice(0,4)=="rgb("){var cols=this.slice(4,this.length-1).split(",");var i=0;do{color+=parseInt(cols[i]).toColorPart();}while(++i<3);}else{if(this.slice(0,1)=="#"){if(this.length==4){for(var i=1;i<4;i++){color+=(this.charAt(i)+this.charAt(i)).toLowerCase();}}if(this.length==7){color=this.toLowerCase();}}}return(color.length==7?color:(arguments[0]||this));};Element.collectTextNodes=function(element){return $A($(element).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:(node.hasChildNodes()?Element.collectTextNodes(node):""));}).flatten().join("");};Element.collectTextNodesIgnoreClass=function(element,className){return $A($(element).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:((node.hasChildNodes()&&!Element.hasClassName(node,className))?Element.collectTextNodesIgnoreClass(node,className):""));}).flatten().join("");};Element.setContentZoom=function(element,percent){element=$(element);element.setStyle({fontSize:(percent/100)+"em"});if(Prototype.Browser.WebKit){window.scrollBy(0,0);}return element;};Element.getInlineOpacity=function(element){return $(element).style.opacity||"";};Element.forceRerendering=function(element){try{element=$(element);var n=document.createTextNode(" ");element.appendChild(n);element.removeChild(n);}catch(e){}};var Effect={_elementDoesNotExistError:{name:"ElementDoesNotExistError",message:"The specified DOM element does not exist, but is required for this effect to operate"},Transitions:{linear:Prototype.K,sinoidal:function(pos){return(-Math.cos(pos*Math.PI)/2)+0.5;},reverse:function(pos){return 1-pos;},flicker:function(pos){var pos=((-Math.cos(pos*Math.PI)/4)+0.75)+Math.random()/4;return pos>1?1:pos;},wobble:function(pos){return(-Math.cos(pos*Math.PI*(9*pos))/2)+0.5;},pulse:function(pos,pulses){pulses=pulses||5;return(((pos%(1/pulses))*pulses).round()==0?((pos*pulses*2)-(pos*pulses*2).floor()):1-((pos*pulses*2)-(pos*pulses*2).floor()));},spring:function(pos){return 1-(Math.cos(pos*4.5*Math.PI)*Math.exp(-pos*6));},none:function(pos){return 0;},full:function(pos){return 1;}},DefaultOptions:{duration:1,fps:100,sync:false,from:0,to:1,delay:0,queue:"parallel"},tagifyText:function(element){var tagifyStyle="position:relative";if(Prototype.Browser.IE){tagifyStyle+=";zoom:1";}element=$(element);$A(element.childNodes).each(function(child){if(child.nodeType==3){child.nodeValue.toArray().each(function(character){element.insertBefore(new Element("span",{style:tagifyStyle}).update(character==" "?String.fromCharCode(160):character),child);});Element.remove(child);}});},multiple:function(element,effect){var elements;if(((typeof element=="object")||Object.isFunction(element))&&(element.length)){elements=element;}else{elements=$(element).childNodes;}var options=Object.extend({speed:0.1,delay:0},arguments[2]||{});var masterDelay=options.delay;$A(elements).each(function(element,index){new effect(element,Object.extend(options,{delay:index*options.speed+masterDelay}));});},PAIRS:{"slide":["SlideDown","SlideUp"],"blind":["BlindDown","BlindUp"],"appear":["Appear","Fade"]},toggle:function(element,effect){element=$(element);effect=(effect||"appear").toLowerCase();var options=Object.extend({queue:{position:"end",scope:(element.id||"global"),limit:1}},arguments[2]||{});Effect[element.visible()?Effect.PAIRS[effect][1]:Effect.PAIRS[effect][0]](element,options);}};Effect.DefaultOptions.transition=Effect.Transitions.sinoidal;Effect.ScopedQueue=Class.create(Enumerable,{initialize:function(){this.effects=[];this.interval=null;},_each:function(iterator){this.effects._each(iterator);},add:function(effect){var timestamp=new Date().getTime();var position=Object.isString(effect.options.queue)?effect.options.queue:effect.options.queue.position;switch(position){case"front":this.effects.findAll(function(e){return e.state=="idle";}).each(function(e){e.startOn+=effect.finishOn;e.finishOn+=effect.finishOn;});break;case"with-last":timestamp=this.effects.pluck("startOn").max()||timestamp;break;case"end":timestamp=this.effects.pluck("finishOn").max()||timestamp;break;}effect.startOn+=timestamp;effect.finishOn+=timestamp;if(!effect.options.queue.limit||(this.effects.length<effect.options.queue.limit)){this.effects.push(effect);}if(!this.interval){this.interval=setInterval(this.loop.bind(this),15);}},remove:function(effect){this.effects=this.effects.reject(function(e){return e==effect;});if(this.effects.length==0){clearInterval(this.interval);this.interval=null;}},loop:function(){var timePos=new Date().getTime();for(var i=0,len=this.effects.length;i<len;i++){this.effects[i]&&this.effects[i].loop(timePos);}}});Effect.Queues={instances:$H(),get:function(queueName){if(!Object.isString(queueName)){return queueName;}return this.instances.get(queueName)||this.instances.set(queueName,new Effect.ScopedQueue());}};Effect.Queue=Effect.Queues.get("global");Effect.Base=Class.create({position:null,start:function(options){function codeForEvent(options,eventName){return((options[eventName+"Internal"]?"this.options."+eventName+"Internal(this);":"")+(options[eventName]?"this.options."+eventName+"(this);":""));}if(options&&options.transition===false){options.transition=Effect.Transitions.linear;}this.options=Object.extend(Object.extend({},Effect.DefaultOptions),options||{});this.currentFrame=0;this.state="idle";this.startOn=this.options.delay*1000;this.finishOn=this.startOn+(this.options.duration*1000);this.fromToDelta=this.options.to-this.options.from;this.totalTime=this.finishOn-this.startOn;this.totalFrames=this.options.fps*this.options.duration;eval("this.render = function(pos){ "+'if (this.state=="idle"){this.state="running";'+codeForEvent(this.options,"beforeSetup")+(this.setup?"this.setup();":"")+codeForEvent(this.options,"afterSetup")+'};if (this.state=="running"){'+"pos=this.options.transition(pos)*"+this.fromToDelta+"+"+this.options.from+";"+"this.position=pos;"+codeForEvent(this.options,"beforeUpdate")+(this.update?"this.update(pos);":"")+codeForEvent(this.options,"afterUpdate")+"}}");this.event("beforeStart");if(!this.options.sync){Effect.Queues.get(Object.isString(this.options.queue)?"global":this.options.queue.scope).add(this);}},loop:function(timePos){if(timePos>=this.startOn){if(timePos>=this.finishOn){this.render(1);this.cancel();this.event("beforeFinish");if(this.finish){this.finish();}this.event("afterFinish");return ;}var pos=(timePos-this.startOn)/this.totalTime,frame=(pos*this.totalFrames).round();if(frame>this.currentFrame){this.render(pos);this.currentFrame=frame;}}},cancel:function(){if(!this.options.sync){Effect.Queues.get(Object.isString(this.options.queue)?"global":this.options.queue.scope).remove(this);}this.state="finished";},event:function(eventName){if(this.options[eventName+"Internal"]){this.options[eventName+"Internal"](this);}if(this.options[eventName]){this.options[eventName](this);}},inspect:function(){var data=$H();for(property in this){if(!Object.isFunction(this[property])){data.set(property,this[property]);}}return"#<Effect:"+data.inspect()+",options:"+$H(this.options).inspect()+">";}});Effect.Parallel=Class.create(Effect.Base,{initialize:function(effects){this.effects=effects||[];this.start(arguments[1]);},update:function(position){this.effects.invoke("render",position);},finish:function(position){this.effects.each(function(effect){effect.render(1);effect.cancel();effect.event("beforeFinish");if(effect.finish){effect.finish(position);}effect.event("afterFinish");});}});Effect.Tween=Class.create(Effect.Base,{initialize:function(object,from,to){object=Object.isString(object)?$(object):object;var args=$A(arguments),method=args.last(),options=args.length==5?args[3]:null;this.method=Object.isFunction(method)?method.bind(object):Object.isFunction(object[method])?object[method].bind(object):function(value){object[method]=value;};this.start(Object.extend({from:from,to:to},options||{}));},update:function(position){this.method(position);}});Effect.Event=Class.create(Effect.Base,{initialize:function(){this.start(Object.extend({duration:0},arguments[0]||{}));},update:Prototype.emptyFunction});Effect.Opacity=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element){throw (Effect._elementDoesNotExistError);}if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout)){this.element.setStyle({zoom:1});}var options=Object.extend({from:this.element.getOpacity()||0,to:1},arguments[1]||{});this.start(options);},update:function(position){this.element.setOpacity(position);}});Effect.Move=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element){throw (Effect._elementDoesNotExistError);}var options=Object.extend({x:0,y:0,mode:"relative"},arguments[1]||{});this.start(options);},setup:function(){this.element.makePositioned();this.originalLeft=parseFloat(this.element.getStyle("left")||"0");this.originalTop=parseFloat(this.element.getStyle("top")||"0");if(this.options.mode=="absolute"){this.options.x=this.options.x-this.originalLeft;this.options.y=this.options.y-this.originalTop;}},update:function(position){this.element.setStyle({left:(this.options.x*position+this.originalLeft).round()+"px",top:(this.options.y*position+this.originalTop).round()+"px"});}});Effect.MoveBy=function(element,toTop,toLeft){return new Effect.Move(element,Object.extend({x:toLeft,y:toTop},arguments[3]||{}));};Effect.Scale=Class.create(Effect.Base,{initialize:function(element,percent){this.element=$(element);if(!this.element){throw (Effect._elementDoesNotExistError);}var options=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:"box",scaleFrom:100,scaleTo:percent},arguments[2]||{});this.start(options);},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;this.elementPositioning=this.element.getStyle("position");this.originalStyle={};["top","left","width","height","fontSize"].each(function(k){this.originalStyle[k]=this.element.style[k];}.bind(this));this.originalTop=this.element.offsetTop;this.originalLeft=this.element.offsetLeft;var fontSize=this.element.getStyle("font-size")||"100%";["em","px","%","pt"].each(function(fontSizeType){if(fontSize.indexOf(fontSizeType)>0){this.fontSize=parseFloat(fontSize);this.fontSizeType=fontSizeType;}}.bind(this));this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;this.dims=null;if(this.options.scaleMode=="box"){this.dims=[this.element.offsetHeight,this.element.offsetWidth];}if(/^content/.test(this.options.scaleMode)){this.dims=[this.element.scrollHeight,this.element.scrollWidth];}if(!this.dims){this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth];}},update:function(position){var currentScale=(this.options.scaleFrom/100)+(this.factor*position);if(this.options.scaleContent&&this.fontSize){this.element.setStyle({fontSize:this.fontSize*currentScale+this.fontSizeType});}this.setDimensions(this.dims[0]*currentScale,this.dims[1]*currentScale);},finish:function(position){if(this.restoreAfterFinish){this.element.setStyle(this.originalStyle);}},setDimensions:function(height,width){var d={};if(this.options.scaleX){d.width=width.round()+"px";}if(this.options.scaleY){d.height=height.round()+"px";}if(this.options.scaleFromCenter){var topd=(height-this.dims[0])/2;var leftd=(width-this.dims[1])/2;if(this.elementPositioning=="absolute"){if(this.options.scaleY){d.top=this.originalTop-topd+"px";}if(this.options.scaleX){d.left=this.originalLeft-leftd+"px";}}else{if(this.options.scaleY){d.top=-topd+"px";}if(this.options.scaleX){d.left=-leftd+"px";}}}this.element.setStyle(d);}});Effect.Highlight=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element){throw (Effect._elementDoesNotExistError);}var options=Object.extend({startcolor:"#ffff99"},arguments[1]||{});this.start(options);},setup:function(){if(this.element.getStyle("display")=="none"){this.cancel();return ;}this.oldStyle={};if(!this.options.keepBackgroundImage){this.oldStyle.backgroundImage=this.element.getStyle("background-image");this.element.setStyle({backgroundImage:"none"});}if(!this.options.endcolor){this.options.endcolor=this.element.getStyle("background-color").parseColor("#ffffff");}if(!this.options.restorecolor){this.options.restorecolor=this.element.getStyle("background-color");}this._base=$R(0,2).map(function(i){return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16);}.bind(this));this._delta=$R(0,2).map(function(i){return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i];}.bind(this));},update:function(position){this.element.setStyle({backgroundColor:$R(0,2).inject("#",function(m,v,i){return m+((this._base[i]+(this._delta[i]*position)).round().toColorPart());}.bind(this))});},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}));}});Effect.ScrollTo=function(element){var options=arguments[1]||{},scrollOffsets=document.viewport.getScrollOffsets(),elementOffsets=$(element).cumulativeOffset(),max=(window.height||document.body.scrollHeight)-document.viewport.getHeight();if(options.offset){elementOffsets[1]+=options.offset;}return new Effect.Tween(null,scrollOffsets.top,elementOffsets[1]>max?max:elementOffsets[1],options,function(p){scrollTo(scrollOffsets.left,p.round());});};Effect.Fade=function(element){element=$(element);var oldOpacity=element.getInlineOpacity();var options=Object.extend({from:element.getOpacity()||1,to:0,afterFinishInternal:function(effect){if(effect.options.to!=0){return ;}effect.element.hide().setStyle({opacity:oldOpacity});}},arguments[1]||{});return new Effect.Opacity(element,options);};Effect.Appear=function(element){element=$(element);var options=Object.extend({from:(element.getStyle("display")=="none"?0:element.getOpacity()||0),to:1,afterFinishInternal:function(effect){effect.element.forceRerendering();},beforeSetup:function(effect){effect.element.setOpacity(effect.options.from).show();}},arguments[1]||{});return new Effect.Opacity(element,options);};Effect.Puff=function(element){element=$(element);var oldStyle={opacity:element.getInlineOpacity(),position:element.getStyle("position"),top:element.style.top,left:element.style.left,width:element.style.width,height:element.style.height};return new Effect.Parallel([new Effect.Scale(element,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new Effect.Opacity(element,{sync:true,to:0})],Object.extend({duration:1,beforeSetupInternal:function(effect){Position.absolutize(effect.effects[0].element);},afterFinishInternal:function(effect){effect.effects[0].element.hide().setStyle(oldStyle);}},arguments[1]||{}));};Effect.BlindUp=function(element){element=$(element);element.makeClipping();return new Effect.Scale(element,0,Object.extend({scaleContent:false,scaleX:false,restoreAfterFinish:true,afterFinishInternal:function(effect){effect.element.hide().undoClipping();}},arguments[1]||{}));};Effect.BlindDown=function(element){element=$(element);var elementDimensions=element.getDimensions();return new Effect.Scale(element,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makeClipping().setStyle({height:"0px"}).show();},afterFinishInternal:function(effect){effect.element.undoClipping();}},arguments[1]||{}));};Effect.SwitchOff=function(element){element=$(element);var oldOpacity=element.getInlineOpacity();return new Effect.Appear(element,Object.extend({duration:0.4,from:0,transition:Effect.Transitions.flicker,afterFinishInternal:function(effect){new Effect.Scale(effect.element,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetup:function(effect){effect.element.makePositioned().makeClipping();},afterFinishInternal:function(effect){effect.element.hide().undoClipping().undoPositioned().setStyle({opacity:oldOpacity});}});}},arguments[1]||{}));};Effect.DropOut=function(element){element=$(element);var oldStyle={top:element.getStyle("top"),left:element.getStyle("left"),opacity:element.getInlineOpacity()};return new Effect.Parallel([new Effect.Move(element,{x:0,y:100,sync:true}),new Effect.Opacity(element,{sync:true,to:0})],Object.extend({duration:0.5,beforeSetup:function(effect){effect.effects[0].element.makePositioned();},afterFinishInternal:function(effect){effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle);}},arguments[1]||{}));};Effect.Shake=function(element){element=$(element);var options=Object.extend({distance:20,duration:0.5},arguments[1]||{});var distance=parseFloat(options.distance);var split=parseFloat(options.duration)/10;var oldStyle={top:element.getStyle("top"),left:element.getStyle("left")};return new Effect.Move(element,{x:distance,y:0,duration:split,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance,y:0,duration:split,afterFinishInternal:function(effect){effect.element.undoPositioned().setStyle(oldStyle);}});}});}});}});}});}});};Effect.SlideDown=function(element){element=$(element).cleanWhitespace();var oldInnerBottom=element.down().getStyle("bottom");var elementDimensions=element.getDimensions();return new Effect.Scale(element,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:window.opera?0:1,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makePositioned();effect.element.down().makePositioned();if(window.opera){effect.element.setStyle({top:""});}effect.element.makeClipping().setStyle({height:"0px"}).show();},afterUpdateInternal:function(effect){effect.element.down().setStyle({bottom:(effect.dims[0]-effect.element.clientHeight)+"px"});},afterFinishInternal:function(effect){effect.element.undoClipping().undoPositioned();effect.element.down().undoPositioned().setStyle({bottom:oldInnerBottom});}},arguments[1]||{}));};Effect.SlideUp=function(element){element=$(element).cleanWhitespace();var oldInnerBottom=element.down().getStyle("bottom");var elementDimensions=element.getDimensions();return new Effect.Scale(element,window.opera?0:1,Object.extend({scaleContent:false,scaleX:false,scaleMode:"box",scaleFrom:100,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makePositioned();effect.element.down().makePositioned();if(window.opera){effect.element.setStyle({top:""});}effect.element.makeClipping().show();},afterUpdateInternal:function(effect){effect.element.down().setStyle({bottom:(effect.dims[0]-effect.element.clientHeight)+"px"});},afterFinishInternal:function(effect){effect.element.hide().undoClipping().undoPositioned();effect.element.down().undoPositioned().setStyle({bottom:oldInnerBottom});}},arguments[1]||{}));};Effect.Squish=function(element){return new Effect.Scale(element,window.opera?1:0,{restoreAfterFinish:true,beforeSetup:function(effect){effect.element.makeClipping();},afterFinishInternal:function(effect){effect.element.hide().undoClipping();}});};Effect.Grow=function(element){element=$(element);var options=Object.extend({direction:"center",moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.full},arguments[1]||{});var oldStyle={top:element.style.top,left:element.style.left,height:element.style.height,width:element.style.width,opacity:element.getInlineOpacity()};var dims=element.getDimensions();var initialMoveX,initialMoveY;var moveX,moveY;switch(options.direction){case"top-left":initialMoveX=initialMoveY=moveX=moveY=0;break;case"top-right":initialMoveX=dims.width;initialMoveY=moveY=0;moveX=-dims.width;break;case"bottom-left":initialMoveX=moveX=0;initialMoveY=dims.height;moveY=-dims.height;break;case"bottom-right":initialMoveX=dims.width;initialMoveY=dims.height;moveX=-dims.width;moveY=-dims.height;break;case"center":initialMoveX=dims.width/2;initialMoveY=dims.height/2;moveX=-dims.width/2;moveY=-dims.height/2;break;}return new Effect.Move(element,{x:initialMoveX,y:initialMoveY,duration:0.01,beforeSetup:function(effect){effect.element.hide().makeClipping().makePositioned();},afterFinishInternal:function(effect){new Effect.Parallel([new Effect.Opacity(effect.element,{sync:true,to:1,from:0,transition:options.opacityTransition}),new Effect.Move(effect.element,{x:moveX,y:moveY,sync:true,transition:options.moveTransition}),new Effect.Scale(effect.element,100,{scaleMode:{originalHeight:dims.height,originalWidth:dims.width},sync:true,scaleFrom:window.opera?1:0,transition:options.scaleTransition,restoreAfterFinish:true})],Object.extend({beforeSetup:function(effect){effect.effects[0].element.setStyle({height:"0px"}).show();},afterFinishInternal:function(effect){effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldStyle);}},options));}});};Effect.Shrink=function(element){element=$(element);var options=Object.extend({direction:"center",moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.none},arguments[1]||{});var oldStyle={top:element.style.top,left:element.style.left,height:element.style.height,width:element.style.width,opacity:element.getInlineOpacity()};var dims=element.getDimensions();var moveX,moveY;switch(options.direction){case"top-left":moveX=moveY=0;break;case"top-right":moveX=dims.width;moveY=0;break;case"bottom-left":moveX=0;moveY=dims.height;break;case"bottom-right":moveX=dims.width;moveY=dims.height;break;case"center":moveX=dims.width/2;moveY=dims.height/2;break;}return new Effect.Parallel([new Effect.Opacity(element,{sync:true,to:0,from:1,transition:options.opacityTransition}),new Effect.Scale(element,window.opera?1:0,{sync:true,transition:options.scaleTransition,restoreAfterFinish:true}),new Effect.Move(element,{x:moveX,y:moveY,sync:true,transition:options.moveTransition})],Object.extend({beforeStartInternal:function(effect){effect.effects[0].element.makePositioned().makeClipping();},afterFinishInternal:function(effect){effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle(oldStyle);}},options));};Effect.Pulsate=function(element){element=$(element);var options=arguments[1]||{};var oldOpacity=element.getInlineOpacity();var transition=options.transition||Effect.Transitions.sinoidal;var reverser=function(pos){return transition(1-Effect.Transitions.pulse(pos,options.pulses));};reverser.bind(transition);return new Effect.Opacity(element,Object.extend(Object.extend({duration:2,from:0,afterFinishInternal:function(effect){effect.element.setStyle({opacity:oldOpacity});}},options),{transition:reverser}));};Effect.Fold=function(element){element=$(element);var oldStyle={top:element.style.top,left:element.style.left,width:element.style.width,height:element.style.height};element.makeClipping();return new Effect.Scale(element,5,Object.extend({scaleContent:false,scaleX:false,afterFinishInternal:function(effect){new Effect.Scale(element,1,{scaleContent:false,scaleY:false,afterFinishInternal:function(effect){effect.element.hide().undoClipping().setStyle(oldStyle);}});}},arguments[1]||{}));};Effect.Morph=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element){throw (Effect._elementDoesNotExistError);}var options=Object.extend({style:{}},arguments[1]||{});if(!Object.isString(options.style)){this.style=$H(options.style);}else{if(options.style.include(":")){this.style=options.style.parseStyle();}else{this.element.addClassName(options.style);this.style=$H(this.element.getStyles());this.element.removeClassName(options.style);var css=this.element.getStyles();this.style=this.style.reject(function(style){return style.value==css[style.key];});options.afterFinishInternal=function(effect){effect.element.addClassName(effect.options.style);effect.transforms.each(function(transform){effect.element.style[transform.style]="";});};}}this.start(options);},setup:function(){function parseColor(color){if(!color||["rgba(0, 0, 0, 0)","transparent"].include(color)){color="#ffffff";}color=color.parseColor();return $R(0,2).map(function(i){return parseInt(color.slice(i*2+1,i*2+3),16);});}this.transforms=this.style.map(function(pair){var property=pair[0],value=pair[1],unit=null;if(value.parseColor("#zzzzzz")!="#zzzzzz"){value=value.parseColor();unit="color";}else{if(property=="opacity"){value=parseFloat(value);if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout)){this.element.setStyle({zoom:1});}}else{if(Element.CSS_LENGTH.test(value)){var components=value.match(/^([\+\-]?[0-9\.]+)(.*)$/);value=parseFloat(components[1]);unit=(components.length==3)?components[2]:null;}}}var originalValue=this.element.getStyle(property);return{style:property.camelize(),originalValue:unit=="color"?parseColor(originalValue):parseFloat(originalValue||0),targetValue:unit=="color"?parseColor(value):value,unit:unit};}.bind(this)).reject(function(transform){return((transform.originalValue==transform.targetValue)||(transform.unit!="color"&&(isNaN(transform.originalValue)||isNaN(transform.targetValue))));});},update:function(position){var style={},transform,i=this.transforms.length;while(i--){style[(transform=this.transforms[i]).style]=transform.unit=="color"?"#"+(Math.round(transform.originalValue[0]+(transform.targetValue[0]-transform.originalValue[0])*position)).toColorPart()+(Math.round(transform.originalValue[1]+(transform.targetValue[1]-transform.originalValue[1])*position)).toColorPart()+(Math.round(transform.originalValue[2]+(transform.targetValue[2]-transform.originalValue[2])*position)).toColorPart():(transform.originalValue+(transform.targetValue-transform.originalValue)*position).toFixed(3)+(transform.unit===null?"":transform.unit);}this.element.setStyle(style,true);}});Effect.Transform=Class.create({initialize:function(tracks){this.tracks=[];this.options=arguments[1]||{};this.addTracks(tracks);},addTracks:function(tracks){tracks.each(function(track){track=$H(track);var data=track.values().first();this.tracks.push($H({ids:track.keys().first(),effect:Effect.Morph,options:{style:data}}));}.bind(this));return this;},play:function(){return new Effect.Parallel(this.tracks.map(function(track){var ids=track.get("ids"),effect=track.get("effect"),options=track.get("options");var elements=[$(ids)||$$(ids)].flatten();return elements.map(function(e){return new effect(e,Object.extend({sync:true},options));});}).flatten(),this.options);}});Element.CSS_PROPERTIES=$w("backgroundColor backgroundPosition borderBottomColor borderBottomStyle "+"borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth "+"borderRightColor borderRightStyle borderRightWidth borderSpacing "+"borderTopColor borderTopStyle borderTopWidth bottom clip color "+"fontSize fontWeight height left letterSpacing lineHeight "+"marginBottom marginLeft marginRight marginTop markerOffset maxHeight "+"maxWidth minHeight minWidth opacity outlineColor outlineOffset "+"outlineWidth paddingBottom paddingLeft paddingRight paddingTop "+"right textIndent top width wordSpacing zIndex");Element.CSS_LENGTH=/^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;String.__parseStyleElement=document.createElement("div");String.prototype.parseStyle=function(){var style,styleRules=$H();if(Prototype.Browser.WebKit){style=new Element("div",{style:this}).style;}else{String.__parseStyleElement.innerHTML='<div style="'+this+'"></div>';style=String.__parseStyleElement.childNodes[0].style;}Element.CSS_PROPERTIES.each(function(property){if(style[property]){styleRules.set(property,style[property]);}});if(Prototype.Browser.IE&&this.include("opacity")){styleRules.set("opacity",this.match(/opacity:\s*((?:0|1)?(?:\.\d*)?)/)[1]);}return styleRules;};if(document.defaultView&&document.defaultView.getComputedStyle){Element.getStyles=function(element){var css=document.defaultView.getComputedStyle($(element),null);return Element.CSS_PROPERTIES.inject({},function(styles,property){styles[property]=css[property];return styles;});};}else{Element.getStyles=function(element){element=$(element);var css=element.currentStyle,styles;styles=Element.CSS_PROPERTIES.inject({},function(hash,property){hash.set(property,css[property]);return hash;});if(!styles.opacity){styles.set("opacity",element.getOpacity());}return styles;};}Effect.Methods={morph:function(element,style){element=$(element);new Effect.Morph(element,Object.extend({style:style},arguments[2]||{}));return element;},visualEffect:function(element,effect,options){element=$(element);var s=effect.dasherize().camelize(),klass=s.charAt(0).toUpperCase()+s.substring(1);new Effect[klass](element,options);return element;},highlight:function(element,options){element=$(element);new Effect.Highlight(element,options);return element;}};$w("fade appear grow shrink fold blindUp blindDown slideUp slideDown "+"pulsate shake puff squish switchOff dropOut").each(function(effect){Effect.Methods[effect]=function(element,options){element=$(element);Effect[effect.charAt(0).toUpperCase()+effect.substring(1)](element,options);return element;};});$w("getInlineOpacity forceRerendering setContentZoom collectTextNodes collectTextNodesIgnoreClass getStyles").each(function(f){Effect.Methods[f]=Element[f];});Element.addMethods(Effect.Methods);
var AjaxTCR={};AjaxTCR.comm={UNSENT:0,OPEN:1,SENT:2,LOADING:3,DONE:4,DEFAULT_REQUEST_METHOD:"GET",DEFAULT_ASYNC:true,DEFAULT_PREVENT_CACHE:false,DEFAULT_CONTENT_TYPE:"application/x-www-form-urlencoded",DEFAULT_CONTENT_TRANSFER_ENCODING:"",DEFAULT_TRANSPORT_INDICATOR:true,DEFAULT_TIMEOUT:0,DEFAULT_RETRIES:0,DEFAULT_SHOW_PROGRESS:false,DEFAULT_PROGRESS_INTERVAL:1000,DEFAULT_ENFORCE_ORDER:false,DEFAULT_CACHE_RESPONSE:false,DEFAULT_USE_RAW:true,DEFAULT_ONEWAY:false,DEFAULT_REQUEST_SIGNATURE:"X-Signature",DEFAULT_SIGNED_RESPONSE:false,DEFAULT_TRANSPORT:"xhr",DEFAULT_TRANSPORT_HEADER:"X-Requested-By",DEFAULT_XHR_TRANSPORT_VALUE:"XHR",DEFAULT_IFRAME_TRANSPORT_VALUE:"iframe",DEFAULT_IMAGE_TRANSPORT_VALUE:"image",DEFAULT_SCRIPT_TRANSPORT_VALUE:"HTMLScriptTag",DEFAULT_FALLBACK:true,DEFAULT_FALLBACK_TRANSPORT:"iframe",DEFAULT_INSERTION_METHOD:"replace",DEFAULT_CACHE_TEMPLATE:true,DEFAULT_TEMPLATE_RENDER:"client",TEMPLATE_SERVER_DEFINED:"dynamic",_requestID:0,_requestsOutstanding:0,_networkErrorStatus:new Array(0,408,504,3507,12002,12007,12029,12030,12031,12152),setDefault:function(option,value){AjaxTCR.comm[option]=value;},getDefault:function(option){return AjaxTCR.comm[option];},sendRequest:function(url,options){var request=new Object();request.requestID=++AjaxTCR.comm._requestID;request.method=AjaxTCR.comm.DEFAULT_REQUEST_METHOD;request.async=AjaxTCR.comm.DEFAULT_ASYNC;request.preventCache=AjaxTCR.comm.DEFAULT_PREVENT_CACHE;request.requestContentType=AjaxTCR.comm.DEFAULT_CONTENT_TYPE;request.requestContentTransferEncoding=AjaxTCR.comm.DEFAULT_CONTENT_TRANSFER_ENCODING;request.payload="";request.headers=new Array();request.transportIndicator=AjaxTCR.comm.DEFAULT_TRANSPORT_INDICATOR;request.onSuccess=function(){};request.onFail=function(){};request.onCreate=null;request.onOpen=null;request.onSent=null;request.onLoading=null;request.onReceived=null;request.abort=false;request.inProgress=true;request.received=false;request.showProgress=AjaxTCR.comm.DEFAULT_SHOW_PROGRESS;request.progressInterval=AjaxTCR.comm.DEFAULT_PROGRESS_INTERVAL;request.onProgress=function(){};request.progressTimerID=null;request.timespent=0;request.timeout=AjaxTCR.comm.DEFAULT_TIMEOUT;request.onTimeout=function(){};request.timeoutTimerID=null;request.retries=AjaxTCR.comm.DEFAULT_RETRIES;request.retryCount=1;request.onRetry=function(){};request.inQueue=false;request.responseQueueID=0;request.enforceOrder=AjaxTCR.comm.DEFAULT_ENFORCE_ORDER;request.cacheResponse=AjaxTCR.comm.DEFAULT_CACHE_RESPONSE;request.fromCache=false;request.onPrefetch=function(){};request.isPrefetch=false;request.serializeForm=null;request.hasFile=false;request.outputTarget=null;request.useRaw=AjaxTCR.comm.DEFAULT_USE_RAW;request.insertionType=AjaxTCR.comm.DEFAULT_INSERTION_METHOD;request.oneway=AjaxTCR.comm.DEFAULT_ONEWAY;request.username=null;request.password=null;request.requestSignature=AjaxTCR.comm.DEFAULT_REQUEST_SIGNATURE;request.signRequest=null;request.signedResponse=AjaxTCR.comm.DEFAULT_SIGNED_RESPONSE;request.history=null;request.transport=AjaxTCR.comm.DEFAULT_TRANSPORT;request.fallback=AjaxTCR.comm.DEFAULT_FALLBACK;request.fallbackTransport=AjaxTCR.comm.DEFAULT_FALLBACK_TRANSPORT;request.cookieName=null;request.template=null;request.templateRender=AjaxTCR.comm.DEFAULT_TEMPLATE_RENDER;request.cacheTemplate=AjaxTCR.comm.DEFAULT_CACHE_TEMPLATE;request.shortTermCacheTemplate=false;request.statusIndicator=null;for(option in options){request[option]=options[option];}if(request.isPrefetch){request.cacheResponse=true;}if(AjaxTCR.history._backGuardEnabled==AjaxTCR.history.BACK_GUARD_INITIALIZED){AjaxTCR.history._activateBackGuard();}if(request.template&&request.template!=AjaxTCR.comm.TEMPLATE_SERVER_DEFINED&&request.templateRender=="client"){if(!AjaxTCR.template.getFromCache(request.template)){request.enforceOrder=true;AjaxTCR.comm.sendRequest(request.template,{shortTermCacheTemplate:true,enforceOrder:true});}}else{if(request.template&&request.template!=AjaxTCR.comm.TEMPLATE_SERVER_DEFINED&&request.templateRender=="server"){if(request.payload!=""){request.payload+="&";}request.payload+="templateURL="+request.template;}}if(request.serializeForm){var newPayload=AjaxTCR.data.serializeForm(request.serializeForm,request.requestContentType);if(newPayload=="fileupload"){request.hasFile=true;}else{if(request.payload){if(typeof (request.payload)=="object"){newPayload=AjaxTCR.data.serializeObject(newPayload,request.payload,request.requestContentType);}else{if(request.requestContentType==AjaxTCR.comm.DEFAULT_CONTENT_TYPE){newPayload+="&"+request.payload;}}}request.payload=newPayload;if(request.requestContentType=="application/json"){request.payload=AjaxTCR.data.encodeJSON(request.payload);}else{if(request.requestContentType=="text/xml"){request.payload=AjaxTCR.data.serializeXML(request.payload);}}if(request.requestContentTransferEncoding=="base64"){request.payload=AjaxTCR.data.encode64(request.payload);}}}if(request.history){AjaxTCR.history.init(function(){});}if(request.history&&!request.history.saveResponse){AjaxTCR.history.addToHistory(request.history.id,"",request.history.title,url,options);}if(request.hasFile){request.transport="iframe";}request.transport=request.transport.toLowerCase();if(request.transport=="script"||request.transport=="image"){request.method="GET";}if(request.method.toUpperCase()=="GET"&&request.payload!=""){request.url=url+"?"+request.payload;}else{request.url=url;}if(request.method.toUpperCase()=="POST"){request.postBody=request.payload;}else{request.postBody=null;}if(request.enforceOrder){request.responseQueueID=AjaxTCR.comm.queue._responseQueue.maxID++;}var cachedResponse=null;if(request.cacheResponse){if(request.cacheKey==undefined){request.cacheKey=request.url;}cachedResponse=AjaxTCR.comm.cache.get(request.cacheKey);if(cachedResponse){AjaxTCR.comm.cache._handleCacheResponse(request,cachedResponse);}}if(!cachedResponse){AjaxTCR.comm._makeRequest(request);}return request;},abortRequest:function(request){request.abort=true;request.inProgress=false;request.xhr.abort();AjaxTCR.comm._requestsOutstanding--;clearTimeout(request.timeoutTimerID);request.timeoutTimerID=null;if(request.progressTimerID){clearTimeout(request.progressTimerID);request.progressTimerID=null;}if(request.statusIndicator){AjaxTCR.comm._removeProgressStatus(request.statusIndicator);}},_createXHR:function(){try{return new XMLHttpRequest();}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.6.0");}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0");}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP");}catch(e){}try{return new ActiveXObject("Microsoft.XMLHTTP");}catch(e){}return null;},_makeRequest:function(request){AjaxTCR.comm.stats._commResults.totalRequests++;if(!request.oneway){AjaxTCR.comm._initSend(request);}if(request.onCreate){request.onCreate(request);}if(request.transport=="xhr"){AjaxTCR.comm._sendXHR(request);}else{if(request.transport=="iframe"){AjaxTCR.comm._sendIframe(request);}else{if(request.transport=="script"){AjaxTCR.comm._sendScript(request);}else{if(request.transport=="image"){AjaxTCR.comm._sendImage(request);}}}}},_sendXHR:function(request){request.xhr=AjaxTCR.comm._createXHR();if(!request.xhr){AjaxTCR.comm._fallbackOrError(request);return ;}try{request.xhr.open(request.method,request.url,request.async,request.username,request.password);}catch(e){AjaxTCR.comm._fallbackOrError(request);return ;}request.abort=false;if(request.transportIndicator){request.xhr.setRequestHeader(AjaxTCR.comm.DEFAULT_TRANSPORT_HEADER,AjaxTCR.comm.DEFAULT_XHR_TRANSPORT_VALUE);request.xhr.setRequestHeader("X-Request-Id",request.requestID);}if(request.signRequest){request.xhr.setRequestHeader(request.requestSignature,request.signRequest);}if(request.method.toUpperCase()=="POST"){request.xhr.setRequestHeader("Content-Type",request.requestContentType);if(request.requestContentTransferEncoding!=""){request.xhr.setRequestHeader("Content-Transfer-Encoding",request.requestContentTransferEncoding);}}if(request.preventCache){request.xhr.setRequestHeader("If-Modified-Since","Wed, 15 Nov 1995 04:58:08 GMT");}request.headerObj={};for(var i=0;i<request.headers.length;i++){if(request.headers[i].name.toUpperCase()=="COOKIE"){document.cookie=request.headers[i].value;}else{if(request.headerObj[request.headers[i].name]===undefined){request.headerObj[request.headers[i].name]=request.headers[i].value;}else{request.headerObj[request.headers[i].name]=request.headers[i].value+","+request.headerObj[request.headers[i].name];}}}for(var header in request.headerObj){request.xhr.setRequestHeader(header,request.headerObj[header]);}if(!request.oneway){request.xhr.onreadystatechange=function(){AjaxTCR.comm._handleReadyStateChange(request);};if(request.async&&request.timeout&&request.timeoutTimerID==null){request.timeoutTimerID=window.setTimeout(function(){AjaxTCR.comm._timeoutRequest(request);},request.timeout);}}request.xhr.send(request.postBody);},_sendScript:function(request){var script=document.createElement("script");var callback=function(){AjaxTCR.comm._handleScriptResponse(request);};if(request.transportIndicator){if(request.url.indexOf("?")){request.url+="&"+AjaxTCR.comm.DEFAULT_TRANSPORT_HEADER+"="+AjaxTCR.comm.DEFAULT_SCRIPT_TRANSPORT_VALUE;}else{request.url+="?"+AjaxTCR.comm.DEFAULT_TRANSPORT_HEADER+"="+AjaxTCR.comm.DEFAULT_SCRIPT_TRANSPORT_VALUE;}}if(script.addEventListener){script.addEventListener("load",callback,false);}else{script.onreadystatechange=function(){if(this.readyState=="complete"){callback.call(this);}};}script.src=request.url;script.type="text/javascript";document.body.appendChild(script);},_sendIframe:function(request){var iframeID=AjaxTCR.util.misc.generateUID("AjaxTCRIframe_");if(window.ActiveXObject){var iframe=document.createElement('<iframe id="'+iframeID+'" name="'+iframeID+'" />');}else{var iframe=document.createElement("iframe");iframe.id=iframeID;iframe.name=iframeID;}iframe.style.height="1px";iframe.style.visibility="hidden";document.body.appendChild(iframe);var callback=function(){AjaxTCR.comm._handleIFrameResponse(request,iframe);};if(window.attachEvent){iframe.attachEvent("onload",callback);}else{iframe.addEventListener("load",callback,false);}if(request.hasFile){request.serializeForm.target=iframe.id;request.serializeForm.submit();}else{if(request.method.toUpperCase()=="GET"){if(request.transportIndicator){if(request.url.indexOf("?")>-1){request.url+="&"+AjaxTCR.comm.DEFAULT_TRANSPORT_HEADER+"="+AjaxTCR.comm.DEFAULT_IFRAME_TRANSPORT_VALUE;}else{request.url+="?"+AjaxTCR.comm.DEFAULT_TRANSPORT_HEADER+"="+AjaxTCR.comm.DEFAULT_IFRAME_TRANSPORT_VALUE;}}iframe.src=request.url;}else{var ifrForm=makeIframeForm(iframe,request);ifrForm.submit();}}function makeIframeForm(ifr,request){var url=request.url;var payload=request.postBody;var ifrDoc=null;var ifrWindow=ifr.contentWindow||ifr.contentDocument;if(ifrWindow.document){ifrDoc=ifrWindow.document;}else{ifrDoc=ifrWindow;}if(!ifrDoc.body){var html=ifrDoc.createElement("HTML");ifrDoc.appendChild(html);var head=ifrDoc.createElement("HEAD");html.appendChild(head);var body=ifrDoc.createElement("BODY");html.appendChild(body);}var ifrForm=ifrDoc.createElement("FORM");ifrForm.action=url;ifrForm.method="post";ifrDoc.body.appendChild(ifrForm);var keys=payload.split("&");for(var i=0;i<keys.length;i++){var nv=keys[i].split("=");var ifrText=ifrDoc.createElement("INPUT");ifrText.type="text";ifrText.name=nv[0];ifrText.value=nv[1];ifrForm.appendChild(ifrText);}if(request.transportIndicator){var ifrText=ifrDoc.createElement("INPUT");ifrText.type="text";ifrText.name=AjaxTCR.comm.DEFAULT_TRANSPORT_HEADER;ifrText.value=AjaxTCR.comm.DEFAULT_IFRAME_TRANSPORT_VALUE;ifrForm.appendChild(ifrText);}return ifrForm;}},_sendImage:function(request){var callback=function(){AjaxTCR.comm._handleImageResponse(request);};if(request.transportIndicator){if(request.url.indexOf("?")){request.url+="&"+AjaxTCR.comm.DEFAULT_TRANSPORT_HEADER+"="+AjaxTCR.comm.DEFAULT_IMAGE_TRANSPORT_VALUE;}else{request.url+="?"+AjaxTCR.comm.DEFAULT_TRANSPORT_HEADER+"="+AjaxTCR.comm.DEFAULT_IMAGE_TRANSPORT_VALUE;}}var img=new Image();img.onload=callback;img.src=request.url;},_initSend:function(request){if(request.statusIndicator){request.statusIndicator.element=AjaxTCR.comm._setProgressStatus(request.statusIndicator);}request.timespent=0;if(request.showProgress&&request.progressTimerID==null){request.progressTimerID=window.setTimeout(function(){AjaxTCR.comm._progressRequest(request);},request.progressInterval);}request.startTime=(new Date()).getTime();AjaxTCR.comm._requestsOutstanding++;},_fallbackOrError:function(request){if(request.fallback){request.transport=request.fallbackTransport.toLowerCase();if((request.transport=="script"||request.transport=="image")&&request.method.toUpperCase()=="POST"){request.method="GET";request.url=request.url+"?"+request.postBody;request.postBody=null;}if(request.transport=="iframe"){AjaxTCR.comm._sendIframe(request);}else{if(request.transport=="script"){AjaxTCR.comm._sendScript(request);}else{if(request.transport=="image"){AjaxTCR.comm._sendImage(request);}else{throw"AjaxTCR Error: Unknown fallback transport: "+request.transport;}}}}else{throw"AjaxTCR Error: XHR Creation failed and fallback is not enabled";}},_handleIFrameResponse:function(response,iframe){response.httpStatus=200;response.httpStatusText="OK";if(iframe.contentWindow.document.body){response.responseText=iframe.contentWindow.document.body.innerHTML;}if(iframe.contentWindow.document.XMLDocument){response.responseXML=iframe.contentWindow.document.XMLDocument;}else{response.responseXML=iframe.contentWindow.document;}AjaxTCR.comm._handleResponse(response);},_handleScriptResponse:function(response){response.httpStatus=200;response.httpStatusText="OK";response.responseText="";response.responseXML=null;AjaxTCR.comm._handleResponse(response);},_handleImageResponse:function(response){response.httpStatus=200;response.httpStatusText="OK";if(response.cookieName){response.responseText=AjaxTCR.comm.cookie.get(response.cookieName);}else{response.responseText=document.cookie;}response.responseXML=null;AjaxTCR.comm._handleResponse(response);},_timeoutRequest:function(request){if(request.xhr.readyState!=AjaxTCR.comm.DONE&&request.xhr.readyState!=AjaxTCR.comm.UNSENT){AjaxTCR.comm.abortRequest(request);AjaxTCR.comm.stats._commResults.totalTimeouts++;if(request.retries){AjaxTCR.comm._retryRequest(request);}else{request.onTimeout(request);AjaxTCR.comm.queue._checkRequestQueue(request);}}},_progressRequest:function(request){if(!request.abort&&!request.received){request.timespent=Math.round((request.timespent+(parseInt(request.progressInterval)/1000))*1000)/1000;request.onProgress(request);clearTimeout(request.progressTimerID);request.progressTimerID=null;request.progressTimerID=window.setTimeout(function(){AjaxTCR.comm._progressRequest(request);},request.progressInterval);}},_retryRequest:function(request){request.retryCount++;if(request.retryCount<=request.retries){AjaxTCR.comm.stats._commResults.totalRetries++;AjaxTCR.comm._makeRequest(request);request.onRetry(request);}else{request.onTimeout(request);AjaxTCR.comm.queue._checkRequestQueue(request);}},_handleResponse:function(response){response.endTime=(new Date()).getTime();response.totalTime=(response.endTime-response.startTime);response.received=true;if(response.timeoutTimerID){clearTimeout(response.timeoutTimerID);response.timeoutTimerID=null;}if(response.progressTimerID){clearTimeout(response.progressTimerID);response.progressTimerID=null;}AjaxTCR.comm._requestsOutstanding--;if(!response.fromCache&&response.cacheResponse&&response.httpStatus==200&&!response.fail){AjaxTCR.comm.cache.add(response.cacheKey,response.responseText);}if(response.shortTermCacheTemplate&&response.httpStatus==200&&!response.fail){AjaxTCR.template.addToCache(response.url,response.responseText);}if(response.history&&response.history.saveResponse){AjaxTCR.history.addToHistory(response.history.id,"",response.history.title,"",response);}if(response.statusIndicator){AjaxTCR.comm._removeProgressStatus(response.statusIndicator);}if(response.enforceOrder){AjaxTCR.comm.queue._handleQueue(response);}else{AjaxTCR.comm._handleCallbacks(response);}AjaxTCR.comm.queue._checkRequestQueue(response);},_handleCallbacks:function(response){response.inProgress=false;if(response.template&&response.templateRender=="client"){var template=null;if(response.template!=AjaxTCR.comm.TEMPLATE_SERVER_DEFINED){template=AjaxTCR.template.getFromCache(response.template);if(!(response.cacheTemplate)){AjaxTCR.template.removeFromCache(response.template);}}else{var returnedObject=AjaxTCR.data.decodeJSON(response.responseText);if(returnedObject.templateURL&&returnedObject.templateText){template=returnedObject.templateText;if(response.cacheTemplate){AjaxTCR.template.addToCache(returnedObject.templateURL,returnedObject.templateText);}}else{if(returnedObject.templateText){template=returnedObject.templateText;}else{if(returnedObject.templateURL){var template=AjaxTCR.template.getFromCache(returnedObject.templateURL);if(!template){var templateRequest=AjaxTCR.comm.sendRequest(returnedObject.templateURL,{async:false});var template=templateRequest.responseText;if(response.cacheTemplate&&template){AjaxTCR.template.addToCache(returnedObject.templateURL,template);}}}}}}if(template){try{var translatedResponse=AjaxTCR.template.translateString(template,response.responseText);if(translatedResponse){response.rawResponseText=response.responseText;response.responseText=translatedResponse;}}catch(e){}}}if(response.outputTarget&&response.useRaw&&(response.transport=="xhr"||response.transport=="iframe")){var outputTarget=response.outputTarget;if(outputTarget&&typeof (outputTarget)=="string"){outputTarget=document.getElementById(outputTarget);}if(response.fail){outputTarget.innerHTML=response.fail;}else{var span=document.createElement("span");span.innerHTML=response.responseText;var newParent=span;switch(response.insertionType.toLowerCase()){case ("insertbefore"):var parent=outputTarget.parentNode;parent.insertBefore(span,outputTarget);break;case ("insertafter"):var parent=outputTarget.parentNode;AjaxTCR.util.DOM.insertAfter(parent,span,outputTarget);break;case ("firstchild"):var elm=outputTarget.firstChild;while(elm!=null&&elm.nodeType!=1){elm=elm.nextSibling;}if(elm!=null){outputTarget.insertBefore(span,elm);}else{outputTarget.appendChild(span);}break;case ("lastchild"):outputTarget.appendChild(span);break;default:outputTarget.innerHTML=response.responseText;newParent=outputTarget;break;}}}if(response["on"+response.httpStatus]&&!response.fail){response["on"+response.httpStatus](response);}if(response.retries){for(var i=0;i<AjaxTCR.comm._networkErrorStatus.length;i++){if(response.httpStatus==AjaxTCR.comm._networkErrorStatus[i]){AjaxTCR.comm._retryRequest(response);return ;}}}if(response.httpStatus==200){if(response.fail){AjaxTCR.comm._handleFail(response,response.fail);}else{if(response.responseContentType&&response.transport=="xhr"){var responseContentType=response.xhr.getResponseHeader("Content-Type");responseContentType=responseContentType.substring(0,responseContentType.indexOf(";"));if(responseContentType!=response.responseContentType){AjaxTCR.comm._handleFail(response,"Wrong Content-Type: "+responseContentType);}else{if(response.responseContentType=="text/xml"&&(response.responseXML==null||response.responseXML.childNodes.length==0||response.responseXML.childNodes[0].nodeName=="parsererror")){AjaxTCR.comm._handleFail(response,"Invalid XML Data");}else{AjaxTCR.comm._handleSuccess(response);}}}else{AjaxTCR.comm._handleSuccess(response);}}}else{AjaxTCR.comm._handleFail(response,response.httpStatus+" "+response.httpStatusText);}response=null;},_handleFail:function(response,message){AjaxTCR.comm.stats._commResults.totalFails++;response.fail=message;var fail={};fail.url=response.url;fail.status=response.httpStatus;fail.message=message;AjaxTCR.comm.stats._commResults.requestFails.push(fail);response.onFail(response,message);},_handleSuccess:function(response){AjaxTCR.comm.stats._commResults.totalSuccesses++;if(response.isPrefetch){response.onPrefetch(response);}else{response.onSuccess(response);}},_handleReadyStateChange:function(response){if(response.abort){return ;}if(response.xhr.readyState==AjaxTCR.comm.OPEN&&response.onOpen){response.onOpen(response);}else{if(response.xhr.readyState==AjaxTCR.comm.SENT&&response.onSent){response.onSent(response);}else{if(response.xhr.readyState==AjaxTCR.comm.LOADING&&response.onLoading){response.onLoading(response);}else{if(response.xhr.readyState==AjaxTCR.comm.DONE){if(response.signedResponse){var signature=response.xhr.getResponseHeader("Content-MD5");var verifySignature=AjaxTCR.data.encodeMD5(response.xhr.responseText);if(signature!=verifySignature){response.fail="Response Packet Compromised.";}}if(response.onReceived&&!response.fail){response.onReceived(response);}try{response.httpStatus=response.xhr.status;response.httpStatusText=response.xhr.statusText;}catch(e){response.httpStatus=3507;response.httpStatusText="Unknown Loss";}response.responseText=response.xhr.responseText;response.responseXML=response.xhr.responseXML;AjaxTCR.comm._handleResponse(response);}}}}},_setStatus:function(statusIndicator){if(statusIndicator.target){if(typeof (statusIndicator.target)=="string"){statusIndicator.target=document.getElementById(statusIndicator.target);}if(statusIndicator.type=="text"){var statusDiv=document.createElement("div");statusDiv.innerHTML=statusIndicator.text;statusIndicator.target.appendChild(statusDiv);statusIndicator.element=statusDiv;}else{if(statusIndicator.type=="image"){var statusImg=document.createElement("img");statusImg.id="progressBar";if(statusIndicator.border){statusImg.border=statusIndicator.border;}statusImg.src=statusIndicator.imgSrc;statusIndicator.target.appendChild(statusImg);statusIndicator.element=statusImg;}}}},_setProgressStatus:function(statusIndicator){if(statusIndicator.progress){return AjaxTCR.comm._setStatus(statusIndicator.progress);}},_removeStatus:function(statusIndicator){if(statusIndicator.element){statusIndicator.element.parentNode.removeChild(statusIndicator.element);statusIndicator.element=null;}},_removeProgressStatus:function(statusIndicator){if(statusIndicator.progress){AjaxTCR.comm._removeStatus(statusIndicator.progress);}}};AjaxTCR.comm.cache={_cache:new Array(),_cacheOptions:{size:100,algorithm:"LRU",expires:60},add:function(key,val){if(AjaxTCR.comm.cache._cache.length>=AjaxTCR.comm.cache._cacheOptions.size){var algorithm=AjaxTCR.comm.cache._cacheOptions.algorithm;if(algorithm=="FIFO"){AjaxTCR.comm.cache._cache.splice(0,1);}else{if(algorithm=="LFU"){var removeIndex=-1;for(var i=0;i<AjaxTCR.comm.cache._cache.length;i++){if(removeIndex==-1||AjaxTCR.comm.cache._cache[removeIndex].totalAccessed>AjaxTCR.comm.cache._cache[i].totalAccessed){removeIndex=i;}}AjaxTCR.comm.cache._cache.splice(removeIndex,1);}else{if(algorithm=="LRU"){var removeIndex=-1;for(var i=0;i<AjaxTCR.comm.cache._cache.length;i++){if(removeIndex==-1||AjaxTCR.comm.cache._cache[removeIndex].lastAccessed>AjaxTCR.comm.cache._cache[i].lastAccessed){removeIndex=i;}}AjaxTCR.comm.cache._cache.splice(removeIndex,1);}}}}var item=AjaxTCR.comm.cache._createCacheItem(key,val);AjaxTCR.comm.cache._cache.push(item);},clear:function(){AjaxTCR.comm.cache._cache=new Array();},get:function(key){var cacheObject=null;for(var i=0;i<AjaxTCR.comm.cache._cache.length;i++){if(AjaxTCR.comm.cache._cache[i].key==key){cacheObject=AjaxTCR.comm.cache._cache[i];break;}}if(cacheObject){cacheObject.lastAccessed=new Date();cacheObject.totalAccessed++;if(AjaxTCR.comm.cache._cacheOptions.expires!=-1){var timeAdded=cacheObject.added;var now=new Date();now.setMinutes(now.getMinutes()-AjaxTCR.comm.cache._cacheOptions.expires);if(now>timeAdded){AjaxTCR.comm.cache.remove(item.key);cacheObject=null;}}}if(cacheObject){return cacheObject.value;}else{return null;}},getAll:function(){return AjaxTCR.comm.cache._cache;},getSize:function(){return AjaxTCR.comm.cache._cache.length;},remove:function(key){for(var i=0;i<AjaxTCR.comm.cache._cache.length;i++){if(AjaxTCR.comm.cache._cache[i].key==key){AjaxTCR.comm.cache._cache.splice(i,1);break;}}},setOptions:function(cacheOptions){for(option in cacheOptions){AjaxTCR.comm.cache._cacheOptions[option]=cacheOptions[option];}},_handleCacheResponse:function(response,responseText){response.xhr={};response.xhr.responseText=response.responseText=responseText;response.xhr.responseXML=response.responseXML=null;if(responseText.indexOf("<?xml")>-1){response.xhr.responseXML=response.responseXML=AjaxTCR.data.serializeXMLString(responseText);}response.xhr.status=response.httpStatus=200;response.xhr.statusText=response.httpStatusText="OK";response.fromCache=true;AjaxTCR.comm._handleResponse(response);},_createCacheItem:function(key,val){var cacheObject={};cacheObject.key=key;cacheObject.value=val;cacheObject.lastAccessed=new Date();cacheObject.added=new Date();cacheObject.totalAccessed=1;return cacheObject;}};AjaxTCR.comm.queue={_responseQueue:{queue:new Array(),currentIndex:0,maxID:0},_requestQueue:new Array(),_requestQueueID:0,requestQueueConcurrentRequests:1,add:function(url,options,priority){if(options){options.inQueue=true;}else{options={inQueue:true};}if(!priority){options.priority="normal";}else{options.priority=priority.toLowerCase();}options.requestQueueID=++AjaxTCR.comm.queue._requestQueueID;if(AjaxTCR.comm.stats.getRequestCount("active")>=AjaxTCR.comm.queue.requestQueueConcurrentRequests){var request={url:url,options:options};if(options.priority=="next"){AjaxTCR.comm.queue._requestQueue.unshift(request);}else{if(priority&&priority=="faster"){var set=false;for(var i=0;i<AjaxTCR.comm.queue._requestQueue.length;i++){if(AjaxTCR.comm.queue._requestQueue[i].options.priority=="normal"){AjaxTCR.comm.queue._requestQueue.splice(i,0,request);set=true;break;}}if(!set){AjaxTCR.comm.queue._requestQueue.push(request);}}else{AjaxTCR.comm.queue._requestQueue.push(request);}}}else{AjaxTCR.comm.sendRequest(url,options);}return options.requestQueueID;},clear:function(){AjaxTCR.comm.queue._requestQueue.length=0;},get:function(ID){for(var i=0;i<AjaxTCR.comm.queue._requestQueue.length;i++){if(AjaxTCR.comm.queue._requestQueue[i].options.requestQueueID==ID){return AjaxTCR.comm.queue._requestQueue[i];}}return null;},getAll:function(){return AjaxTCR.comm.queue._requestQueue;},getPosition:function(ID){for(var i=0;i<AjaxTCR.comm.queue._requestQueue.length;i++){if(AjaxTCR.comm.queue._requestQueue[i].options.requestQueueID==ID){return i;}}return -1;},getSize:function(){return AjaxTCR.comm.queue._requestQueue.length;},remove:function(ID){for(var i=0;i<AjaxTCR.comm.queue._requestQueue.length;i++){if(AjaxTCR.comm.queue._requestQueue[i].options.requestQueueID==ID){var ret=AjaxTCR.comm.queue._requestQueue[i];AjaxTCR.comm.queue._requestQueue.splice(i,1);return ret;}}return false;},_checkRequestQueue:function(response){if(response.inQueue&&AjaxTCR.comm.queue._requestQueue.length>0){var nextRequest=AjaxTCR.comm.queue._requestQueue.shift();AjaxTCR.comm.sendRequest(nextRequest.url,nextRequest.options);}},_handleQueue:function(response){AjaxTCR.comm.queue._responseQueue.queue[response.responseQueueID]=response;while(AjaxTCR.comm.queue._responseQueue.queue[AjaxTCR.comm.queue._responseQueue.currentIndex]!=undefined){AjaxTCR.comm._handleCallbacks(AjaxTCR.comm.queue._responseQueue.queue[AjaxTCR.comm.queue._responseQueue.currentIndex]);AjaxTCR.comm.queue._responseQueue.currentIndex++;}}};AjaxTCR.comm.stats={_commResults:{totalRequests:0,totalTimeouts:0,totalRetries:0,totalSuccesses:0,totalFails:0,requestFails:new Array()},collect:function(url){var sendConnectionStats=function(){var results=AjaxTCR.comm.stats.get();if(results.totalRequests>0){var payload=AjaxTCR.data.encodeJSON(results);AjaxTCR.comm.sendRequest(url,{method:"POST",payload:payload,requestContentType:"application/json",oneway:true});}};if(window.attachEvent){window.attachEvent("onunload",sendConnectionStats);}else{window.addEventListener("unload",sendConnectionStats,false);}},get:function(){return AjaxTCR.comm.stats._commResults;},getRequestCount:function(type){if(type=="queued"){return AjaxTCR.comm.queue.getSize();}else{if(type=="active"){return AjaxTCR.comm._requestsOutstanding;}else{return(AjaxTCR.comm.queue.getSize()+AjaxTCR.comm._requestsOutstanding);}}}};AjaxTCR.comm.cookie={get:function(name){var fullname=name+"=";var cookies=document.cookie.split(";");for(var i=0;i<cookies.length;i++){var cookieNV=cookies[i];while(cookieNV.charAt(0)==" "){cookieNV=cookieNV.substring(1);}if(cookieNV.indexOf(fullname)==0){return cookieNV.substring(fullname.length);}}return null;},set:function(key,value,expires,path){if(!path){path="/";}document.cookie=key+"="+value+"; expires="+expires+"; path="+path;},remove:function(key,path){if(!path){path="/";}var now=new Date();now.setYear(now.getYear()-1);var expires=now.toGMTString();document.cookie=key+"=; expires="+expires+"; path="+path;}};AjaxTCR.history={BACK_GUARD_DISABLED:0,BACK_GUARD_INITIALIZED:1,BACK_GUARD_ENABLED:2,_currentState:"",_onStateChangeCallback:function(){},_iframeSrc:"blank.html",_historyEnabled:false,_history:new Array(),_historyPosition:0,_backGuardEnabled:0,_backGuardMessage:"Are you sure you wish to end your session?",init:function(onStateChangeCallback,initState){if(AjaxTCR.history._historyEnabled){return ;}else{AjaxTCR.history._historyEnabled=true;}AjaxTCR.history._onStateChangeCallback=onStateChangeCallback;if(!(navigator.userAgent.toLowerCase().indexOf("msie")>-1)){AjaxTCR.history._checkHash();}else{AjaxTCR.history._checkHashIE();}if(!window.location.hash){AjaxTCR.history.addToHistory("AjaxTCRinit",initState,document.title);}else{if((navigator.userAgent.toLowerCase().indexOf("msie")>-1)){AjaxTCR.history._initIE();}}},addToHistory:function(id,data,title,url,options){if(id!="AjaxTCRinit"){window.location.hash=AjaxTCR.data.encodeValue(id).replace(/%2F/g,"/");AjaxTCR.history._currentState=window.location.hash.substring(1);}var optionsString="";var safeStateName=id.replace(/[%\+]/g,"");if(title){document.title=title;}if(options){options.url=url;if(navigator.userAgent.toLowerCase().indexOf("msie")>-1){options.responseXML="iebug";}optionsString=AjaxTCR.data.encode64(AjaxTCR.data.encodeJSON(options));}else{if(data){options={value:data};optionsString=AjaxTCR.data.encode64(AjaxTCR.data.encodeJSON(options));}}AjaxTCR.history._historyPosition++;if(navigator.userAgent.toLowerCase().indexOf("msie")>-1){var iframe=document.getElementById("ieFix");var html='<html><head><title>IE History</title><STYLE>.userData {behavior:url(#default#userdata);}</STYLE></head><body><div class="userData" id="persistDiv"></div><div id="currentState">'+AjaxTCR.history._currentState+"</div></body></html>";var doc=iframe.contentWindow.document;doc.open();doc.write(html);doc.close();var persistDiv=doc.getElementById("persistDiv");AjaxTCR.storage.add("request",optionsString,persistDiv,safeStateName);if(title){AjaxTCR.storage.add("title",title,persistDiv,safeStateName);}AjaxTCR.storage.add("position",AjaxTCR.history._historyPosition,persistDiv,safeStateName);}else{if(safeStateName){AjaxTCR.storage.add(safeStateName,optionsString);if(title){AjaxTCR.storage.add(safeStateName+"title",title);}AjaxTCR.storage.add(safeStateName+"position",AjaxTCR.history._historyPosition);}}var historyItem={id:AjaxTCR.history._currentState,title:title};var diff=AjaxTCR.history._history.length-AjaxTCR.history._historyPosition+1;if(diff>0){AjaxTCR.history._history.splice(AjaxTCR.history._historyPosition-1,diff);}AjaxTCR.history._history.push(historyItem);},getAll:function(){return AjaxTCR.history._history;},getPosition:function(){return AjaxTCR.history._historyPosition;},enableBackGuard:function(message,immediate){if(AjaxTCR.history._backGuardEnabled){return ;}if(message!=null&&typeof (message)!="undefined"){AjaxTCR.history._backGuardMessage=message;}if(immediate){AjaxTCR.history._activateBackGuard();}else{AjaxTCR.history._backGuardEnabled=AjaxTCR.history.BACK_GUARD_INITIALIZED;}},_activateBackGuard:function(){var message=AjaxTCR.history._backGuardMessage;window.onbeforeunload=function(){return message;};AjaxTCR.history._backGuardEnabled=AjaxTCR.history.BACK_GUARD_ENABLED;},_initIE:function(){var iframe=document.getElementById("ieFix");var html='<html><head><title>IE History</title><STYLE>.userData {behavior:url(#default#userdata);}</STYLE></head><body><div class="userData" id="persistDiv"></div><div id="currentState">'+window.location.hash.substring(1);+"</div></body></html>";var doc=iframe.contentWindow.document;doc.open();doc.write(html);doc.close();},_checkHashIE:function(){var iframe=document.getElementById("ieFix");if(!iframe.contentWindow||!iframe.contentWindow.document){setTimeout(_checkHashIE,10);return ;}var doc=iframe.contentWindow.document;var keyObj=doc.getElementById("currentState");var key="";if(keyObj){key=keyObj.innerText;}if(key!=AjaxTCR.history._currentState){AjaxTCR.history._currentState=key;window.location.hash=key;var persistDiv=doc.getElementById("persistDiv");var safeStateName=AjaxTCR.history._currentState.replace(/[%\+]/g,"");if(!safeStateName){safeStateName="AjaxTCRinit";}var title=AjaxTCR.storage.get("title",persistDiv,safeStateName);if(title){document.title=title;}AjaxTCR.history._historyPosition=AjaxTCR.storage.get("position",persistDiv,safeStateName);if(AjaxTCR.history._historyPosition>AjaxTCR.history._history.length){AjaxTCR.history._historyPosition=1;AjaxTCR.storage.add("position",AjaxTCR.history._historyPosition,persistDiv,safeStateName);var historyItem={id:AjaxTCR.history._currentState,title:title};AjaxTCR.history._history.push(historyItem);}var optionsString=AjaxTCR.storage.get("request",persistDiv,safeStateName);AjaxTCR.history._handleHistoryCallback(optionsString);}setTimeout("AjaxTCR.history._checkHashIE();",500);},_checkHash:function(){if((window.location.hash!="#"+AjaxTCR.history._currentState)&&window.location.hash!=AjaxTCR.history._currentState){AjaxTCR.history._currentState=window.location.hash.substring(1);var safeStateName=AjaxTCR.history._currentState.replace(/[%\+]/g,"");if(!safeStateName){safeStateName="AjaxTCRinit";}var title=AjaxTCR.storage.get(safeStateName+"title");if(title){document.title=title.value;}AjaxTCR.history._historyPosition=AjaxTCR.storage.get(safeStateName+"position").value;if(AjaxTCR.history._historyPosition>AjaxTCR.history._history.length){AjaxTCR.history._historyPosition=1;AjaxTCR.storage.add(safeStateName+"position",AjaxTCR.history._historyPosition);var historyItem={id:AjaxTCR.history._currentState,title:title};AjaxTCR.history._history.push(historyItem);}var results=AjaxTCR.storage.get(safeStateName);if(results){AjaxTCR.history._handleHistoryCallback(results.value);}else{AjaxTCR.history._onStateChangeCallback(AjaxTCR.data.decodeValue(AjaxTCR.history._currentState));}}setTimeout("AjaxTCR.history._checkHash();",500);},_handleHistoryCallback:function(optionsString){if(optionsString&&optionsString!=""){var str=AjaxTCR.data.decode64(optionsString);var options=AjaxTCR.data.decodeJSON(AjaxTCR.data.decode64(optionsString));if(options.history){if(options.history.saveResponse){options.history=null;AjaxTCR.comm.cache._handleCacheResponse(options,options.responseText);}else{options.history=null;AjaxTCR.comm.sendRequest(options.url,options);}}else{AjaxTCR.history._onStateChangeCallback(AjaxTCR.data.decodeValue(AjaxTCR.history._currentState),options.value);}}else{AjaxTCR.history._onStateChangeCallback(AjaxTCR.data.decodeValue(AjaxTCR.history._currentState));}}};AjaxTCR.storage={DEFAULT_MAX_COOKIE_SIZE:4000,init:function(){if(navigator.userAgent.toLowerCase().indexOf("msie")>-1){var persistDiv=document.createElement("div");persistDiv.id="AjaxTCRPersistDiv";persistDiv.style.behavior="url(#default#userData)";document.body.appendChild(persistDiv);return persistDiv;}return null;},add:function(key,value,persistObj,store){if(navigator.userAgent.toLowerCase().indexOf("msie")>-1){if(!store){store="AjaxTCRStore";}if(persistObj){var allitemsString=AjaxTCR.storage.get("AjaxTCRAllItems",persistObj,store);if(!allitemsString){var allitemsObj={};}else{var allitemsObj=AjaxTCR.data.decodeJSON(allitemsString);}allitemsObj[key]=value;allitemsString=AjaxTCR.data.encodeJSON(allitemsObj);persistObj.setAttribute("AjaxTCRAllItems",allitemsString);persistObj.setAttribute(key,value);persistObj.save(store);}}else{if(typeof (globalStorage)!="undefined"){var storage=globalStorage[document.domain];storage.setItem(key,value);}else{var allitemsString=AjaxTCR.storage.get("AjaxTCRAllItems");if(!allitemsString){var allitemsObj=new Array();}else{var allitemsObj=AjaxTCR.data.decodeJSON(allitemsString);}allitemsObj.push(key);allitemsString=AjaxTCR.data.encodeJSON(allitemsObj);var now=new Date();now.setMonth(now.getMonth()+1);var expires=now.toGMTString();var pieces=Math.floor(allitemsString.length/AjaxTCR.storage.DEFAULT_MAX_COOKIE_SIZE+1);for(var i=0;i<pieces;i++){AjaxTCR.comm.cookie.set("AjaxTCRAllItems"+i.toString(),allitemsString.substring(i*AjaxTCR.storage.DEFAULT_MAX_COOKIE_SIZE,AjaxTCR.storage.DEFAULT_MAX_COOKIE_SIZE),expires);}var pieces=Math.floor(value.length/AjaxTCR.storage.DEFAULT_MAX_COOKIE_SIZE+1);for(var i=0;i<pieces;i++){AjaxTCR.comm.cookie.set(key+i.toString(),value.substring(i*AjaxTCR.storage.DEFAULT_MAX_COOKIE_SIZE,AjaxTCR.storage.DEFAULT_MAX_COOKIE_SIZE),expires);}}}},get:function(key,persistObj,store){if(navigator.userAgent.toLowerCase().indexOf("msie")>-1){if(!store){store="AjaxTCRStore";}if(persistObj){persistObj.load(store);return persistObj.getAttribute(key);}}else{if(typeof (globalStorage)!="undefined"){var storage=globalStorage[document.domain];return storage.getItem(key);}else{var i=0;var fullvalue="";do{var val=AjaxTCR.comm.cookie.get(key+i.toString());if(val){fullvalue+=val;}i++;}while(val);if(fullvalue!=""){return fullvalue;}}}return null;},getAll:function(persistObj,store){if(navigator.userAgent.toLowerCase().indexOf("msie")>-1){if(!store){store="AjaxTCRStore";}if(persistObj){var allitems=AjaxTCR.storage.get("AjaxTCRAllItems",persistObj,store);return AjaxTCR.data.decodeJSON(allitems);}}else{if(typeof (globalStorage)!="undefined"){var storage=globalStorage[document.domain];return storage;}else{var allitems=AjaxTCR.storage.get("AjaxTCRAllItems");if(allitems){var items={};var keys=AjaxTCR.data.decodeJSON(allitems);for(var i=0;i<keys.length;i++){items[keys[i]]=AjaxTCR.storage.get(keys[i]);}return items;}}}return null;},clear:function(persistObj,store){var allItems=AjaxTCR.storage.getAll(persistObj,store);for(var i in allItems){AjaxTCR.storage.remove(i,persistObj,store);}},remove:function(key,persistObj,store){if(navigator.userAgent.toLowerCase().indexOf("msie")>-1){if(!store){store="AjaxTCRStore";}if(persistObj){var allitems=AjaxTCR.storage.get("AjaxTCRAllItems",persistObj,store);if(allitems){allitems=AjaxTCR.data.decodeJSON(allitems);if(allitems[key]){delete allitems[key];}allitems=AjaxTCR.data.encodeJSON(allitems);persistObj.setAttribute("AjaxTCRAllItems",allitems);}persistObj.removeAttribute(key);persistObj.save(store);}}else{if(typeof (globalStorage)!="undefined"){var storage=globalStorage[document.domain];delete storage[key];}else{var allitems=AjaxTCR.storage.get("AjaxTCRAllItems",persistObj,store);if(allitems){allitems=AjaxTCR.data.decodeJSON(allitems);for(var i=allitems.length-1;i>=0;i--){if(allitems[i]==key){delete allitems[i];}}var allitemsString=AjaxTCR.data.encodeJSON(allitems);var loops=Math.floor(allitemsString.length/AjaxTCR.storage.DEFAULT_MAX_COOKIE_SIZE+1);var now=new Date();now.setMonth(now.getMonth()+1);var expires=now.toGMTString();for(var i=0;i<loops;i++){AjaxTCR.comm.cookie.set("AjaxTCRAllItems"+i.toString(),allitemsString.substring(i*AjaxTCR.storage.DEFAULT_MAX_COOKIE_SIZE,AjaxTCR.storage.DEFAULT_MAX_COOKIE_SIZE),expires);}var i=0;do{var val=AjaxTCR.comm.cookie.get(key+i.toString());if(val){AjaxTCR.comm.cookie.remove(key+i.toString());}i++;}while(val);}}}}};AjaxTCR.template={_libraryIncluded:false,_cache:new Array(),translateString:function(template,data){var myTemplateObj=TrimPath.parseTemplate(template);var result=myTemplateObj.process(AjaxTCR.data.decodeJSON(data));return result;},translateFile:function(templatefilename,data,cache){if(typeof (cache)=="undefined"){cache=true;}var template=AjaxTCR.template.getFromCache(templatefilename);if(!template){var templateRequest=AjaxTCR.comm.sendRequest(templatefilename,{async:false,cacheResponse:cache});var template=templateRequest.responseText;if(cache&&template){AjaxTCR.template.addToCache(templatefilename,template);}}if(typeof (data)=="string"){data=AjaxTCR.data.decodeJSON(data);}var myTemplateObj=TrimPath.parseTemplate(template);var result=myTemplateObj.process(data);return result;},addToCache:function(key,val){var item=AjaxTCR.template._createCacheItem(key,val);AjaxTCR.template._cache.push(item);},cache:function(key,val){if(val){AjaxTCR.template.addToCache(key,val);}else{var options={cacheTemplate:true,onSuccess:function(response){if(response.responseText){AjaxTCR.template.addToCache(response.url,response.responseText);}}};AjaxTCR.comm.sendRequest(key,options);}},cacheBundle:function(url){var options={cacheTemplate:true,onSuccess:AjaxTCR.template._parseTemplateBundle};AjaxTCR.comm.sendRequest(url,options);},clearCache:function(){AjaxTCR.template._cache=new Array();},getFromCache:function(key){var cacheObject=null;for(var i=0;i<AjaxTCR.template._cache.length;i++){if(AjaxTCR.template._cache[i].key==key){cacheObject=AjaxTCR.template._cache[i];break;}}if(cacheObject){return cacheObject.value;}else{return null;}},removeFromCache:function(key){for(var i=0;i<AjaxTCR.template._cache.length;i++){if(AjaxTCR.template._cache[i].key==key){AjaxTCR.template._cache.splice(i,1);break;}}},_createCacheItem:function(key,val){var cacheObject={};cacheObject.key=key;cacheObject.value=val;return cacheObject;},_includeLibrary:function(){if(!AjaxTCR.template._libraryIncluded){document.write("<sc"+'ript type="text/javascript" src="http://ajaxref.com/lib/trimpath/template.js"></sc'+"ript>");}AjaxTCR.template._libraryIncluded=true;},_parseTemplateBundle:function(response){var bundle=response.responseText;var re=/\s*\<!--\s*Template-Begin([\w\W]*?)\<!--\s*Template-End\s*--\>\s*/ig;var matches=bundle.match(re);for(var i=0;i<matches.length;i++){var parts=/\s*\<!--\s*Template-Begin\s*URL=['"]([^'"]*)['"]\s*--\>([\w\W]*?)\<!--\s*Template-End\s*--\>\s*/i;var data=parts.exec(matches[i]);if(data){AjaxTCR.template.addToCache(data[1],data[2]);}}}};AjaxTCR.data={encodeValue:function(val){var encodedVal;if(!encodeURIComponent){encodedVal=escape(val);encodedVal=encodedVal.replace(/@/g,"%40");encodedVal=encodedVal.replace(/\//g,"%2F");encodedVal=encodedVal.replace(/\+/g,"%2B");}else{encodedVal=encodeURIComponent(val);encodedVal=encodedVal.replace(/~/g,"%7E");encodedVal=encodedVal.replace(/!/g,"%21");encodedVal=encodedVal.replace(/\(/g,"%28");encodedVal=encodedVal.replace(/\)/g,"%29");encodedVal=encodedVal.replace(/'/g,"%27");}return encodedVal.replace(/\%20/g,"+");},decodeValue:function(val){var decodedVal;if(!decodeURIComponent){decodedVal=val;decodedVal=decodedVal.replace(/\%40/g,"@");decodedVal=decodedVal.replace(/\%2F/g,"/");decodedVal=decodedVal.replace(/\%2B/g,"+");decodedVal=unescape(val);}else{decodedVal=val;decodedVal=decodedVal.replace(/\%7E/g,"~");decodedVal=decodedVal.replace(/\%21/g,"!");decodedVal=decodedVal.replace(/\%28/g,"(");decodedVal=decodedVal.replace(/\%29/g,")");decodedVal=decodedVal.replace(/\%27/g,"'");decodedVal=decodeURIComponent(val);}return decodedVal.replace(/\+/g," ");},encodeAsHTML:function(str){var convertedString=str.replace(/<([^>]*)>/g,"&lt;$1&gt;");convertedString=convertedString.replace(/\n/g,"<br/>");return convertedString;},encode64:function(inputStr){var b64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var outputStr="";var i=0;while(i<inputStr.length){var byte1=inputStr.charCodeAt(i++);var byte2=inputStr.charCodeAt(i++);var byte3=inputStr.charCodeAt(i++);var enc1=byte1>>2;var enc2=((byte1&3)<<4)|(byte2>>4);var enc3,enc4;if(isNaN(byte2)){enc3=enc4=64;}else{enc3=((byte2&15)<<2)|(byte3>>6);if(isNaN(byte3)){enc4=64;}else{enc4=byte3&63;}}outputStr+=b64.charAt(enc1)+b64.charAt(enc2)+b64.charAt(enc3)+b64.charAt(enc4);}return outputStr;},decode64:function(inputStr){var b64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var outputStr="";var i=0;inputStr=inputStr.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(i<inputStr.length){var dec1=b64.indexOf(inputStr.charAt(i++));var dec2=b64.indexOf(inputStr.charAt(i++));var dec3=b64.indexOf(inputStr.charAt(i++));var dec4=b64.indexOf(inputStr.charAt(i++));var byte1=(dec1<<2)|(dec2>>4);var byte2=((dec2&15)<<4)|(dec3>>2);var byte3=((dec3&3)<<6)|dec4;outputStr+=String.fromCharCode(byte1);if(dec3!=64){outputStr+=String.fromCharCode(byte2);}if(dec4!=64){outputStr+=String.fromCharCode(byte3);}}return outputStr;},serializeForm:function(form,encoding,trigger,evt){if(typeof (form)=="string"){var formObject=document.forms[form];if(formObject==null){formObject=document.getElementById(form);}form=formObject;}var x=0,y=0;if(trigger&&trigger.type=="image"&&trigger.name){if(window.event){x=window.event.offsetX;y=window.event.offsetY;}else{if(evt.target){var coords={x:0,y:0};var elmt=trigger;while(elmt){coords.x+=elmt.offsetLeft;coords.y+=elmt.offsetTop;elmt=elmt.offsetParent;}x=evt.clientX+window.scrollX-coords.x-1;y=evt.clientY+window.scrollY-coords.y-1;}}}var formValues=AjaxTCR.data._beginEncode(encoding);for(var i=0;i<form.elements.length;i++){var currentField=form.elements[i];var fieldName=currentField.name;var fieldType=currentField.type;if((!currentField.disabled)&&fieldName){switch(fieldType){case"text":case"password":case"hidden":case"textarea":formValues=AjaxTCR.data._encode(formValues,fieldName,currentField.value,encoding);break;case"radio":case"checkbox":if(currentField.checked){formValues=AjaxTCR.data._encode(formValues,fieldName,currentField.value,encoding);}break;case"select-one":case"select-multiple":for(var j=0;j<currentField.options.length;j++){if(currentField.options[j].selected){formValues=AjaxTCR.data._encode(formValues,fieldName,(currentField.options[j].value!=null&&currentField.options[j].value!="")?currentField.options[j].value:currentField.options[j].text,encoding);}}break;case"file":if(currentField.value){return"fileupload";}else{formValues=AjaxTCR.data._encode(formValues,fieldName,currentField.value,encoding);}break;case"submit":if(currentField==trigger){formValues=AjaxTCR.data._encode(formValues,fieldName,currentField.value,encoding);}break;default:continue;}}}if(trigger&&trigger.type=="image"&&trigger.name){formValues=AjaxTCR.data._encode(formValues,trigger.name+".x",x,encoding);formValues=AjaxTCR.data._encode(formValues,trigger.name+".y",y,encoding);formValues=AjaxTCR.data._encode(formValues,trigger.name,trigger.value,encoding);}formValues=AjaxTCR.data._completeEncoding(formValues,encoding);return formValues;},serializeObject:function(payload,obj,encoding){payload=AjaxTCR.data._continueEncoding(payload,encoding);for(var key in obj){payload=AjaxTCR.data._encode(payload,key,obj[key],encoding);}payload=AjaxTCR.data._completeEncoding(payload,encoding);return payload;},_encode:function(payload,fieldName,fieldValue,encoding){switch(encoding){case"application/json":payload[fieldName]=fieldValue;break;case"application/x-www-form-urlencoded":payload+=AjaxTCR.data.encodeValue(fieldName)+"="+AjaxTCR.data.encodeValue(fieldValue)+"&";break;case"text/plain":payload+=fieldName.replace(/,/g,"%2C")+"="+fieldValue.replace(/,/g,"%2C")+",";break;case"text/xml":var node=payload.createElement(fieldName);node.appendChild(payload.createTextNode(fieldValue));payload.lastChild.appendChild(node);break;}return payload;},_beginEncode:function(encoding){switch(encoding){case"application/json":if(payload==null){payload={};}break;case"application/x-www-form-urlencoded":if(payload==null){payload="";}break;case"text/plain":if(payload==null){payload="";}break;case"text/xml":if(payload==null){var payload=AjaxTCR.data._createXMLDocument();if(window.navigator.userAgent.indexOf("Opera")==-1){var xmlStmt=payload.createProcessingInstruction("xml",' version="1.0" encoding="UTF-8" ');payload.appendChild(xmlStmt);}var root=payload.createElement("payload");payload.appendChild(root);}break;}return payload;},_completeEncoding:function(payload,encoding){if((encoding=="application/x-www-form-urlencoded"||encoding=="text/plain")&&payload.length>0){payload=payload.substring(0,payload.length-1);}return payload;},_continueEncoding:function(payload,encoding){if(payload!=""){if(encoding=="application/x-www-form-urlencoded"){payload+="&";}else{if(encoding=="text/plain"){payload+=",";}}}return payload;},_createXMLDocument:function(){var xmlDoc=null;if(window.ActiveXObject){var versions=["Msxml2.DOMDocument.6.0","Msxml2.DOMDocument.3.0","MSXML2.DOMDocument","MSXML.DOMDocument","Microsoft.XMLDOM"];for(var i=0;i<versions.length;i++){try{xmlDoc=new ActiveXObject(versions[i]);break;}catch(err){}}}else{xmlDoc=document.implementation.createDocument("","",null);}return xmlDoc;},serializeXML:function(xmlObject){var xmlString="";if(typeof XMLSerializer!="undefined"){xmlString=(new XMLSerializer()).serializeToString(xmlObject);}else{if(xmlObject.xml){xmlString=xmlObject.xml;}}return xmlString;},serializeXMLString:function(xmlStr){if(window.DOMParser){var xmlDoc=(new DOMParser()).parseFromString(xmlStr,"text/xml");}else{var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");xmlDoc.async="false";xmlDoc.loadXML(xmlStr);}return xmlDoc;},decodeJSON:function(jsonString){var j;if(jsonString.length>1&&jsonString.substring(0,2)=="/*"){jsonString=jsonString.substring(2,jsonString.lastIndexOf("*/"));}try{j=eval("("+jsonString+")");}catch(e){throw new SyntaxError("parseJSON");}return j;},encodeJSON:function(o){var useHasOwn={}.hasOwnProperty?true:false;var pad=function(n){return n<10?"0"+n:n;};var m={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};if(typeof o=="undefined"||o===null){return"null";}else{if(o instanceof Array){var a=["["],b,i,l=o.length,v;for(i=0;i<l;i+=1){v=o[i];switch(typeof v){case"undefined":case"unknown":break;default:if(b){a.push(",");}a.push(v===null?"null":AjaxTCR.data.encodeJSON(v));b=true;}}a.push("]");return a.join("");}else{if(o instanceof Date){return'"'+o.getFullYear()+"-"+pad(o.getMonth()+1)+"-"+pad(o.getDate())+"T"+pad(o.getHours())+":"+pad(o.getMinutes())+":"+pad(o.getSeconds())+'"';}else{if(typeof o=="string"){var s=o;if(/["\\\x00-\x1f]/.test(s)){return'"'+s.replace(/([\x00-\x1f\\"])/g,function(a,b){var c=m[b];if(c){return c;}c=b.charCodeAt();return"\\u00"+Math.floor(c/16).toString(16)+(c%16).toString(16);})+'"';}return'"'+s+'"';}else{if(typeof o=="number"){return isFinite(o)?String(o):"null";}else{if(typeof o=="boolean"){return String(o);}else{if(typeof o=="function"){return"( "+String(o)+" )";}else{var a=["{"],b,i,v;for(var i in o){try{if(!useHasOwn||o.hasOwnProperty(i)){v=o[i];switch(typeof v){case"undefined":case"unknown":break;case"function":if(String(v).indexOf("[native code]")>-1){break;}default:if(b){a.push(",");}a.push(AjaxTCR.data.encodeJSON(i),":",v===null?"null":AjaxTCR.data.encodeJSON(v));b=true;}}}catch(e){}}a.push("}");return a.join("");}}}}}}}},encodeMD5:function(str){var hexcase=0;var b64pad="";var chrsz=8;var len=str.length*chrsz;var x=Array();var mask=(1<<chrsz)-1;for(var i=0;i<len;i+=chrsz){x[i>>5]|=(str.charCodeAt(i/chrsz)&mask)<<(i%32);}x[len>>5]|=128<<((len)%32);x[(((len+64)>>>9)<<4)+14]=len;var a=1732584193;var b=-271733879;var c=-1732584194;var d=271733878;for(var i=0;i<x.length;i+=16){var olda=a;var oldb=b;var oldc=c;var oldd=d;a=md5_ff(a,b,c,d,x[i+0],7,-680876936);d=md5_ff(d,a,b,c,x[i+1],12,-389564586);c=md5_ff(c,d,a,b,x[i+2],17,606105819);b=md5_ff(b,c,d,a,x[i+3],22,-1044525330);a=md5_ff(a,b,c,d,x[i+4],7,-176418897);d=md5_ff(d,a,b,c,x[i+5],12,1200080426);c=md5_ff(c,d,a,b,x[i+6],17,-1473231341);b=md5_ff(b,c,d,a,x[i+7],22,-45705983);a=md5_ff(a,b,c,d,x[i+8],7,1770035416);d=md5_ff(d,a,b,c,x[i+9],12,-1958414417);c=md5_ff(c,d,a,b,x[i+10],17,-42063);b=md5_ff(b,c,d,a,x[i+11],22,-1990404162);a=md5_ff(a,b,c,d,x[i+12],7,1804603682);d=md5_ff(d,a,b,c,x[i+13],12,-40341101);c=md5_ff(c,d,a,b,x[i+14],17,-1502002290);b=md5_ff(b,c,d,a,x[i+15],22,1236535329);a=md5_gg(a,b,c,d,x[i+1],5,-165796510);d=md5_gg(d,a,b,c,x[i+6],9,-1069501632);c=md5_gg(c,d,a,b,x[i+11],14,643717713);b=md5_gg(b,c,d,a,x[i+0],20,-373897302);a=md5_gg(a,b,c,d,x[i+5],5,-701558691);d=md5_gg(d,a,b,c,x[i+10],9,38016083);c=md5_gg(c,d,a,b,x[i+15],14,-660478335);b=md5_gg(b,c,d,a,x[i+4],20,-405537848);a=md5_gg(a,b,c,d,x[i+9],5,568446438);d=md5_gg(d,a,b,c,x[i+14],9,-1019803690);c=md5_gg(c,d,a,b,x[i+3],14,-187363961);b=md5_gg(b,c,d,a,x[i+8],20,1163531501);a=md5_gg(a,b,c,d,x[i+13],5,-1444681467);d=md5_gg(d,a,b,c,x[i+2],9,-51403784);c=md5_gg(c,d,a,b,x[i+7],14,1735328473);b=md5_gg(b,c,d,a,x[i+12],20,-1926607734);a=md5_hh(a,b,c,d,x[i+5],4,-378558);d=md5_hh(d,a,b,c,x[i+8],11,-2022574463);c=md5_hh(c,d,a,b,x[i+11],16,1839030562);b=md5_hh(b,c,d,a,x[i+14],23,-35309556);a=md5_hh(a,b,c,d,x[i+1],4,-1530992060);d=md5_hh(d,a,b,c,x[i+4],11,1272893353);c=md5_hh(c,d,a,b,x[i+7],16,-155497632);b=md5_hh(b,c,d,a,x[i+10],23,-1094730640);a=md5_hh(a,b,c,d,x[i+13],4,681279174);d=md5_hh(d,a,b,c,x[i+0],11,-358537222);c=md5_hh(c,d,a,b,x[i+3],16,-722521979);b=md5_hh(b,c,d,a,x[i+6],23,76029189);a=md5_hh(a,b,c,d,x[i+9],4,-640364487);d=md5_hh(d,a,b,c,x[i+12],11,-421815835);c=md5_hh(c,d,a,b,x[i+15],16,530742520);b=md5_hh(b,c,d,a,x[i+2],23,-995338651);a=md5_ii(a,b,c,d,x[i+0],6,-198630844);d=md5_ii(d,a,b,c,x[i+7],10,1126891415);c=md5_ii(c,d,a,b,x[i+14],15,-1416354905);b=md5_ii(b,c,d,a,x[i+5],21,-57434055);a=md5_ii(a,b,c,d,x[i+12],6,1700485571);d=md5_ii(d,a,b,c,x[i+3],10,-1894986606);c=md5_ii(c,d,a,b,x[i+10],15,-1051523);b=md5_ii(b,c,d,a,x[i+1],21,-2054922799);a=md5_ii(a,b,c,d,x[i+8],6,1873313359);d=md5_ii(d,a,b,c,x[i+15],10,-30611744);c=md5_ii(c,d,a,b,x[i+6],15,-1560198380);b=md5_ii(b,c,d,a,x[i+13],21,1309151649);a=md5_ii(a,b,c,d,x[i+4],6,-145523070);d=md5_ii(d,a,b,c,x[i+11],10,-1120210379);c=md5_ii(c,d,a,b,x[i+2],15,718787259);b=md5_ii(b,c,d,a,x[i+9],21,-343485551);a=safe_add(a,olda);b=safe_add(b,oldb);c=safe_add(c,oldc);d=safe_add(d,oldd);}var binarray=Array(a,b,c,d);var hex_tab=hexcase?"0123456789ABCDEF":"0123456789abcdef";var str="";for(var i=0;i<binarray.length*4;i++){str+=hex_tab.charAt((binarray[i>>2]>>((i%4)*8+4))&15)+hex_tab.charAt((binarray[i>>2]>>((i%4)*8))&15);}return str;function safe_add(x,y){var lsw=(x&65535)+(y&65535);var msw=(x>>16)+(y>>16)+(lsw>>16);return(msw<<16)|(lsw&65535);}function bit_rol(num,cnt){return(num<<cnt)|(num>>>(32-cnt));}function md5_cmn(q,a,b,x,s,t){return safe_add(bit_rol(safe_add(safe_add(a,q),safe_add(x,t)),s),b);}function md5_ff(a,b,c,d,x,s,t){return md5_cmn((b&c)|((~b)&d),a,b,x,s,t);}function md5_gg(a,b,c,d,x,s,t){return md5_cmn((b&d)|(c&(~d)),a,b,x,s,t);}function md5_hh(a,b,c,d,x,s,t){return md5_cmn(b^c^d,a,b,x,s,t);}function md5_ii(a,b,c,d,x,s,t){return md5_cmn(c^(b|(~d)),a,b,x,s,t);}}};AjaxTCR.util={};AjaxTCR.util.DOM={enableDOMShorthand:true,getElementsByClassName:function(classToFind,startNode){if(document.getElementsByClassName){return document.getElementsByClassName(classToFind,startNode);}var elements;if(startNode){elements=startNode.getElementsByTagName("*");}else{elements=document.getElementsByTagName("*");}var classElements=new Array();var classCount=0;var pattern=new RegExp("(^|\\s)"+classToFind+"(\\s|$)");for(var i=0;i<elements.length;i++){if(pattern.test(elements[i].className)){classElements[classCount++]=elements[i];}}return classElements;},getElementsById:function(){var elements=new Array();var startNode=document;var length=arguments.length;if(typeof (arguments[length-1])=="object"&&arguments[length-1]!=document){startNode=arguments[length-1];length--;var allElements=startNode.getElementsByTagName("*");for(var j=0;j<allElements.length;j++){for(var i=0;i<length;i++){if(allElements[j].id==arguments[i]){elements.push(allElements[j]);break;}}}}else{if(arguments[length-1]==document){length--;}for(var i=0;i<length;i++){var elm=document.getElementById(arguments[i]);if(elm!=null){elements.push(elm);}}}if(elements.length==1){return elements[0];}else{if(elements.length>0){return elements;}else{return null;}}},getElementById:function(id,startNode,deepSearch){if(!startNode){startNode=document;}if(startNode==document&&!deepSearch){return document.getElementById(id);}else{var allElements=startNode.getElementsByTagName("*");for(var j=0;j<allElements.length;j++){if(allElements[j].getAttribute("id")==id){return allElements[j];break;}}}},getElementsBySelector:function(selector,treeRoot,selectorType){var matches=new Array();var parents=new Array();var savematches=new Array();if(treeRoot){if(treeRoot.length){for(var i=0;i<treeRoot.length;i++){parents.push(treeRoot[i]);}}else{parents.push(treeRoot);}}else{parents.push(document);}if(!selectorType){selectorType="CSS";}if(selectorType.toUpperCase()=="CSS"){selector=selector.replace(/([>\+,])/g," $1 ").replace(/[\s]+/g," ");var selectors=selector.split(" ");while(selectors.length>0){var curSelector=selectors.shift();if(curSelector==""){continue;}var options={};switch(curSelector.charAt(0)){case (">"):options.type="childOnly";break;case ("+"):options.type="nextSibling";break;case ("~"):options.type="futureSibling";break;case (","):while(matches.length>0){savematches.push(matches.shift());}parents.length=0;if(treeRoot){parents.push(treeRoot);}else{parents.push(document);}continue;break;}if(options.type){if(curSelector.length==1){curSelector=selectors.shift();}else{curSelector=curSelector.substring(1);}}if(matches.length){parents.length=0;while(matches.length>0){parents.push(matches.shift());}}if(curSelector.indexOf(":")>-1){var newSelector=curSelector.substring(0,curSelector.indexOf(":"));var optionsType=curSelector.substring(curSelector.indexOf(":")+1);curSelector=newSelector;options.type=optionsType.toLowerCase();if(options.type.indexOf("nth-child")==0){options.childNumber=options.type.substring(10,options.type.length-1);options.type="nth-child";}else{if(options.type.indexOf("not")==0){options.notString=optionsType.substring(4,options.type.length-1).replace(/^\s+|\s+$/g,"");options.type="not";var notSelector=curSelector;if(notSelector=="*"){notSelector="";}if(/^[:#\[\.].*/.test(options.notString)){options.notSelector=notSelector+options.notString;}else{options.notSelector=notSelector+" "+options.notString;}options.notObjects=AjaxTCR.util.DOM.getElementsBySelector(options.notSelector,parents);}}}if(curSelector.indexOf("[")>-1){var tokens=curSelector.split("[");curSelector=tokens[0];options.type="attribute";options.attribute=tokens[1].substring(0,tokens[1].length-1).toLowerCase();}if(curSelector==""){curSelector="*";}if(curSelector.indexOf(".")>-1){var classNames=curSelector.split(".");var elementName=classNames.shift();if(elementName!=""){for(var j=0;j<parents.length;j++){var elms=AjaxTCR.util.DOM._getElementsByTagName(parents[j],elementName,options);for(var k=0;k<elms.length;k++){if(checkFilter(elms[k],parents[j],options)){matches.push(elms[k]);}}}}else{if(classNames.length>0){var firstClass=classNames.shift();for(var j=0;j<parents.length;j++){var elms=AjaxTCR.util.DOM.getElementsByClassName(firstClass,parents[j]);for(var k=0;k<elms.length;k++){if(checkFilter(elms[k],parents[j],options)){matches.push(elms[k]);}}}}}for(var j=matches.length-1;j>=0;j--){for(var k=0;k<classNames.length;k++){var pattern=new RegExp("(^|\\s)"+classNames[k]+"(\\s|$)");if(!pattern.test(matches[j].className)){matches.splice(j,1);break;}}}}else{if(curSelector.indexOf("#")>-1){var idNames=curSelector.split("#");var elementName=idNames[0];var id=idNames[1];if(elementName!=""){for(var j=0;j<parents.length;j++){var elms=AjaxTCR.util.DOM._getElementsByTagName(parents[j],elementName,options);for(var k=0;k<elms.length;k++){if(elms[k].id==id&&checkFilter(elms[k],parents[j],options)){matches.push(elms[k]);}}}}else{for(var j=0;j<parents.length;j++){var elms=AjaxTCR.util.DOM.getElementsById(id,parents[j]);if(checkFilter(elms,parents[j],options)){matches.push(elms);}}}}else{for(var j=0;j<parents.length;j++){var elms=AjaxTCR.util.DOM._getElementsByTagName(parents[j],curSelector,options);for(var k=0;k<elms.length;k++){if(checkFilter(elms[k],parents[j],options)){matches.push(elms[k]);}}}}}}}function checkFilter(element,parent,options){var valid=false;if(element==null){return false;}else{if(!options.type){return true;}}if(parent==document){var allElms=document.getElementsByTagName("*");for(var i=0;i<allElms.length;i++){if(checkFilter(element,allElms[i],options)){valid=true;break;}}return valid;}if(options.type=="childOnly"){valid=(element.parentNode==parent);}else{if(options.type=="nextSibling"){var elm=parent.nextSibling;while(elm!=null&&elm.nodeType!=1){elm=elm.nextSibling;}valid=(elm==element);}else{if(options.type=="futureSibling"){var elm=parent.nextSibling;while(elm!=null){if(elm==element){valid=true;break;}elm=elm.nextSibling;}}else{if(options.type=="first-child"){var elm=parent.firstChild;while(elm!=null&&elm.nodeType!=1){elm=elm.nextSibling;}valid=(elm==element);}else{if(options.type=="last-child"){var elm=parent.lastChild;while(elm!=null&&elm.nodeType!=1){elm=elm.previousSibling;}valid=(elm==element);}else{if(options.type=="only-child"){var elm=parent.firstChild;while(elm!=null&&elm.nodeType!=1){elm=elm.nextSibling;}if(elm==element){var elm=parent.lastChild;while(elm!=null&&elm.nodeType!=1){elm=elm.previousSibling;}}valid=(elm==element);}else{if(options.type=="nth-child"){var count=0;var elm=parent.firstChild;while(elm!=null&&count<options.childNumber){if(elm.nodeType==1){count++;}if(count==options.childNumber){break;}elm=elm.nextSibling;}valid=(elm==element);}else{if(options.type=="empty"){valid=(element.childNodes.length==0);}else{if(options.type=="enabled"){valid=(!element.disabled);}else{if(options.type=="disabled"){valid=(element.disabled);}else{if(options.type=="checked"){valid=(element.checked);}else{if(options.type=="selected"){valid=(element.selected);}else{if(options.type=="attribute"){var pattern=/^\s*([\w-]+)\s*([!*$^~=]*)\s*(['|\"]?)(.*)\3/;var attRules=pattern.exec(options.attribute);if(attRules[2]==""){valid=element.getAttribute(attRules[1]);}else{if(attRules[2]=="="){valid=(element.getAttribute(attRules[1])&&element.getAttribute(attRules[1]).toLowerCase()==attRules[4].toLowerCase());}else{if(attRules[2]=="^="){valid=(element.getAttribute(attRules[1])&&element.getAttribute(attRules[1]).toLowerCase().indexOf(attRules[4].toLowerCase())==0);}else{if(attRules[2]=="*="){valid=(element.getAttribute(attRules[1])&&element.getAttribute(attRules[1]).toLowerCase().indexOf(attRules[4].toLowerCase())>-1);}else{if(attRules[2]=="$="){var att=element.getAttribute(attRules[1]);if(att){valid=(att.toLowerCase().substring(att.length-attRules[4].length)==attRules[4].toLowerCase());}}}}}}}else{if(options.type=="not"){valid=true;for(var j=0;j<options.notObjects.length;j++){if(options.notObjects[j]==element){valid=false;break;}}}}}}}}}}}}}}}}return valid;}if(savematches.length){while(matches.length>0){savematches.push(matches.shift());}while(savematches.length>0){matches.push(savematches.shift());}}return matches;},_getElementsByTagName:function(parentElm,tag,options){var matches=new Array();if(!options.type){return parentElm.getElementsByTagName(tag);}if(options.type=="nextSibling"){var elm=parentElm.nextSibling;while(elm&&elm.nodeType!=1){elm=elm.nextSibling;}if(checkTagMatch(elm,tag)){matches.push(elm);}}else{if(options.type=="futureSibling"){var elm=parentElm.nextSibling;while(elm){if(checkTagMatch(elm,tag)){matches.push(elm);}elm=elm.nextSibling;}}else{matches=parentElm.getElementsByTagName(tag);}}function checkTagMatch(element,tag){return(element&&element.tagName&&(tag=="*"||element.tagName.toUpperCase()==tag.toUpperCase()));}return matches;},insertAfter:function(parent,obj,sibling){if(parent&&obj&&sibling&&sibling.nextSibling){parent.insertBefore(obj,sibling.nextSibling);}else{if(parent&&obj){parent.appendChild(obj);}}}};AjaxTCR.util.event={addWindowLoadEvent:function(newFunction){var oldFunction=window.onload;if(typeof window.onload!="function"){window.onload=newFunction;}else{window.onload=function(){if(oldFunction){oldFunction();}newFunction();};}}};AjaxTCR.util.misc={generateUID:function(prefix){if(prefix=="-1"){prefix="";}else{if(!prefix){prefix="AjaxTCR";}}var uniquevalue=new Date().getTime().toString()+Math.floor(Math.random()*100);return prefix+uniquevalue;}};AjaxTCR.onLibraryLoad=function(){if(AjaxTCR.util.DOM.enableDOMShorthand){if(typeof ($id)=="undefined"){$id=AjaxTCR.util.DOM.getElementsById;}if(typeof ($class)=="undefined"){$class=AjaxTCR.util.DOM.getElementsByClassName;}if(typeof ($selector)=="undefined"){$selector=AjaxTCR.util.DOM.getElementsBySelector;}if(typeof ($onload)=="undefined"){$onload=AjaxTCR.util.event.addWindowLoadEvent;}}if(navigator.userAgent.toLowerCase().indexOf("msie")>-1){if(window.location.hash&&window.location.hash.substring(1)!=AjaxTCR.history._currentState){var src=AjaxTCR.history._iframeSrc+"?hash="+window.location.hash.substring(1);}else{var src=AjaxTCR.history._iframeSrc+"?hash=";}document.write('<iframe id="ieFix"  src="'+src+'" style="visibility:hidden;" width="1px" height="1px"></iframe>');}AjaxTCR.template._includeLibrary();};AjaxTCR.onLibraryLoad();
function Queue(options){var self=this;this._queue=new Array();this._current=null;this._options=(options)?options:{};this._play=true;if(this._options.hasOwnProperty("play")){this._play=this._options.play;}}Queue.prototype={add:function(obj,proxy){var qElement={obj:obj,proxy:proxy};this._queue.push(qElement);this.next();},clear:function(){this._queue=new Array();},stop:function(){this._play=false;},done:function(){this._current=null;},play:function(){this._play=true;this.next();},next:function(){if(this._play==false||this._current!=null||this._queue.length==0){return ;}this._current=this._queue.shift();if(this._current.proxy){this._current.proxy.run(this,this._current.obj);}else{this._current.obj.run(this);}}};Queue.prototype.PROXY={};Queue.prototype.PROXY.YUI_ANIM={run:function(queue,yAO){yAO.onComplete.subscribe(function(cQeueue){return function(){cQeueue.done();cQeueue.next();};}(queue));yAO.animate();}};
if(!TankConfigurator){var TankConfigurator={};}TankConfigurator.url=TC_XHR_PAGE;TankConfigurator.request=function(element,action,attribute,selectedItem,callbackFunction,timeoutFunction){this.element=element;this.action=action;this.attribute=attribute;this.selectedItem=selectedItem;this.clearList=null;this.callbackFunction=callbackFunction;this.timeoutFunction=timeoutFunction;this.toPayload=function(){var str="";str+="&selectedItem="+AjaxTCR.data.encodeValue(this.selectedItem);str+="&action="+AjaxTCR.data.encodeValue(this.action);str+="&attribute="+AjaxTCR.data.encodeValue(this.attribute);str+="&clearList="+AjaxTCR.data.encodeValue(this.clearList);return str;};};TankConfigurator.response=function(objResponse){this.attributes={};this.userVars=null;this.hasAttributes=false;this.hasUserVars=false;this.error=null;this.price=null;this.imagePath=null;this.assetSkuList=null;if(objResponse!=null){if(objResponse.responseText!=""&&objResponse.responseText!="undefined"){try{var deserializedResponse=AjaxTCR.data.decodeJSON(objResponse.responseText);this.attributes=deserializedResponse["attributes"];this.accessory=deserializedResponse["accessory"];this.side=deserializedResponse["side"];this.error=deserializedResponse["error"];this.price=deserializedResponse["price"];this.imagePath=deserializedResponse["imagePath"];this.assetSkuList=deserializedResponse["assetSkuList"];this.hasAttributes=true;}catch(e){this.error=e;}}if(objResponse.userVars!=""&&objResponse.userVars!="undefined"){this.hasUserVars=true;this.userVars=objResponse.userVars;}}};TankConfigurator.getAttributes=function(request){if(request==null){return null;}var options={onSuccess:request.callbackFunction,onTimeout:request.timeoutFunction,payload:request.toPayload(),userVars:request,statusIndicator:{progress:{type:"image",imgSrc:THEME_WEB_ROOT+"/images/tc_ajaxload.gif",target:"tcAjaxLoading"}}};return AjaxTCR.comm.queue.add(TankConfigurator.url,options);};TankConfigurator.moreInfoWindow={};TankConfigurator.showMoreInfo=function(messageId,element){TankConfigurator.moreInfoWindow=new Ext.Window({title:TankConfigurator.resources[messageId].title,width:636,height:400,autoScroll:true,modal:true,html:'<div class="moreInfo">'+TankConfigurator.resources[messageId].html+'<div id="close"><a href="javascript:;" onclick="TankConfigurator.moreInfoWindow.hide();"><img src="'+THEME_WEB_ROOT+'/images/close.png" title="Close" alt="Close" /></a></div></div>',bodyStyle:"background: white",animateTarget:element});TankConfigurator.moreInfoWindow.show();};TankConfigurator.scroll=function(divId){var scrollToPosition=YAHOO.util.Dom.getXY(divId)[1];var mode=document.compatMode;var body=document.body;if(mode&&mode.indexOf("CSS")!=-1){body=document.documentElement;}var scrollAnimation=new YAHOO.util.Scroll(body,{scroll:{to:[0,scrollToPosition]}},1,YAHOO.util.Easing.easeOut);return scrollAnimation.animate();};
var tcQueue=new Queue();var CL={};CL.getSelectedPriceTotal=function(){var list=null;var total=0;if(clSelections.hoods.length>0){list=clSelections.hoods;}else{if(clSelections.coverLights.length>0){list=clSelections.coverLights;}else{return total;}}for(var i=0;i<list.length;i++){var id=list[i];total+=(tcCoverLights[id].data.price*tcCoverLights[id].data.quantity);}return total;};CL.getList=function(type){var unList=[];var typeList=[];if(type=="hoods"){typeList=[1850];}else{if(type=="coverLights"){typeList=[1849,1851,1856];}else{if(type=="none"){typeList=[1849,1850,1851,1856];}}}var indexPos=null;for(var id in tcCoverLights){if(parseInt(id)!=id){continue;}indexPos=TankConfigurator.inArray(tcCoverLights[id].data.subType,typeList);if(indexPos>=0){unList.push(id);}}return unList;};var updateCLPrices=function(){var subTypeSelection="none";var selectionPrice=CL.getSelectedPriceTotal();var selections=[];if(isRadioChecked("coverSectionRadio")){subTypeSelection="hoods";selections=clSelections.coverLights;}else{if(isRadioChecked("hoodSectionRadio")){subTypeSelection="coverLights";selections=clSelections.hoods;}else{if(isRadioChecked("noCoverSectionRadio")){subTypeSelection="none";}}}var unList=CL.getList(subTypeSelection);var unListLength=unList.length;for(var i=0;i<unListLength;i++){var id=unList[i];var price=tcCoverLights[id].data.price;var newPrice=price-selectionPrice;var divNode=tcCoverLights[id].element.parentNode;var descNode=YAHOO.util.Dom.getElementsByClassName("gray","p",divNode)[0];if(newPrice>=0){descNode.innerHTML="Add $"+newPrice.toFixed(2);}else{descNode.innerHTML="Subtract $"+Math.abs(newPrice).toFixed(2);}}if(selections.length>0){var length=selections.length;for(var i=0;i<length;i++){var id=selections[i];var link=tcCoverLights[id].element;}}};var TCRenderOpenSection=function(sectionId){return ;var sectionDiv=document.getElementById(sectionId);YAHOO.util.Dom.setStyle(sectionDiv,"position","absolute");YAHOO.util.Dom.setStyle(sectionDiv,"visibility","hidden");YAHOO.util.Dom.setStyle(sectionDiv,"height","");YAHOO.util.Dom.setStyle(sectionDiv,"display","block");var origHeight=sectionDiv.offsetHeight;YAHOO.util.Dom.setStyle(sectionDiv,"display","none");YAHOO.util.Dom.setStyle(sectionDiv,"visibility","");YAHOO.util.Dom.setStyle(sectionDiv,"position","");YAHOO.util.Dom.setStyle(sectionDiv,"margin","0px");YAHOO.util.Dom.setStyle(sectionDiv,"padding","0px");var blankDiv=document.createElement("div");blankDiv.id="blankDiv";blankDiv.style.overflow="hidden";blankDiv.style.display="none";var section=new YAHOO.util.Anim(sectionId,{height:{from:0,to:origHeight}},1.9,YAHOO.util.Easing.easeOut);section.onStart.subscribe(function(sid){return function(){YAHOO.util.Dom.setStyle(sid,"display","block");YAHOO.util.Dom.setStyle(sid,"margin","");YAHOO.util.Dom.setStyle(sid,"padding","");};}(sectionId));section.onComplete.subscribe(function(sid){return function(){};}(sectionId));tcQueue.add(section,tcQueue.PROXY.YUI_ANIM);};var TCRenderCloseSection=function(sectionId,resetFunc){var section=new YAHOO.util.Anim(sectionId,{height:{to:0}},0.2,YAHOO.util.Easing.easeIn);section.onComplete.subscribe(function(){YAHOO.util.Dom.setStyle(sectionId,"display","none");YAHOO.util.Dom.setStyle(sectionId,"height","");});if(resetFunc){section.onComplete.subscribe(resetFunc);}tcQueue.add(section,tcQueue.PROXY.YUI_ANIM);};function renderAccessoryCoverLights(accessoryData){var selectionElement=accessoryData.userVars.element;var clearList=accessoryData.userVars.clearList;if(clearList==null){clearList=[];}for(var i=0;i<clearList.length;i++){var id=clearList[i];var product=tcCoverLights[id];var descDiv=YAHOO.util.Dom.getNextSibling(product.element);var priceElem=YAHOO.util.Dom.getElementsByClassName("gray","p",descDiv)[0];priceElem.innerHTML="$"+product.data.price;}if(selectionElement.id=="noCoverSectionRadio"||selectionElement.id=="hoodSectionRadio"||selectionElement.id=="coverSectionRadio"){updateCLPrices();return ;}var params=selectionElement.params;var id=params.selectedItem;var selecting=null;if(!YAHOO.util.Dom.hasClass(selectionElement,"selected")){var descDiv=YAHOO.util.Dom.getNextSibling(selectionElement);var priceElem=YAHOO.util.Dom.getElementsByClassName("gray","p",descDiv)[0];var price=tcCoverLights[id].data.price;var priceStrPrefix=(price>=0)?"Add $":"Subtract $";priceElem.innerHTML=priceStrPrefix+price;if(parseInt(tcCoverLights[id].data.quantity)>1){priceElem.innerHTML+=" ea. - "+tcCoverLights[id].data.quantity+" Required";}selecting=false;}else{if(YAHOO.util.Dom.hasClass(selectionElement,"selected")){var descDiv=YAHOO.util.Dom.getNextSibling(selectionElement);var priceElem=YAHOO.util.Dom.getElementsByClassName("gray","p",descDiv)[0];priceElem.innerHTML="(Included in quote)";selecting=true;}}var product=tcCoverLights[id].data;if(selecting==true&&product){if(product.subType==1856&&product.requires.length>0){var requireList=new Array(product.requires).shift();var warningMessage="";var newList=[];var x=null;while(requireList.length>0){newList.push(parseInt(requireList.shift()));}for(var i=0;i<newList.length;i++){var cid=newList[i];if(parseInt(cid)!=cid){continue;}var product=tcCoverLights[cid].data;if(TankConfigurator.inArray(product.id,clSelections.coverLights)==-1){warningMessage+=product.name+"<br />";}}if(warningMessage!=""){Ext.MessageBox.show({title:"Warning",msg:"This item requires:<br />"+warningMessage,buttons:Ext.MessageBox.OK,animEl:selectionElement,icon:Ext.MessageBox.WARNING});}}}if(selecting===false&&product){var list=clSelections.coverLights;for(var i=0;i<list.length;i++){var sId=list[i];var index=TankConfigurator.inArray(id,tcCoverLights[sId].data.requires);if(index!=-1){Ext.MessageBox.show({title:"Warning",msg:"This item is required by other selected product(s)",buttons:Ext.MessageBox.OK,icon:Ext.MessageBox.WARNING});}}}updateCLPrices();}function renderAccessories(accessoryData){var attribute=accessoryData.userVars.attribute;var hasCheckBox=false;var limitSelection=false;var selectionElement=accessoryData.userVars.element;renderSideDetails(accessoryData.side,accessoryData.imagePath,accessoryData.assetSkuList);switch(attribute){case"stands":targetSectionId="accessoryTankStands";limitSelection=true;break;case"canopies":targetSectionId="accessoryTankCanopies";limitSelection=true;break;case"covers":renderAccessoryCoverLights(accessoryData);return ;case"filters":targetSectionId="accessoryTankFilters";hasCheckBox=true;break;default:alert("ERROR: No Selection Type");return ;}var targetSection=document.getElementById(targetSectionId);if(targetSection==null){alert('ERROR: target section "'+targetSectionId+'" does not exist');return ;}var getAccessoryPrice=function(cid,type,originalPrice){var aList=accessoryData.accessory[type];for(var i=0;i<aList.length;i++){var product=aList[i];if(parseInt(product.id)==cid){if(originalPrice){return parseFloat(product.originalPrice);}else{return parseFloat(product.price);}}}return 0;};var getSelectedPrice=function(nodes,attribute,selectedElement){for(var i=0;i<nodes.length;i++){var params=YAHOO.util.Dom.getFirstChild(nodes[i]).params;if(params.selectedItem==selectionElement.params.selectedItem){return getAccessoryPrice(parseInt(params.selectedItem),attribute,true);}}};if(attribute=="stands"||attribute=="canopies"){var nodes=YAHOO.util.Dom.getChildrenBy(targetSection,function(node){if(node.nodeName.toLowerCase()=="div"&&node.className!="clearFix"){return true;}});for(var i=0;i<nodes.length;i++){var params=YAHOO.util.Dom.getFirstChild(nodes[i]).params;if(params.selectedItem=="clear"){var selectedPrice=getSelectedPrice(nodes,attribute,selectionElement.params.selectedItem);if(selectedPrice==0){YAHOO.util.Dom.getLastChild(nodes[i]).innerHTML="";}else{YAHOO.util.Dom.getLastChild(nodes[i]).innerHTML="Subtract $"+Math.abs(selectedPrice);}}else{if(params.selectedItem==selectionElement.params.selectedItem){YAHOO.util.Dom.getLastChild(nodes[i]).innerHTML="(Included in quote)";}else{var price=getAccessoryPrice(parseInt(params.selectedItem),attribute);var priceStrPrefix=(price>=0)?"Add $":"Subtract $";YAHOO.util.Dom.getLastChild(nodes[i]).innerHTML=priceStrPrefix+Math.abs(price);}}}}if(limitSelection){var children=YAHOO.util.Dom.getElementsByClassName("selected","a",targetSection);YAHOO.util.Dom.removeClass(children,"selected");YAHOO.util.Dom.addClass(selectionElement,"selected");}if(hasCheckBox){var checkBox=YAHOO.util.Dom.getPreviousSibling(selectionElement);var priceSpan=YAHOO.util.Dom.getElementsByClassName("gray","p",selectionElement.parentNode)[0];if(YAHOO.util.Dom.hasClass(selectionElement,"selected")){YAHOO.util.Dom.removeClass(selectionElement,"selected");checkBox.checked="";var price=getAccessoryPrice(parseInt(selectionElement.params.selectedItem),attribute);var priceStrPrefix=(price>=0)?"Add $":"Subtract $";priceSpan.innerHTML=priceStrPrefix+price;}else{YAHOO.util.Dom.addClass(selectionElement,"selected");checkBox.checked="checked";priceSpan.innerHTML="(Included in quote)";}}updateCLPrices();}TCRenderOpenSection=function(sectionId){var slideOpen=function(elId){return{run:function(queue){Effect.SlideDown(elId,{duration:0.45,afterFinish:function(obj){Effect.ScrollTo(obj.element);queue.done();queue.next();}});}};}(sectionId);tcQueue.add(slideOpen);};TCRenderCloseSection=function(sectionId,resetFunc){var slideClose=function(elId){return{run:function(queue){Effect.SlideUp(elId,{duration:0.3,afterFinish:function(obj){queue.done();queue.next();}});}};}(sectionId);tcQueue.add(slideClose);};function renderAttributes(attributesData){var attributes=attributesData.attributes;var attribute=null;var selectionType=attributesData.userVars.attribute;var selectionElement=attributesData.userVars.element;var targetSectionId="";var displayFormat="imageLink";var forceReturn=false;var children=YAHOO.util.Dom.getChildren(selectionElement.parentNode);YAHOO.util.Dom.removeClass(children,"selected");YAHOO.util.Dom.addClass(selectionElement,"selected");switch(selectionType){case"shapes":targetSectionId="baseTankSize";displayFormat="radioLink";attribute="sizes";break;case"sizes":targetSectionId="baseTankOverflow";attribute="overflow";displayFormat="radioLink";break;case"overflow":attribute="frameFinish";targetSectionId="baseTankFramefinish";break;case"frameFinish":targetSectionId="baseTankLight";attribute="light";displayFormat="radioLink";break;case"light":targetSectionId="baseTankLight";displayFormat="radioLink";attribute="light";break;default:alert("ERROR: No Selection Type");return ;}renderSideDetails(attributesData.side,attributesData.imagePath,attributesData.assetSkuList);var resetSection=function(rSectionId,skipClose){if(skipClose==true){return ;}var targetSection=document.getElementById(rSectionId);var gutSection=function(rSection){return function(){var firstChild=YAHOO.util.Dom.getFirstChild(rSection);rSection.removeChild(firstChild);var clearFix=YAHOO.util.Dom.getElementsByClassName("clearFix",null,rSection).shift();if(clearFix){clearFix=rSection.removeChild(clearFix);}rSection.innerHTML="";var children=YAHOO.util.Dom.getChildren(rSection);rSection.appendChild(firstChild);if(clearFix){rSection.appendChild(clearFix);}};}(targetSection);if(targetSection.style.display!="none"){(function(s,gutter){TCRenderCloseSection(s);tcQueue.add({run:function(queue){gutter();queue.done();queue.next();}});})(rSectionId,gutSection);}else{gutSection();targetSection.style.display="none";}};switch(targetSectionId){case"baseTankSize":resetSection("baseTankSize");case"baseTankOverflow":resetSection("baseTankOverflow");case"baseTankFramefinish":resetSection("baseTankFramefinish");case"baseTankLight":if(targetSectionId=="baseTankLight"&&selectionType=="light"){resetSection("baseTankLight",true);}else{resetSection("baseTankLight",false);}}var data=attributes[attribute];if(attribute=="sizes"){var ofLength=0;for(var ofName in data){ofLength++;}if(ofLength==1){attribute="overflow";targetSectionId="baseTankOverflow";data=attributes[attribute];displayFormat="radioLink";}}if(attribute=="overflow"){var ofLength=0;for(var ofName in data){ofLength++;}if(ofLength==1){attribute="frameFinish";targetSectionId="baseTankFramefinish";data=attributes[attribute];displayFormat="imageLink";}}if(attribute=="frameFinish"){var ofLength=0;for(var ofName in data){ofLength++;}if(ofLength==1){attribute="light";targetSectionId="baseTankLight";data=attributes[attribute];displayFormat="radioLink";}}var targetSection=document.getElementById(targetSectionId);if(targetSection==null){return ;}if(attribute=="light"&&data.length==0){return ;}if(targetSectionId=="baseTankLight"&&selectionType=="light"){return ;}var setSectionContent=function(targetSection){return function(){var clearFix=YAHOO.util.Dom.getElementsByClassName("clearFix",null,targetSection).shift();if(clearFix){clearFix=targetSection.removeChild(clearFix);}for(var name in data){var item=data[name];if(displayFormat=="radioLink"){var label=document.createElement("label");var link=document.createElement("a");var radio=document.createElement("input");radio.type="radio";radio.id=item.id;radio.value=item.id;radio.name=attribute;targetSection.appendChild(radio);YAHOO.util.Event.addListener(radio,"click",linkHandler(link,radio,true,targetSection));label.setAttribute("for",item.id);link.href=TC_XHR_PAGE+(TC_XHR_PAGE.indexOf("?")?"&":"?")+"action=base&attribute="+attribute+"&selectedItem="+item.id;link.className="radioLink";if(attribute=="sizes"){link.innerHTML=item["longDesc"];}else{if(attribute=="overflow"){link.innerHTML=item["desc"];}else{if(typeof link.innerText!="undefined"){link.innerText=name;}else{link.textContent=name;}}}label.appendChild(link);targetSection.appendChild(label);YAHOO.util.Event.addListener(link,"click",linkHandler(link,radio,false,targetSection));targetSection.appendChild(document.createElement("br"));}else{if(displayFormat=="imageLink"){var link=document.createElement("a");link.href=TC_XHR_PAGE+(TC_XHR_PAGE.indexOf("?")?"&":"?")+"action=base&attribute="+attribute+"&selectedItem="+item.id;var itemImage=document.createElement("img");itemImage.src=THEME_WEB_ROOT+item.path;link.appendChild(itemImage);var textNode=document.createTextNode(name);link.appendChild(textNode);targetSection.appendChild(link);YAHOO.util.Event.addListener(link,"click",linkHandler(link));}}}if(clearFix){targetSection.appendChild(clearFix);}TCRenderOpenSection(targetSection.id);};}(targetSection);tcQueue.add({run:function(setter){return function(queue){setter();queue.done();queue.next();};}(setSectionContent)});}function renderSideDetails(details,imagePath,skuList){var detailCount=details.length;var tcSideImage=document.getElementById("tcSideImage");var tcSideDetails=document.getElementById("tcSideDetails");var isAcc=false;var additionalFeatures=null;if(imagePath!="undefined"&&imagePath!=""){tcSideImage.firstChild.src=imagePath;}if(document.getElementById("skuList")){document.getElementById("skuList").innerHTML=skuList;}tcSideDetails.innerHTML="";for(var i=0;i<detailCount;i++){var detail=details[i];var title=document.createElement("span");if(detail.isAcc==true&&isAcc==false){isAcc=true;additionalFeatures=document.createElement("div");additionalFeatures.className="additionalFeatures";var strong=document.createElement("strong");strong.appendChild(document.createTextNode("Additional Features"));additionalFeatures.appendChild(strong);}title.className="title";title.style.display="block";title.appendChild(document.createTextNode(detail.title));if(detail.isAcc==true){additionalFeatures.appendChild(title);}else{tcSideDetails.appendChild(title);}var name=document.createElement("span");if(detail.longDesc+""!="undefined"){name.innerHTML=detail.longDesc;}else{name.appendChild(document.createTextNode(detail.name));}if(detail.isAcc==true){additionalFeatures.appendChild(name);}else{tcSideDetails.appendChild(name);}}if(additionalFeatures!=null){tcSideDetails.appendChild(additionalFeatures);}}
TankConfigurator.inArray=function(needle,hayStack){var length=hayStack.length;for(var i=0;i<length;i++){if(hayStack[i]==needle){return i;}}return -1;};var setRadioButton=function(buttonId,state){var el=document.getElementById(buttonId);if(el){el.checked=state;}};var isRadioChecked=function(id){var el=document.getElementById(id);if(el){return(el.checked==true)?true:false;}};var tcCoverLights=[];var clSelections={"hoods":[],"coverLights":[]};function selectionHandler(response){var configuratorResponse=new TankConfigurator.response(response);var loadIcon=document.getElementById("tcAjaxLoading");loadIcon.parentNode.removeChild(loadIcon);document.getElementById("nullDiv").appendChild(loadIcon);if(configuratorResponse.error!=null){alert("There was an error communicating with the server. The response was: "+configuratorResponse.error);}else{if(configuratorResponse.price!=null&&configuratorResponse.price!=0){var tankPrice=document.getElementById("tcPrice");tankPrice.innerHTML="$"+configuratorResponse.price;var nextButton=document.getElementById("nextStepButton");if(nextButton){document.getElementById("tcReset").style.display="block";nextButton.style.display="";}}else{document.getElementById("tcPrice").innerHTML="TBD";var nextButton=document.getElementById("nextStepButton");if(nextButton){nextButton.style.display="none";}}if(configuratorResponse.userVars.action=="base"){renderAttributes(configuratorResponse);}else{if(configuratorResponse.userVars.action=="accessory"){renderAccessories(configuratorResponse);}}}}function linkHandler(element,targetButton,hasButton,section,hasMulti){return function(e){var link=element;var linkSection=section;var buttonElement=targetButton;var isButton=hasButton;var list=link.href.split(/[\?&]/);var params={};for(i=0;i<list.length;i++){var pair=list[i].split(/=/);params[pair[0]]=pair[1];}link.params=params;if(TankConfigurator.inArray(params.attribute,["stands","canopies"])!=-1){if(YAHOO.util.Dom.hasClass(link,"selected")){YAHOO.util.Event.stopEvent(e);return false;}}if(hasMulti!=true&&section&&buttonElement){var children=section.getElementsByTagName("input");for(var i=0;i<children.length;i++){children[i].checked="";}buttonElement.checked=true;}if(section){ajaxLoader=document.getElementById("tcAjaxLoading");ajaxLoader.parentNode.removeChild(ajaxLoader);section.appendChild(ajaxLoader);}try{var request=new TankConfigurator.request();request.element=element;request.action=params.action;request.attribute=params.attribute;request.selectedItem=params.selectedItem;request.callbackFunction=selectionHandler;TankConfigurator.getAttributes(request);}catch(exc){console.log(exc.message);}if(!isButton){YAHOO.util.Event.stopEvent(e);return false;}else{return true;}};}function initSection(sectionId,hasRadio,hasCheckBox){var section=document.getElementById(sectionId);if(section!=null){var sectionLinks=section.getElementsByTagName("a");for(i=0;i<sectionLinks.length;i++){if(typeof sectionLinks[i].innerText!="undefined"&&sectionLinks[i].innerText=="more info"){continue;}else{if(sectionLinks[i].textContent=="more info"){continue;}else{var list=sectionLinks[i].href.split(/[\?&]/);var params={};for(var j=0;j<list.length;j++){var pair=list[j].split(/=/);params[pair[0]]=pair[1];}sectionLinks[i].params=params;if(hasCheckBox==true){var check=YAHOO.util.Dom.getPreviousSibling(sectionLinks[i]);YAHOO.util.Event.addListener(check,"click",linkHandler(sectionLinks[i],check,true,section,true));YAHOO.util.Event.addListener(sectionLinks[i],"click",linkHandler(sectionLinks[i],check,false,section,true));}else{if(hasRadio==true){var inputId=sectionLinks[i].parentNode.attributes["for"].value;var radio=document.getElementById(inputId);YAHOO.util.Event.addListener(radio,"click",linkHandler(sectionLinks[i],radio,true,section));YAHOO.util.Event.addListener(sectionLinks[i],"click",linkHandler(sectionLinks[i],radio,false,section));}else{YAHOO.util.Event.addListener(sectionLinks[i],"click",linkHandler(sectionLinks[i],null,false,section));}}}}}}}function initCoverLightsSection(){var clData=TC_coverLights();var section=document.getElementById("accessoryTankCovers");var hoodSection=document.getElementById("hoodSection");var coverSection=document.getElementById("coverSection");var noCoverSection=document.getElementById("noCoverSection");var listLength=clData.length;for(var i=0;i<listLength;i++){var product=clData[i];tcCoverLights[parseInt(product.id)]={data:product,element:null,button:null};}var initLinks=function(targetSection,sectionType){var links=targetSection.getElementsByTagName("a");for(var i=0;i<links.length;i++){var list=links[i].href.split(/[&\?]/);var params={};for(var j=0;j<list.length;j++){var pair=list[j].split(/=/);params[pair[0]]=pair[1];}links[i].params=params;if(YAHOO.util.Dom.hasClass(links[i],"selected")){clSelections[sectionType].push(parseInt(params.selectedItem));}var prevNode=YAHOO.util.Dom.getPreviousSibling(links[i]);tcCoverLights[params.selectedItem].element=links[i];tcCoverLights[params.selectedItem].button=prevNode;YAHOO.util.Event.addListener(prevNode,"click",coverLinkHandler(links[i],prevNode,true));YAHOO.util.Event.addListener(links[i],"click",coverLinkHandler(links[i],prevNode,false));}};if(coverSection!=null){initLinks(coverSection,"coverLights");}if(hoodSection!=null){initLinks(hoodSection,"hoods");}YAHOO.util.Event.addListener("noCoverSectionRadio","click",function(){var clearList=[];setRadioButton("hoodSectionRadio",false);setRadioButton("coverSectionRadio",false);setRadioButton("noCoverSectionRadio",true);if(clSelections.coverLights.length>0){clearList=clearList.concat(clearSelections("coverLights"));}if(clSelections.hoods.length>0){clearList=clearList.concat(clearSelections("hoods"));}var request=new TankConfigurator.request();request.element=this;request.action="accessory";request.attribute="covers";request.selectedItem="clear";request.clearList=clearList;request.callbackFunction=selectionHandler;TankConfigurator.getAttributes(request);});YAHOO.util.Event.addListener("hoodSectionRadio","click",function(event){var clearList=[];var selectedItem="clear";var element=this;setRadioButton("hoodSectionRadio",true);setRadioButton("coverSectionRadio",false);setRadioButton("noCoverSectionRadio",false);if(clSelections.coverLights.length>0){clearList=clearList.concat(clearSelections("coverLights"));}if(clSelections.hoods.length>0){clearList=clearList.concat(clearSelections("hoods"));}var hoodProduct=null;for(var p in tcCoverLights){if(parseInt(p)!=p){continue;}if(tcCoverLights[p].data.subType==1850){hoodProduct=tcCoverLights[p];break;}}if(hoodProduct){element=hoodProduct.element;selectedItem=parseInt(hoodProduct.data.id);YAHOO.util.Dom.addClass(hoodProduct.element,"selected");hoodProduct.button.checked=true;clSelections.hoods.push(selectedItem);}var request=new TankConfigurator.request();request.element=element;request.action="accessory";request.attribute="covers";request.selectedItem=selectedItem;request.clearList=clearList;request.callbackFunction=selectionHandler;TankConfigurator.getAttributes(request);});YAHOO.util.Event.addListener("coverSectionRadio","click",function(event){var clearList=[];var selectedItem="clear";var element=this;setRadioButton("hoodSectionRadio",false);setRadioButton("coverSectionRadio",true);setRadioButton("noCoverSectionRadio",false);if(clSelections.coverLights.length>0){clearList=clearList.concat(clearSelections("coverLights"));}if(clSelections.hoods.length>0){clearList=clearList.concat(clearSelections("hoods"));}var request=new TankConfigurator.request();request.element=element;request.action="accessory";request.attribute="covers";request.selectedItem=selectedItem;request.clearList=clearList;request.callbackFunction=selectionHandler;TankConfigurator.getAttributes(request);});}function coverLinkHandler(element,targetElement,hasButton){return function(e){var link=element;var buttonElement=targetElement;var isButton=hasButton;var returnType=true;var clearList=null;if(!isButton){YAHOO.util.Event.stopEvent(e);returnType=false;}ajaxLoader=document.getElementById("tcAjaxLoading");ajaxLoader.parentNode.removeChild(ajaxLoader);document.getElementById("accessoryTankCovers").appendChild(ajaxLoader);var params=link.params;var product=tcCoverLights[params.selectedItem].data;if(product.subType==1850){if(clSelections.coverLights.length>0){clearList=clearSelections("coverLights");setRadioButton("hoodSectionRadio",true);setRadioButton("coverSectionRadio",false);setRadioButton("noCoverSectionRadio",false);}else{if(isRadioChecked("coverSectionRadio")||isRadioChecked("noCoverSectionRadio")){setRadioButton("hoodSectionRadio",true);setRadioButton("coverSectionRadio",false);setRadioButton("noCoverSectionRadio",false);}}var indexPos=TankConfigurator.inArray(params.selectedItem,clSelections.hoods);if(indexPos==-1){clSelections.hoods.push(params.selectedItem);buttonElement.checked="checked";YAHOO.util.Dom.addClass(link,"selected");}else{clSelections.hoods.splice(indexPos,1);buttonElement.checked="";YAHOO.util.Dom.removeClass(link,"selected");}}else{if(product.subType==1849||product.subType==1856||product.subType==1851){if(clSelections.hoods.length>0){clearList=clearSelections("hoods");setRadioButton("hoodSectionRadio",false);setRadioButton("coverSectionRadio",true);setRadioButton("noCoverSectionRadio",false);}else{setRadioButton("noCoverSectionRadio",true);if(isRadioChecked("hoodSectionRadio")||isRadioChecked("noCoverSectionRadio")){setRadioButton("hoodSectionRadio",false);setRadioButton("coverSectionRadio",true);setRadioButton("noCoverSectionRadio",false);}}var indexPos=TankConfigurator.inArray(params.selectedItem,clSelections.coverLights);if(indexPos==-1){clSelections.coverLights.push(params.selectedItem);buttonElement.checked="checked";YAHOO.util.Dom.addClass(link,"selected");}else{clSelections.coverLights.splice(indexPos,1);buttonElement.checked="";YAHOO.util.Dom.removeClass(link,"selected");}}}var request=new TankConfigurator.request();request.element=element;request.action=params.action;request.attribute=params.attribute;request.selectedItem=params.selectedItem;request.clearList=clearList;request.callbackFunction=selectionHandler;TankConfigurator.getAttributes(request);return returnType;};}function clearSelections(type){var selections=clSelections[type];var clearedSelections=[];var length=selections.length;for(var i=0;i<length;i++){var id=selections[i];var product=tcCoverLights[id];var button=product.button;var element=product.element;clearedSelections.push(id);button.checked="";YAHOO.util.Dom.removeClass(element,"selected");}clSelections[type]=[];return clearedSelections;}var initResetLink=function(){var link=document.getElementById("tcReset");YAHOO.util.Event.addListener(link,"click",function(e){var urlSeparator=(TC_XHR_PAGE.indexOf("?")>=0)?"&":"?";var options={onSuccess:function(){window.location=TC_PAGE;}};AjaxTCR.comm.sendRequest(TC_XHR_PAGE+urlSeparator+"action=reset",options);YAHOO.util.Event.stopEvent(e);return false;});};function initCommon(){var nullDiv=document.createElement("DIV");nullDiv.id="nullDiv";nullDiv.style.display="none";document.body.appendChild(nullDiv);ajaxLoader=document.createElement("div");ajaxLoader.id="tcAjaxLoading";nullDiv.appendChild(ajaxLoader);}function initializeStep1(){initSection("baseTankShapes",false);initSection("baseTankSize",true);initSection("baseTankOverflow",true);initSection("baseTankFramefinish",false);initSection("baseTankLight",true);initCommon();initResetLink();}function initializeStep2(){initSection("accessoryTankStands",false);initSection("accessoryTankCanopies",false);initSection("accessoryTankFilters",false,true);if(document.getElementById("accessoryTankCovers").style.display!="none"){initCoverLightsSection();}initCommon();initResetLink();}function initializeStep3(){initCommon();initResetLink();}
Ext={version:"2.0-rc1"};window["undefined"]=window["undefined"];Ext.apply=function(C,D,B){if(B){Ext.apply(C,B);}if(C&&D&&typeof D=="object"){for(var A in D){C[A]=D[A];}}return C;};(function(){var idSeed=0;var ua=navigator.userAgent.toLowerCase();var isStrict=document.compatMode=="CSS1Compat",isOpera=ua.indexOf("opera")>-1,isSafari=(/webkit|khtml/).test(ua),isIE=!isOpera&&ua.indexOf("msie")>-1,isIE7=!isOpera&&ua.indexOf("msie 7")>-1,isGecko=!isSafari&&ua.indexOf("gecko")>-1,isBorderBox=isIE&&!isStrict,isWindows=(ua.indexOf("windows")!=-1||ua.indexOf("win32")!=-1),isMac=(ua.indexOf("macintosh")!=-1||ua.indexOf("mac os x")!=-1),isLinux=(ua.indexOf("linux")!=-1),isSecure=window.location.href.toLowerCase().indexOf("https")===0;if(isIE&&!isIE7){try{document.execCommand("BackgroundImageCache",false,true);}catch(e){}}Ext.apply(Ext,{isStrict:isStrict,isSecure:isSecure,isReady:false,enableGarbageCollector:true,enableListenerCollection:false,SSL_SECURE_URL:"javascript:false",BLANK_IMAGE_URL:"http:/"+"/extjs.com/s.gif",emptyFn:function(){},applyIf:function(o,c){if(o&&c){for(var p in c){if(typeof o[p]=="undefined"){o[p]=c[p];}}}return o;},addBehaviors:function(o){if(!Ext.isReady){Ext.onReady(function(){Ext.addBehaviors(o);});return ;}var cache={};for(var b in o){var parts=b.split("@");if(parts[1]){var s=parts[0];if(!cache[s]){cache[s]=Ext.select(s);}cache[s].on(parts[1],o[b]);}}cache=null;},id:function(el,prefix){prefix=prefix||"ext-gen";el=Ext.getDom(el);var id=prefix+(++idSeed);return el?(el.id?el.id:(el.id=id)):id;},extend:function(){var io=function(o){for(var m in o){this[m]=o[m];}};return function(sb,sp,overrides){if(typeof sp=="object"){overrides=sp;sp=sb;sb=function(){sp.apply(this,arguments);};}var F=function(){},sbp,spp=sp.prototype;F.prototype=spp;sbp=sb.prototype=new F();sbp.constructor=sb;sb.superclass=spp;if(spp.constructor==Object.prototype.constructor){spp.constructor=sp;}sb.override=function(o){Ext.override(sb,o);};sbp.override=io;Ext.override(sb,overrides);return sb;};}(),override:function(origclass,overrides){if(overrides){var p=origclass.prototype;for(var method in overrides){p[method]=overrides[method];}}},namespace:function(){var a=arguments,o=null,i,j,d,rt;for(i=0;i<a.length;++i){d=a[i].split(".");rt=d[0];eval("if (typeof "+rt+' == "undefined"){'+rt+" = {};} o = "+rt+";");for(j=1;j<d.length;++j){o[d[j]]=o[d[j]]||{};o=o[d[j]];}}},urlEncode:function(o){if(!o){return"";}var buf=[];for(var key in o){var ov=o[key],k=encodeURIComponent(key);var type=typeof ov;if(type=="undefined"){buf.push(k,"=&");}else{if(type!="function"&&type!="object"){buf.push(k,"=",encodeURIComponent(ov),"&");}else{if(ov instanceof Array){if(ov.length){for(var i=0,len=ov.length;i<len;i++){buf.push(k,"=",encodeURIComponent(ov[i]===undefined?"":ov[i]),"&");}}else{buf.push(k,"=&");}}}}}buf.pop();return buf.join("");},urlDecode:function(string,overwrite){if(!string||!string.length){return{};}var obj={};var pairs=string.split("&");var pair,name,value;for(var i=0,len=pairs.length;i<len;i++){pair=pairs[i].split("=");name=decodeURIComponent(pair[0]);value=decodeURIComponent(pair[1]);if(overwrite!==true){if(typeof obj[name]=="undefined"){obj[name]=value;}else{if(typeof obj[name]=="string"){obj[name]=[obj[name]];obj[name].push(value);}else{obj[name].push(value);}}}else{obj[name]=value;}}return obj;},each:function(array,fn,scope){if(typeof array.length=="undefined"||typeof array=="string"){array=[array];}for(var i=0,len=array.length;i<len;i++){if(fn.call(scope||array[i],array[i],i,array)===false){return i;}}},combine:function(){var as=arguments,l=as.length,r=[];for(var i=0;i<l;i++){var a=as[i];if(a instanceof Array){r=r.concat(a);}else{if(a.length!==undefined&&!a.substr){r=r.concat(Array.prototype.slice.call(a,0));}else{r.push(a);}}}return r;},escapeRe:function(s){return s.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1");},callback:function(cb,scope,args,delay){if(typeof cb=="function"){if(delay){cb.defer(delay,scope,args||[]);}else{cb.apply(scope,args||[]);}}},getDom:function(el){if(!el||!document){return null;}return el.dom?el.dom:(typeof el=="string"?document.getElementById(el):el);},getDoc:function(){return Ext.get(document);},getBody:function(){return Ext.get(document.body||document.documentElement);},getCmp:function(id){return Ext.ComponentMgr.get(id);},num:function(v,defaultValue){if(typeof v!="number"){return defaultValue;}return v;},destroy:function(){for(var i=0,a=arguments,len=a.length;i<len;i++){var as=a[i];if(as){if(as.dom){as.removeAllListeners();as.remove();continue;}if(typeof as.destroy=="function"){as.destroy();}}}},removeNode:isIE?function(){var d;return function(n){if(n){d=d||document.createElement("div");d.appendChild(n);d.innerHTML="";}};}():function(n){if(n&&n.parentNode){n.parentNode.removeChild(n);}},type:function(o){if(o===undefined||o===null){return false;}if(o.htmlElement){return"element";}var t=typeof o;if(t=="object"&&o.nodeName){switch(o.nodeType){case 1:return"element";case 3:return(/\S/).test(o.nodeValue)?"textnode":"whitespace";}}if(t=="object"||t=="function"){switch(o.constructor){case Array:return"array";case RegExp:return"regexp";}if(typeof o.length=="number"&&typeof o.item=="function"){return"nodelist";}}return t;},isEmpty:function(v,allowBlank){return v===null||v===undefined||(!allowBlank?v==="":false);},value:function(v,defaultValue,allowBlank){return Ext.isEmpty(v,allowBlank)?defaultValue:v;},isOpera:isOpera,isSafari:isSafari,isIE:isIE,isIE6:isIE&&!isIE7,isIE7:isIE7,isGecko:isGecko,isBorderBox:isBorderBox,isLinux:isLinux,isWindows:isWindows,isMac:isMac,isAir:!!window.htmlControl,useShims:((isIE&&!isIE7)||(isGecko&&isMac))});Ext.ns=Ext.namespace;})();Ext.ns("Ext","Ext.util","Ext.grid","Ext.dd","Ext.tree","Ext.data","Ext.form","Ext.menu","Ext.state","Ext.lib","Ext.layout","Ext.app","Ext.ux");Ext.apply(Function.prototype,{createCallback:function(){var A=arguments;var B=this;return function(){return B.apply(window,A);};},createDelegate:function(C,B,A){var D=this;return function(){var F=B||arguments;if(A===true){F=Array.prototype.slice.call(arguments,0);F=F.concat(B);}else{if(typeof A=="number"){F=Array.prototype.slice.call(arguments,0);var E=[A,0].concat(B);Array.prototype.splice.apply(F,E);}}return D.apply(C||window,F);};},defer:function(C,E,B,A){var D=this.createDelegate(E,B,A);if(C){return setTimeout(D,C);}D();return 0;},createSequence:function(B,A){if(typeof B!="function"){return this;}var C=this;return function(){var D=C.apply(this||window,arguments);B.apply(A||this||window,arguments);return D;};},createInterceptor:function(B,A){if(typeof B!="function"){return this;}var C=this;return function(){B.target=this;B.method=C;if(B.apply(A||this||window,arguments)===false){return ;}return C.apply(this||window,arguments);};}});Ext.applyIf(String,{escape:function(A){return A.replace(/('|\\)/g,"\\$1");},leftPad:function(D,B,C){var A=new String(D);if(C===null||C===undefined||C===""){C=" ";}while(A.length<B){A=C+A;}return A;},format:function(B){var A=Array.prototype.slice.call(arguments,1);return B.replace(/\{(\d+)\}/g,function(C,D){return A[D];});}});String.prototype.toggle=function(B,A){return this==B?A:B;};String.prototype.trim=function(){var A=/^\s+|\s+$/g;return function(){return this.replace(A,"");};}();Ext.applyIf(Number.prototype,{constrain:function(B,A){return Math.min(Math.max(this,B),A);}});Ext.applyIf(Array.prototype,{indexOf:function(C){for(var B=0,A=this.length;B<A;B++){if(this[B]==C){return B;}}return -1;},remove:function(B){var A=this.indexOf(B);if(A!=-1){this.splice(A,1);}return this;}});Date.prototype.getElapsed=function(A){return Math.abs((A||new Date()).getTime()-this.getTime());};(function(){var B;Ext.lib.Dom={getViewWidth:function(E){return E?this.getDocumentWidth():this.getViewportWidth();},getViewHeight:function(E){return E?this.getDocumentHeight():this.getViewportHeight();},getDocumentHeight:function(){var E=(document.compatMode!="CSS1Compat")?document.body.scrollHeight:document.documentElement.scrollHeight;return Math.max(E,this.getViewportHeight());},getDocumentWidth:function(){var E=(document.compatMode!="CSS1Compat")?document.body.scrollWidth:document.documentElement.scrollWidth;return Math.max(E,this.getViewportWidth());},getViewportHeight:function(){if(Ext.isIE){return Ext.isStrict?document.documentElement.clientHeight:document.body.clientHeight;}else{return self.innerHeight;}},getViewportWidth:function(){if(Ext.isIE){return Ext.isStrict?document.documentElement.clientWidth:document.body.clientWidth;}else{return self.innerWidth;}},isAncestor:function(F,G){F=Ext.getDom(F);G=Ext.getDom(G);if(!F||!G){return false;}if(F.contains&&!Ext.isSafari){return F.contains(G);}else{if(F.compareDocumentPosition){return !!(F.compareDocumentPosition(G)&16);}else{var E=G.parentNode;while(E){if(E==F){return true;}else{if(!E.tagName||E.tagName.toUpperCase()=="HTML"){return false;}}E=E.parentNode;}return false;}}},getRegion:function(E){return Ext.lib.Region.getRegion(E);},getY:function(E){return this.getXY(E)[1];},getX:function(E){return this.getXY(E)[0];},getXY:function(G){var F,K,M,N,J=(document.body||document.documentElement);G=Ext.getDom(G);if(G==J){return[0,0];}if(G.getBoundingClientRect){M=G.getBoundingClientRect();N=C(document).getScroll();return[M.left+N.left,M.top+N.top];}var O=0,L=0;F=G;var E=C(G).getStyle("position")=="absolute";while(F){O+=F.offsetLeft;L+=F.offsetTop;if(!E&&C(F).getStyle("position")=="absolute"){E=true;}if(Ext.isGecko){K=C(F);var P=parseInt(K.getStyle("borderTopWidth"),10)||0;var H=parseInt(K.getStyle("borderLeftWidth"),10)||0;O+=H;L+=P;if(F!=G&&K.getStyle("overflow")!="visible"){O+=H;L+=P;}}F=F.offsetParent;}if(Ext.isSafari&&E){O-=J.offsetLeft;L-=J.offsetTop;}if(Ext.isGecko&&!E){var I=C(J);O+=parseInt(I.getStyle("borderLeftWidth"),10)||0;L+=parseInt(I.getStyle("borderTopWidth"),10)||0;}F=G.parentNode;while(F&&F!=J){if(!Ext.isOpera||(F.tagName!="TR"&&C(F).getStyle("display")!="inline")){O-=F.scrollLeft;L-=F.scrollTop;}F=F.parentNode;}return[O,L];},setXY:function(E,F){E=Ext.fly(E,"_setXY");E.position();var G=E.translatePoints(F);if(F[0]!==false){E.dom.style.left=G.left+"px";}if(F[1]!==false){E.dom.style.top=G.top+"px";}},setX:function(F,E){this.setXY(F,[E,false]);},setY:function(E,F){this.setXY(E,[false,F]);}};Ext.lib.Event=function(){var F=false;var G=[];var K=[];var I=0;var H=[];var E=0;var J=null;return{POLL_RETRYS:200,POLL_INTERVAL:20,EL:0,TYPE:1,FN:2,WFN:3,OBJ:3,ADJ_SCOPE:4,_interval:null,startInterval:function(){if(!this._interval){var L=this;var M=function(){L._tryPreloadAttach();};this._interval=setInterval(M,this.POLL_INTERVAL);}},onAvailable:function(N,L,O,M){H.push({id:N,fn:L,obj:O,override:M,checkReady:false});I=this.POLL_RETRYS;this.startInterval();},addListener:function(Q,M,P){Q=Ext.getDom(Q);if(!Q||!P){return false;}if("unload"==M){K[K.length]=[Q,M,P];return true;}var O=function(R){return typeof Ext!="undefined"?P(Ext.lib.Event.getEvent(R)):false;};var L=[Q,M,P,O];var N=G.length;G[N]=L;this.doAdd(Q,M,O,false);return true;},removeListener:function(S,O,R){var Q,N;S=Ext.getDom(S);if(!R){return this.purgeElement(S,false,O);}if("unload"==O){for(Q=0,N=K.length;Q<N;Q++){var M=K[Q];if(M&&M[0]==S&&M[1]==O&&M[2]==R){K.splice(Q,1);return true;}}return false;}var L=null;var P=arguments[3];if("undefined"==typeof P){P=this._getCacheIndex(S,O,R);}if(P>=0){L=G[P];}if(!S||!L){return false;}this.doRemove(S,O,L[this.WFN],false);delete G[P][this.WFN];delete G[P][this.FN];G.splice(P,1);return true;},getTarget:function(N,M){N=N.browserEvent||N;var L=N.target||N.srcElement;return this.resolveTextNode(L);},resolveTextNode:function(L){if(Ext.isSafari&&L&&3==L.nodeType){return L.parentNode;}else{return L;}},getPageX:function(M){M=M.browserEvent||M;var L=M.pageX;if(!L&&0!==L){L=M.clientX||0;if(Ext.isIE){L+=this.getScroll()[1];}}return L;},getPageY:function(L){L=L.browserEvent||L;var M=L.pageY;if(!M&&0!==M){M=L.clientY||0;if(Ext.isIE){M+=this.getScroll()[0];}}return M;},getXY:function(L){L=L.browserEvent||L;return[this.getPageX(L),this.getPageY(L)];},getRelatedTarget:function(M){M=M.browserEvent||M;var L=M.relatedTarget;if(!L){if(M.type=="mouseout"){L=M.toElement;}else{if(M.type=="mouseover"){L=M.fromElement;}}}return this.resolveTextNode(L);},getTime:function(N){N=N.browserEvent||N;if(!N.time){var M=new Date().getTime();try{N.time=M;}catch(L){this.lastError=L;return M;}}return N.time;},stopEvent:function(L){this.stopPropagation(L);this.preventDefault(L);},stopPropagation:function(L){L=L.browserEvent||L;if(L.stopPropagation){L.stopPropagation();}else{L.cancelBubble=true;}},preventDefault:function(L){L=L.browserEvent||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){L=L.browserEvent||L;return L.charCode||L.keyCode||0;},_getCacheIndex:function(Q,N,P){for(var O=0,M=G.length;O<M;++O){var L=G[O];if(L&&L[this.FN]==P&&L[this.EL]==Q&&L[this.TYPE]==N){return O;}}return -1;},elCache:{},getEl:function(L){return document.getElementById(L);},clearCache:function(){},_load:function(M){F=true;var L=Ext.lib.Event;if(Ext.isIE){L.doRemove(window,"load",L._load);}},_tryPreloadAttach:function(){if(this.locked){return false;}this.locked=true;var R=!F;if(!R){R=(I>0);}var Q=[];for(var M=0,L=H.length;M<L;++M){var P=H[M];if(P){var O=this.getEl(P.id);if(O){if(!P.checkReady||F||O.nextSibling||(document&&document.body)){var N=O;if(P.override){if(P.override===true){N=P.obj;}else{N=P.override;}}P.fn.call(N,P.obj);H[M]=null;}}else{Q.push(P);}}}I=(Q.length===0)?0:I-1;if(R){this.startInterval();}else{clearInterval(this._interval);this._interval=null;}this.locked=false;return true;},purgeElement:function(P,Q,N){var R=this.getListeners(P,N);if(R){for(var O=0,L=R.length;O<L;++O){var M=R[O];this.removeListener(P,M.type,M.fn);}}if(Q&&P&&P.childNodes){for(O=0,L=P.childNodes.length;O<L;++O){this.purgeElement(P.childNodes[O],Q,N);}}},getListeners:function(M,R){var P=[],L;if(!R){L=[G,K];}else{if(R=="unload"){L=[K];}else{L=[G];}}for(var O=0;O<L.length;++O){var T=L[O];if(T&&T.length>0){for(var Q=0,S=T.length;Q<S;++Q){var N=T[Q];if(N&&N[this.EL]===M&&(!R||R===N[this.TYPE])){P.push({type:N[this.TYPE],fn:N[this.FN],obj:N[this.OBJ],adjust:N[this.ADJ_SCOPE],index:Q});}}}}return(P.length)?P:null;},_unload:function(S){var R=Ext.lib.Event,P,O,M,L,N;for(P=0,L=K.length;P<L;++P){M=K[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]);K[P]=null;M=null;Q=null;}}K=null;if(G&&G.length>0){O=G.length;while(O){N=O-1;M=G[N];if(M){R.removeListener(M[R.EL],M[R.TYPE],M[R.FN],N);}O=O-1;}M=null;R.clearCache();}R.doRemove(window,"unload",R._unload);},getScroll:function(){var L=document.documentElement,M=document.body;if(L&&(L.scrollTop||L.scrollLeft)){return[L.scrollTop,L.scrollLeft];}else{if(M){return[M.scrollTop,M.scrollLeft];}else{return[0,0];}}},doAdd:function(){if(window.addEventListener){return function(O,M,N,L){O.addEventListener(M,N,(L));};}else{if(window.attachEvent){return function(O,M,N,L){O.attachEvent("on"+M,N);};}else{return function(){};}}}(),doRemove:function(){if(window.removeEventListener){return function(O,M,N,L){O.removeEventListener(M,N,(L));};}else{if(window.detachEvent){return function(N,L,M){N.detachEvent("on"+L,M);};}else{return function(){};}}}()};}();var D=Ext.lib.Event;D.on=D.addListener;D.un=D.removeListener;if(document&&document.body){D._load();}else{D.doAdd(window,"load",D._load);}D.doAdd(window,"unload",D._unload);D._tryPreloadAttach();Ext.lib.Ajax={request:function(K,I,E,J,F){if(F){var G=F.headers;if(G){for(var H in G){if(G.hasOwnProperty(H)){this.initHeader(H,G[H],false);}}}if(F.xmlData){this.initHeader("Content-Type","text/xml",false);K="POST";J=F.xmlData;}else{if(F.jsonData){this.initHeader("Content-Type","text/javascript",false);K="POST";J=typeof F.jsonData=="object"?Ext.encode(F.jsonData):F.jsonData;}}}return this.asyncRequest(K,I,E,J);},serializeForm:function(F){if(typeof F=="string"){F=(document.getElementById(F)||document.forms[F]);}var G,E,H,J,K="",M=false;for(var L=0;L<F.elements.length;L++){G=F.elements[L];J=F.elements[L].disabled;E=F.elements[L].name;H=F.elements[L].value;if(!J&&E){switch(G.type){case"select-one":case"select-multiple":for(var I=0;I<G.options.length;I++){if(G.options[I].selected){if(Ext.isIE){K+=encodeURIComponent(E)+"="+encodeURIComponent(G.options[I].attributes["value"].specified?G.options[I].value:G.options[I].text)+"&";}else{K+=encodeURIComponent(E)+"="+encodeURIComponent(G.options[I].hasAttribute("value")?G.options[I].value:G.options[I].text)+"&";}}}break;case"radio":case"checkbox":if(G.checked){K+=encodeURIComponent(E)+"="+encodeURIComponent(H)+"&";}break;case"file":case undefined:case"reset":case"button":break;case"submit":if(M==false){K+=encodeURIComponent(E)+"="+encodeURIComponent(H)+"&";M=true;}break;default:K+=encodeURIComponent(E)+"="+encodeURIComponent(H)+"&";break;}}}K=K.substr(0,K.length-1);return K;},headers:{},hasHeaders:false,useDefaultHeader:true,defaultPostHeader:"application/x-www-form-urlencoded",useDefaultXhrHeader:true,defaultXhrHeader:"XMLHttpRequest",hasDefaultHeaders:true,defaultHeaders:{},poll:{},timeout:{},pollInterval:50,transactionId:0,setProgId:function(E){this.activeX.unshift(E);},setDefaultPostHeader:function(E){this.useDefaultHeader=E;},setDefaultXhrHeader:function(E){this.useDefaultXhrHeader=E;},setPollingInterval:function(E){if(typeof E=="number"&&isFinite(E)){this.pollInterval=E;}},createXhrObject:function(I){var H,E;try{E=new XMLHttpRequest();H={conn:E,tId:I};}catch(G){for(var F=0;F<this.activeX.length;++F){try{E=new ActiveXObject(this.activeX[F]);H={conn:E,tId:I};break;}catch(G){}}}finally{return H;}},getConnectionObject:function(){var F;var G=this.transactionId;try{F=this.createXhrObject(G);if(F){this.transactionId++;}}catch(E){}finally{return F;}},asyncRequest:function(I,F,H,E){var G=this.getConnectionObject();if(!G){return null;}else{G.conn.open(I,F,true);if(this.useDefaultXhrHeader){if(!this.defaultHeaders["X-Requested-With"]){this.initHeader("X-Requested-With",this.defaultXhrHeader,true);}}if(E&&this.useDefaultHeader){this.initHeader("Content-Type",this.defaultPostHeader);}if(this.hasDefaultHeaders||this.hasHeaders){this.setHeader(G);}this.handleReadyState(G,H);G.conn.send(E||null);return G;}},handleReadyState:function(F,G){var E=this;if(G&&G.timeout){this.timeout[F.tId]=window.setTimeout(function(){E.abort(F,G,true);},G.timeout);}this.poll[F.tId]=window.setInterval(function(){if(F.conn&&F.conn.readyState==4){window.clearInterval(E.poll[F.tId]);delete E.poll[F.tId];if(G&&G.timeout){window.clearTimeout(E.timeout[F.tId]);delete E.timeout[F.tId];}E.handleTransactionResponse(F,G);}},this.pollInterval);},handleTransactionResponse:function(I,J,E){if(!J){this.releaseObject(I);return ;}var G,F;try{if(I.conn.status!==undefined&&I.conn.status!=0){G=I.conn.status;}else{G=13030;}}catch(H){G=13030;}if(G>=200&&G<300){F=this.createResponseObject(I,J.argument);if(J.success){if(!J.scope){J.success(F);}else{J.success.apply(J.scope,[F]);}}}else{switch(G){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:F=this.createExceptionObject(I.tId,J.argument,(E?E:false));if(J.failure){if(!J.scope){J.failure(F);}else{J.failure.apply(J.scope,[F]);}}break;default:F=this.createResponseObject(I,J.argument);if(J.failure){if(!J.scope){J.failure(F);}else{J.failure.apply(J.scope,[F]);}}}}this.releaseObject(I);F=null;},createResponseObject:function(E,K){var H={};var M={};try{var G=E.conn.getAllResponseHeaders();var J=G.split("\n");for(var I=0;I<J.length;I++){var F=J[I].indexOf(":");if(F!=-1){M[J[I].substring(0,F)]=J[I].substring(F+2);}}}catch(L){}H.tId=E.tId;H.status=E.conn.status;H.statusText=E.conn.statusText;H.getResponseHeader=M;H.getAllResponseHeaders=G;H.responseText=E.conn.responseText;H.responseXML=E.conn.responseXML;if(typeof K!==undefined){H.argument=K;}return H;},createExceptionObject:function(L,H,E){var J=0;var K="communication failure";var G=-1;var F="transaction aborted";var I={};I.tId=L;if(E){I.status=G;I.statusText=F;}else{I.status=J;I.statusText=K;}if(H){I.argument=H;}return I;},initHeader:function(E,H,G){var F=(G)?this.defaultHeaders:this.headers;if(F[E]===undefined){F[E]=H;}else{F[E]=H+","+F[E];}if(G){this.hasDefaultHeaders=true;}else{this.hasHeaders=true;}},setHeader:function(E){if(this.hasDefaultHeaders){for(var F in this.defaultHeaders){if(this.defaultHeaders.hasOwnProperty(F)){E.conn.setRequestHeader(F,this.defaultHeaders[F]);}}}if(this.hasHeaders){for(var F in this.headers){if(this.headers.hasOwnProperty(F)){E.conn.setRequestHeader(F,this.headers[F]);}}this.headers={};this.hasHeaders=false;}},resetDefaultHeaders:function(){delete this.defaultHeaders;this.defaultHeaders={};this.hasDefaultHeaders=false;},abort:function(F,G,E){if(this.isCallInProgress(F)){F.conn.abort();window.clearInterval(this.poll[F.tId]);delete this.poll[F.tId];if(E){delete this.timeout[F.tId];}this.handleTransactionResponse(F,G,true);return true;}else{return false;}},isCallInProgress:function(E){if(E.conn){return E.conn.readyState!=4&&E.conn.readyState!=0;}else{return false;}},releaseObject:function(E){E.conn=null;E=null;},activeX:["MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"]};Ext.lib.Region=function(G,H,E,F){this.top=G;this[1]=G;this.right=H;this.bottom=E;this.left=F;this[0]=F;};Ext.lib.Region.prototype={contains:function(E){return(E.left>=this.left&&E.right<=this.right&&E.top>=this.top&&E.bottom<=this.bottom);},getArea:function(){return((this.bottom-this.top)*(this.right-this.left));},intersect:function(I){var G=Math.max(this.top,I.top);var H=Math.min(this.right,I.right);var E=Math.min(this.bottom,I.bottom);var F=Math.max(this.left,I.left);if(E>=G&&H>=F){return new Ext.lib.Region(G,H,E,F);}else{return null;}},union:function(I){var G=Math.min(this.top,I.top);var H=Math.max(this.right,I.right);var E=Math.max(this.bottom,I.bottom);var F=Math.min(this.left,I.left);return new Ext.lib.Region(G,H,E,F);},constrainTo:function(E){this.top=this.top.constrain(E.top,E.bottom);this.bottom=this.bottom.constrain(E.top,E.bottom);this.left=this.left.constrain(E.left,E.right);this.right=this.right.constrain(E.left,E.right);return this;},adjust:function(G,F,E,H){this.top+=G;this.left+=F;this.right+=H;this.bottom+=E;return this;}};Ext.lib.Region.getRegion=function(H){var J=Ext.lib.Dom.getXY(H);var G=J[1];var I=J[0]+H.offsetWidth;var E=J[1]+H.offsetHeight;var F=J[0];return new Ext.lib.Region(G,I,E,F);};Ext.lib.Point=function(E,F){if(E instanceof Array){F=E[1];E=E[0];}this.x=this.right=this.left=this[0]=E;this.y=this.top=this.bottom=this[1]=F;};Ext.lib.Point.prototype=new Ext.lib.Region();Ext.lib.Anim={scroll:function(H,F,I,J,E,G){this.run(H,F,I,J,E,G,Ext.lib.Scroll);},motion:function(H,F,I,J,E,G){this.run(H,F,I,J,E,G,Ext.lib.Motion);},color:function(H,F,I,J,E,G){this.run(H,F,I,J,E,G,Ext.lib.ColorAnim);},run:function(I,F,K,L,E,H,G){G=G||Ext.lib.AnimBase;if(typeof L=="string"){L=Ext.lib.Easing[L];}var J=new G(I,F,K,L);J.animateX(function(){Ext.callback(E,H);});return J;}};function C(E){if(!B){B=new Ext.Element.Flyweight();}B.dom=E;return B;}if(Ext.isIE){function A(){var E=Function.prototype;delete E.createSequence;delete E.defer;delete E.createDelegate;delete E.createCallback;delete E.createInterceptor;window.detachEvent("onunload",A);}window.attachEvent("onunload",A);}Ext.lib.AnimBase=function(F,E,G,H){if(F){this.init(F,E,G,H);}};Ext.lib.AnimBase.prototype={toString:function(){var E=this.getEl();var F=E.id||E.tagName;return("Anim "+F);},patterns:{noNegatives:/width|height|opacity|padding/i,offsetAttribute:/^((width|height)|(top|left))$/,defaultUnit:/width|height|top$|bottom$|left$|right$/i,offsetUnit:/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i},doMethod:function(E,G,F){return this.method(this.currentFrame,G,F-G,this.totalFrames);},setAttribute:function(E,G,F){if(this.patterns.noNegatives.test(E)){G=(G>0)?G:0;}Ext.fly(this.getEl(),"_anim").setStyle(E,G+F);},getAttribute:function(E){var G=this.getEl();var I=C(G).getStyle(E);if(I!=="auto"&&!this.patterns.offsetUnit.test(I)){return parseFloat(I);}var F=this.patterns.offsetAttribute.exec(E)||[];var J=!!(F[3]);var H=!!(F[2]);if(H||(C(G).getStyle("position")=="absolute"&&J)){I=G["offset"+F[0].charAt(0).toUpperCase()+F[0].substr(1)];}else{I=0;}return I;},getDefaultUnit:function(E){if(this.patterns.defaultUnit.test(E)){return"px";}return"";},animateX:function(G,E){var F=function(){this.onComplete.removeListener(F);if(typeof G=="function"){G.call(E||this,this);}};this.onComplete.addListener(F,this);this.animate();},setRuntimeAttribute:function(F){var K;var G;var H=this.attributes;this.runtimeAttributes[F]={};var J=function(L){return(typeof L!=="undefined");};if(!J(H[F]["to"])&&!J(H[F]["by"])){return false;}K=(J(H[F]["from"]))?H[F]["from"]:this.getAttribute(F);if(J(H[F]["to"])){G=H[F]["to"];}else{if(J(H[F]["by"])){if(K.constructor==Array){G=[];for(var I=0,E=K.length;I<E;++I){G[I]=K[I]+H[F]["by"][I];}}else{G=K+H[F]["by"];}}}this.runtimeAttributes[F].start=K;this.runtimeAttributes[F].end=G;this.runtimeAttributes[F].unit=(J(H[F].unit))?H[F]["unit"]:this.getDefaultUnit(F);},init:function(G,L,K,E){var F=false;var H=null;var J=0;G=Ext.getDom(G);this.attributes=L||{};this.duration=K||1;this.method=E||Ext.lib.Easing.easeNone;this.useSeconds=true;this.currentFrame=0;this.totalFrames=Ext.lib.AnimMgr.fps;this.getEl=function(){return G;};this.isAnimated=function(){return F;};this.getStartTime=function(){return H;};this.runtimeAttributes={};this.animate=function(){if(this.isAnimated()){return false;}this.currentFrame=0;this.totalFrames=(this.useSeconds)?Math.ceil(Ext.lib.AnimMgr.fps*this.duration):this.duration;Ext.lib.AnimMgr.registerElement(this);};this.stop=function(O){if(O){this.currentFrame=this.totalFrames;this._onTween.fire();}Ext.lib.AnimMgr.stop(this);};var N=function(){this.onStart.fire();this.runtimeAttributes={};for(var O in this.attributes){this.setRuntimeAttribute(O);}F=true;J=0;H=new Date();};var M=function(){var Q={duration:new Date()-this.getStartTime(),currentFrame:this.currentFrame};Q.toString=function(){return("duration: "+Q.duration+", currentFrame: "+Q.currentFrame);};this.onTween.fire(Q);var P=this.runtimeAttributes;for(var O in P){this.setAttribute(O,this.doMethod(O,P[O].start,P[O].end),P[O].unit);}J+=1;};var I=function(){var O=(new Date()-H)/1000;var P={duration:O,frames:J,fps:J/O};P.toString=function(){return("duration: "+P.duration+", frames: "+P.frames+", fps: "+P.fps);};F=false;J=0;this.onComplete.fire(P);};this._onStart=new Ext.util.Event(this);this.onStart=new Ext.util.Event(this);this.onTween=new Ext.util.Event(this);this._onTween=new Ext.util.Event(this);this.onComplete=new Ext.util.Event(this);this._onComplete=new Ext.util.Event(this);this._onStart.addListener(N);this._onTween.addListener(M);this._onComplete.addListener(I);}};Ext.lib.AnimMgr=new function(){var G=null;var F=[];var E=0;this.fps=1000;this.delay=1;this.registerElement=function(J){F[F.length]=J;E+=1;J._onStart.fire();this.start();};this.unRegister=function(K,J){K._onComplete.fire();J=J||I(K);if(J!=-1){F.splice(J,1);}E-=1;if(E<=0){this.stop();}};this.start=function(){if(G===null){G=setInterval(this.run,this.delay);}};this.stop=function(L){if(!L){clearInterval(G);for(var K=0,J=F.length;K<J;++K){if(F[0].isAnimated()){this.unRegister(F[0],0);}}F=[];G=null;E=0;}else{this.unRegister(L);}};this.run=function(){for(var L=0,J=F.length;L<J;++L){var K=F[L];if(!K||!K.isAnimated()){continue;}if(K.currentFrame<K.totalFrames||K.totalFrames===null){K.currentFrame+=1;if(K.useSeconds){H(K);}K._onTween.fire();}else{Ext.lib.AnimMgr.stop(K,L);}}};var I=function(L){for(var K=0,J=F.length;K<J;++K){if(F[K]==L){return K;}}return -1;};var H=function(K){var N=K.totalFrames;var M=K.currentFrame;var L=(K.currentFrame*K.duration*1000/K.totalFrames);var J=(new Date()-K.getStartTime());var O=0;if(J<K.duration*1000){O=Math.round((J/L-1)*K.currentFrame);}else{O=N-(M+1);}if(O>0&&isFinite(O)){if(K.currentFrame+O>=N){O=N-(M+1);}K.currentFrame+=O;}};};Ext.lib.Bezier=new function(){this.getPosition=function(I,H){var J=I.length;var G=[];for(var F=0;F<J;++F){G[F]=[I[F][0],I[F][1]];}for(var E=1;E<J;++E){for(F=0;F<J-E;++F){G[F][0]=(1-H)*G[F][0]+H*G[parseInt(F+1,10)][0];G[F][1]=(1-H)*G[F][1]+H*G[parseInt(F+1,10)][1];}}return[G[0][0],G[0][1]];};};(function(){Ext.lib.ColorAnim=function(I,H,J,K){Ext.lib.ColorAnim.superclass.constructor.call(this,I,H,J,K);};Ext.extend(Ext.lib.ColorAnim,Ext.lib.AnimBase);var F=Ext.lib;var G=F.ColorAnim.superclass;var E=F.ColorAnim.prototype;E.toString=function(){var H=this.getEl();var I=H.id||H.tagName;return("ColorAnim "+I);};E.patterns.color=/color$/i;E.patterns.rgb=/^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i;E.patterns.hex=/^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i;E.patterns.hex3=/^#?([0-9A-F]{1})([0-9A-F]{1})([0-9A-F]{1})$/i;E.patterns.transparent=/^transparent|rgba\(0, 0, 0, 0\)$/;E.parseColor=function(H){if(H.length==3){return H;}var I=this.patterns.hex.exec(H);if(I&&I.length==4){return[parseInt(I[1],16),parseInt(I[2],16),parseInt(I[3],16)];}I=this.patterns.rgb.exec(H);if(I&&I.length==4){return[parseInt(I[1],10),parseInt(I[2],10),parseInt(I[3],10)];}I=this.patterns.hex3.exec(H);if(I&&I.length==4){return[parseInt(I[1]+I[1],16),parseInt(I[2]+I[2],16),parseInt(I[3]+I[3],16)];}return null;};E.getAttribute=function(H){var J=this.getEl();if(this.patterns.color.test(H)){var K=C(J).getStyle(H);if(this.patterns.transparent.test(K)){var I=J.parentNode;K=C(I).getStyle(H);while(I&&this.patterns.transparent.test(K)){I=I.parentNode;K=C(I).getStyle(H);if(I.tagName.toUpperCase()=="HTML"){K="#fff";}}}}else{K=G.getAttribute.call(this,H);}return K;};E.doMethod=function(I,M,J){var L;if(this.patterns.color.test(I)){L=[];for(var K=0,H=M.length;K<H;++K){L[K]=G.doMethod.call(this,I,M[K],J[K]);}L="rgb("+Math.floor(L[0])+","+Math.floor(L[1])+","+Math.floor(L[2])+")";}else{L=G.doMethod.call(this,I,M,J);}return L;};E.setRuntimeAttribute=function(I){G.setRuntimeAttribute.call(this,I);if(this.patterns.color.test(I)){var K=this.attributes;var M=this.parseColor(this.runtimeAttributes[I].start);var J=this.parseColor(this.runtimeAttributes[I].end);if(typeof K[I]["to"]==="undefined"&&typeof K[I]["by"]!=="undefined"){J=this.parseColor(K[I].by);for(var L=0,H=M.length;L<H;++L){J[L]=M[L]+J[L];}}this.runtimeAttributes[I].start=M;this.runtimeAttributes[I].end=J;}};})();Ext.lib.Easing={easeNone:function(F,E,H,G){return H*F/G+E;},easeIn:function(F,E,H,G){return H*(F/=G)*F+E;},easeOut:function(F,E,H,G){return -H*(F/=G)*(F-2)+E;},easeBoth:function(F,E,H,G){if((F/=G/2)<1){return H/2*F*F+E;}return -H/2*((--F)*(F-2)-1)+E;},easeInStrong:function(F,E,H,G){return H*(F/=G)*F*F*F+E;},easeOutStrong:function(F,E,H,G){return -H*((F=F/G-1)*F*F*F-1)+E;},easeBothStrong:function(F,E,H,G){if((F/=G/2)<1){return H/2*F*F*F*F+E;}return -H/2*((F-=2)*F*F*F-2)+E;},elasticIn:function(G,E,K,J,F,I){if(G==0){return E;}if((G/=J)==1){return E+K;}if(!I){I=J*0.3;}if(!F||F<Math.abs(K)){F=K;var H=I/4;}else{var H=I/(2*Math.PI)*Math.asin(K/F);}return -(F*Math.pow(2,10*(G-=1))*Math.sin((G*J-H)*(2*Math.PI)/I))+E;},elasticOut:function(G,E,K,J,F,I){if(G==0){return E;}if((G/=J)==1){return E+K;}if(!I){I=J*0.3;}if(!F||F<Math.abs(K)){F=K;var H=I/4;}else{var H=I/(2*Math.PI)*Math.asin(K/F);}return F*Math.pow(2,-10*G)*Math.sin((G*J-H)*(2*Math.PI)/I)+K+E;},elasticBoth:function(G,E,K,J,F,I){if(G==0){return E;}if((G/=J/2)==2){return E+K;}if(!I){I=J*(0.3*1.5);}if(!F||F<Math.abs(K)){F=K;var H=I/4;}else{var H=I/(2*Math.PI)*Math.asin(K/F);}if(G<1){return -0.5*(F*Math.pow(2,10*(G-=1))*Math.sin((G*J-H)*(2*Math.PI)/I))+E;}return F*Math.pow(2,-10*(G-=1))*Math.sin((G*J-H)*(2*Math.PI)/I)*0.5+K+E;},backIn:function(F,E,I,H,G){if(typeof G=="undefined"){G=1.70158;}return I*(F/=H)*F*((G+1)*F-G)+E;},backOut:function(F,E,I,H,G){if(typeof G=="undefined"){G=1.70158;}return I*((F=F/H-1)*F*((G+1)*F+G)+1)+E;},backBoth:function(F,E,I,H,G){if(typeof G=="undefined"){G=1.70158;}if((F/=H/2)<1){return I/2*(F*F*(((G*=(1.525))+1)*F-G))+E;}return I/2*((F-=2)*F*(((G*=(1.525))+1)*F+G)+2)+E;},bounceIn:function(F,E,H,G){return H-Ext.lib.Easing.bounceOut(G-F,0,H,G)+E;},bounceOut:function(F,E,H,G){if((F/=G)<(1/2.75)){return H*(7.5625*F*F)+E;}else{if(F<(2/2.75)){return H*(7.5625*(F-=(1.5/2.75))*F+0.75)+E;}else{if(F<(2.5/2.75)){return H*(7.5625*(F-=(2.25/2.75))*F+0.9375)+E;}}}return H*(7.5625*(F-=(2.625/2.75))*F+0.984375)+E;},bounceBoth:function(F,E,H,G){if(F<G/2){return Ext.lib.Easing.bounceIn(F*2,0,H,G)*0.5+E;}return Ext.lib.Easing.bounceOut(F*2-G,0,H,G)*0.5+H*0.5+E;}};(function(){Ext.lib.Motion=function(K,J,L,M){if(K){Ext.lib.Motion.superclass.constructor.call(this,K,J,L,M);}};Ext.extend(Ext.lib.Motion,Ext.lib.ColorAnim);var H=Ext.lib;var I=H.Motion.superclass;var F=H.Motion.prototype;F.toString=function(){var J=this.getEl();var K=J.id||J.tagName;return("Motion "+K);};F.patterns.points=/^points$/i;F.setAttribute=function(J,L,K){if(this.patterns.points.test(J)){K=K||"px";I.setAttribute.call(this,"left",L[0],K);I.setAttribute.call(this,"top",L[1],K);}else{I.setAttribute.call(this,J,L,K);}};F.getAttribute=function(J){if(this.patterns.points.test(J)){var K=[I.getAttribute.call(this,"left"),I.getAttribute.call(this,"top")];}else{K=I.getAttribute.call(this,J);}return K;};F.doMethod=function(J,N,K){var M=null;if(this.patterns.points.test(J)){var L=this.method(this.currentFrame,0,100,this.totalFrames)/100;M=H.Bezier.getPosition(this.runtimeAttributes[J],L);}else{M=I.doMethod.call(this,J,N,K);}return M;};F.setRuntimeAttribute=function(S){if(this.patterns.points.test(S)){var K=this.getEl();var M=this.attributes;var J;var O=M["points"]["control"]||[];var L;var P,R;if(O.length>0&&!(O[0] instanceof Array)){O=[O];}else{var N=[];for(P=0,R=O.length;P<R;++P){N[P]=O[P];}O=N;}Ext.fly(K).position();if(G(M["points"]["from"])){Ext.lib.Dom.setXY(K,M["points"]["from"]);}else{Ext.lib.Dom.setXY(K,Ext.lib.Dom.getXY(K));}J=this.getAttribute("points");if(G(M["points"]["to"])){L=E.call(this,M["points"]["to"],J);var Q=Ext.lib.Dom.getXY(this.getEl());for(P=0,R=O.length;P<R;++P){O[P]=E.call(this,O[P],J);}}else{if(G(M["points"]["by"])){L=[J[0]+M["points"]["by"][0],J[1]+M["points"]["by"][1]];for(P=0,R=O.length;P<R;++P){O[P]=[J[0]+O[P][0],J[1]+O[P][1]];}}}this.runtimeAttributes[S]=[J];if(O.length>0){this.runtimeAttributes[S]=this.runtimeAttributes[S].concat(O);}this.runtimeAttributes[S][this.runtimeAttributes[S].length]=L;}else{I.setRuntimeAttribute.call(this,S);}};var E=function(J,L){var K=Ext.lib.Dom.getXY(this.getEl());J=[J[0]-K[0]+L[0],J[1]-K[1]+L[1]];return J;};var G=function(J){return(typeof J!=="undefined");};})();(function(){Ext.lib.Scroll=function(I,H,J,K){if(I){Ext.lib.Scroll.superclass.constructor.call(this,I,H,J,K);}};Ext.extend(Ext.lib.Scroll,Ext.lib.ColorAnim);var F=Ext.lib;var G=F.Scroll.superclass;var E=F.Scroll.prototype;E.toString=function(){var H=this.getEl();var I=H.id||H.tagName;return("Scroll "+I);};E.doMethod=function(H,K,I){var J=null;if(H=="scroll"){J=[this.method(this.currentFrame,K[0],I[0]-K[0],this.totalFrames),this.method(this.currentFrame,K[1],I[1]-K[1],this.totalFrames)];}else{J=G.doMethod.call(this,H,K,I);}return J;};E.getAttribute=function(H){var J=null;var I=this.getEl();if(H=="scroll"){J=[I.scrollLeft,I.scrollTop];}else{J=G.getAttribute.call(this,H);}return J;};E.setAttribute=function(H,K,J){var I=this.getEl();if(H=="scroll"){I.scrollLeft=K[0];I.scrollTop=K[1];}else{G.setAttribute.call(this,H,K,J);}};})();})();
Ext.DomHelper=function(){var L=null;var F=/^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i;var B=/^table|tbody|tr|td$/i;var A=function(T){if(typeof T=="string"){return T;}var P="";if(!T.tag){T.tag="div";}P+="<"+T.tag;for(var O in T){if(O=="tag"||O=="children"||O=="cn"||O=="html"||typeof T[O]=="function"){continue;}if(O=="style"){var S=T["style"];if(typeof S=="function"){S=S.call();}if(typeof S=="string"){P+=' style="'+S+'"';}else{if(typeof S=="object"){P+=' style="';for(var R in S){if(typeof S[R]!="function"){P+=R+":"+S[R]+";";}}P+='"';}}}else{if(O=="cls"){P+=' class="'+T["cls"]+'"';}else{if(O=="htmlFor"){P+=' for="'+T["htmlFor"]+'"';}else{P+=" "+O+'="'+T[O]+'"';}}}}if(F.test(T.tag)){P+="/>";}else{P+=">";var U=T.children||T.cn;if(U){if(U instanceof Array){for(var Q=0,N=U.length;Q<N;Q++){P+=A(U[Q],P);}}else{P+=A(U,P);}}if(T.html){P+=T.html;}P+="</"+T.tag+">";}return P;};var M=function(T,P){var S=document.createElement(T.tag||"div");var Q=S.setAttribute?true:false;for(var O in T){if(O=="tag"||O=="children"||O=="cn"||O=="html"||O=="style"||typeof T[O]=="function"){continue;}if(O=="cls"){S.className=T["cls"];}else{if(Q){S.setAttribute(O,T[O]);}else{S[O]=T[O];}}}Ext.DomHelper.applyStyles(S,T.style);var U=T.children||T.cn;if(U){if(U instanceof Array){for(var R=0,N=U.length;R<N;R++){M(U[R],S);}}else{M(U,S);}}if(T.html){S.innerHTML=T.html;}if(P){P.appendChild(S);}return S;};var I=function(S,Q,P,R){L.innerHTML=[Q,P,R].join("");var N=-1,O=L;while(++N<S){O=O.firstChild;}return O;};var J="<table>",E="</table>",C=J+"<tbody>",K="</tbody>"+E,H=C+"<tr>",D="</tr>"+K;var G=function(N,O,Q,P){if(!L){L=document.createElement("div");}var R;var S=null;if(N=="td"){if(O=="afterbegin"||O=="beforeend"){return ;}if(O=="beforebegin"){S=Q;Q=Q.parentNode;}else{S=Q.nextSibling;Q=Q.parentNode;}R=I(4,H,P,D);}else{if(N=="tr"){if(O=="beforebegin"){S=Q;Q=Q.parentNode;R=I(3,C,P,K);}else{if(O=="afterend"){S=Q.nextSibling;Q=Q.parentNode;R=I(3,C,P,K);}else{if(O=="afterbegin"){S=Q.firstChild;}R=I(4,H,P,D);}}}else{if(N=="tbody"){if(O=="beforebegin"){S=Q;Q=Q.parentNode;R=I(2,J,P,E);}else{if(O=="afterend"){S=Q.nextSibling;Q=Q.parentNode;R=I(2,J,P,E);}else{if(O=="afterbegin"){S=Q.firstChild;}R=I(3,C,P,K);}}}else{if(O=="beforebegin"||O=="afterend"){return ;}if(O=="afterbegin"){S=Q.firstChild;}R=I(2,J,P,E);}}}Q.insertBefore(R,S);return R;};return{useDom:false,markup:function(N){return A(N);},applyStyles:function(P,Q){if(Q){P=Ext.fly(P);if(typeof Q=="string"){var O=/\s?([a-z\-]*)\:\s?([^;]*);?/gi;var R;while((R=O.exec(Q))!=null){P.setStyle(R[1],R[2]);}}else{if(typeof Q=="object"){for(var N in Q){P.setStyle(N,Q[N]);}}else{if(typeof Q=="function"){Ext.DomHelper.applyStyles(P,Q.call());}}}}},insertHtml:function(P,R,Q){P=P.toLowerCase();if(R.insertAdjacentHTML){if(B.test(R.tagName)){var O;if(O=G(R.tagName.toLowerCase(),P,R,Q)){return O;}}switch(P){case"beforebegin":R.insertAdjacentHTML("BeforeBegin",Q);return R.previousSibling;case"afterbegin":R.insertAdjacentHTML("AfterBegin",Q);return R.firstChild;case"beforeend":R.insertAdjacentHTML("BeforeEnd",Q);return R.lastChild;case"afterend":R.insertAdjacentHTML("AfterEnd",Q);return R.nextSibling;}throw'Illegal insertion point -> "'+P+'"';}var N=R.ownerDocument.createRange();var S;switch(P){case"beforebegin":N.setStartBefore(R);S=N.createContextualFragment(Q);R.parentNode.insertBefore(S,R);return R.previousSibling;case"afterbegin":if(R.firstChild){N.setStartBefore(R.firstChild);S=N.createContextualFragment(Q);R.insertBefore(S,R.firstChild);return R.firstChild;}else{R.innerHTML=Q;return R.firstChild;}case"beforeend":if(R.lastChild){N.setStartAfter(R.lastChild);S=N.createContextualFragment(Q);R.appendChild(S);return R.lastChild;}else{R.innerHTML=Q;return R.lastChild;}case"afterend":N.setStartAfter(R);S=N.createContextualFragment(Q);R.parentNode.insertBefore(S,R.nextSibling);return R.nextSibling;}throw'Illegal insertion point -> "'+P+'"';},insertBefore:function(N,P,O){return this.doInsert(N,P,O,"beforeBegin");},insertAfter:function(N,P,O){return this.doInsert(N,P,O,"afterEnd","nextSibling");},insertFirst:function(N,P,O){return this.doInsert(N,P,O,"afterBegin","firstChild");},doInsert:function(Q,S,R,T,P){Q=Ext.getDom(Q);var O;if(this.useDom){O=M(S,null);(P==="firstChild"?Q:Q.parentNode).insertBefore(O,P?Q[P]:Q);}else{var N=A(S);O=this.insertHtml(T,Q,N);}return R?Ext.get(O,true):O;},append:function(P,R,Q){P=Ext.getDom(P);var O;if(this.useDom){O=M(R,null);P.appendChild(O);}else{var N=A(R);O=this.insertHtml("beforeEnd",P,N);}return Q?Ext.get(O,true):O;},overwrite:function(N,P,O){N=Ext.getDom(N);N.innerHTML=A(P);return O?Ext.get(N.firstChild,true):N.firstChild;},createTemplate:function(O){var N=A(O);return new Ext.Template(N);}};}();Ext.Template=function(E){var B=arguments;if(E instanceof Array){E=E.join("");}else{if(B.length>1){var C=[];for(var D=0,A=B.length;D<A;D++){if(typeof B[D]=="object"){Ext.apply(this,B[D]);}else{C[C.length]=B[D];}}E=C.join("");}}this.html=E;if(this.compiled){this.compile();}};Ext.Template.prototype={applyTemplate:function(B){if(this.compiled){return this.compiled(B);}var A=this.disableFormats!==true;var E=Ext.util.Format,C=this;var D=function(G,I,L,H){if(L&&A){if(L.substr(0,5)=="this."){return C.call(L.substr(5),B[I],B);}else{if(H){var K=/^\s*['"](.*)["']\s*$/;H=H.split(",");for(var J=0,F=H.length;J<F;J++){H[J]=H[J].replace(K,"$1");}H=[B[I]].concat(H);}else{H=[B[I]];}return E[L].apply(E,H);}}else{return B[I]!==undefined?B[I]:"";}};return this.html.replace(this.re,D);},set:function(A,B){this.html=A;this.compiled=null;if(B){this.compile();}return this;},disableFormats:false,re:/\{([\w-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g,compile:function(){var fm=Ext.util.Format;var useF=this.disableFormats!==true;var sep=Ext.isGecko?"+":",";var fn=function(m,name,format,args){if(format&&useF){args=args?","+args:"";if(format.substr(0,5)!="this."){format="fm."+format+"(";}else{format='this.call("'+format.substr(5)+'", ';args=", values";}}else{args="";format="(values['"+name+"'] == undefined ? '' : ";}return"'"+sep+format+"values['"+name+"']"+args+")"+sep+"'";};var body;if(Ext.isGecko){body="this.compiled = function(values){ return '"+this.html.replace(/\\/g,"\\\\").replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn)+"';};";}else{body=["this.compiled = function(values){ return ['"];body.push(this.html.replace(/\\/g,"\\\\").replace(/(\r\n|\n)/g,"\\n").replace(/'/g,"\\'").replace(this.re,fn));body.push("'].join('');};");body=body.join("");}eval(body);return this;},call:function(C,B,A){return this[C](B,A);},insertFirst:function(B,A,C){return this.doInsert("afterBegin",B,A,C);},insertBefore:function(B,A,C){return this.doInsert("beforeBegin",B,A,C);},insertAfter:function(B,A,C){return this.doInsert("afterEnd",B,A,C);},append:function(B,A,C){return this.doInsert("beforeEnd",B,A,C);},doInsert:function(C,E,B,A){E=Ext.getDom(E);var D=Ext.DomHelper.insertHtml(C,E,this.applyTemplate(B));return A?Ext.get(D,true):D;},overwrite:function(B,A,C){B=Ext.getDom(B);B.innerHTML=this.applyTemplate(A);return C?Ext.get(B.firstChild,true):B.firstChild;}};Ext.Template.prototype.apply=Ext.Template.prototype.applyTemplate;Ext.DomHelper.Template=Ext.Template;Ext.Template.from=function(B,A){B=Ext.getDom(B);return new Ext.Template(B.value||B.innerHTML,A||"");};Ext.DomQuery=function(){var cache={},simpleCache={},valueCache={};var nonSpace=/\S/;var trimRe=/^\s+|\s+$/g;var tplRe=/\{(\d+)\}/g;var modeRe=/^(\s?[\/>+~]\s?|\s|$)/;var tagTokenRe=/^(#)?([\w-\*]+)/;var nthRe=/(\d*)n\+?(\d*)/,nthRe2=/\D/;function child(p,index){var i=0;var n=p.firstChild;while(n){if(n.nodeType==1){if(++i==index){return n;}}n=n.nextSibling;}return null;}function next(n){while((n=n.nextSibling)&&n.nodeType!=1){}return n;}function prev(n){while((n=n.previousSibling)&&n.nodeType!=1){}return n;}function children(d){var n=d.firstChild,ni=-1;while(n){var nx=n.nextSibling;if(n.nodeType==3&&!nonSpace.test(n.nodeValue)){d.removeChild(n);}else{n.nodeIndex=++ni;}n=nx;}return this;}function byClassName(c,a,v){if(!v){return c;}var r=[],ri=-1,cn;for(var i=0,ci;ci=c[i];i++){if((" "+ci.className+" ").indexOf(v)!=-1){r[++ri]=ci;}}return r;}function attrValue(n,attr){if(!n.tagName&&typeof n.length!="undefined"){n=n[0];}if(!n){return null;}if(attr=="for"){return n.htmlFor;}if(attr=="class"||attr=="className"){return n.className;}return n.getAttribute(attr)||n[attr];}function getNodes(ns,mode,tagName){var result=[],ri=-1,cs;if(!ns){return result;}tagName=tagName||"*";if(typeof ns.getElementsByTagName!="undefined"){ns=[ns];}if(!mode){for(var i=0,ni;ni=ns[i];i++){cs=ni.getElementsByTagName(tagName);for(var j=0,ci;ci=cs[j];j++){result[++ri]=ci;}}}else{if(mode=="/"||mode==">"){var utag=tagName.toUpperCase();for(var i=0,ni,cn;ni=ns[i];i++){cn=ni.children||ni.childNodes;for(var j=0,cj;cj=cn[j];j++){if(cj.nodeName==utag||cj.nodeName==tagName||tagName=="*"){result[++ri]=cj;}}}}else{if(mode=="+"){var utag=tagName.toUpperCase();for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(n&&(n.nodeName==utag||n.nodeName==tagName||tagName=="*")){result[++ri]=n;}}}else{if(mode=="~"){for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&(n.nodeType!=1||(tagName=="*"||n.tagName.toLowerCase()!=tagName))){}if(n){result[++ri]=n;}}}}}}return result;}function concat(a,b){if(b.slice){return a.concat(b);}for(var i=0,l=b.length;i<l;i++){a[a.length]=b[i];}return a;}function byTag(cs,tagName){if(cs.tagName||cs==document){cs=[cs];}if(!tagName){return cs;}var r=[],ri=-1;tagName=tagName.toLowerCase();for(var i=0,ci;ci=cs[i];i++){if(ci.nodeType==1&&ci.tagName.toLowerCase()==tagName){r[++ri]=ci;}}return r;}function byId(cs,attr,id){if(cs.tagName||cs==document){cs=[cs];}if(!id){return cs;}var r=[],ri=-1;for(var i=0,ci;ci=cs[i];i++){if(ci&&ci.id==id){r[++ri]=ci;return r;}}return r;}function byAttribute(cs,attr,value,op,custom){var r=[],ri=-1,st=custom=="{";var f=Ext.DomQuery.operators[op];for(var i=0,ci;ci=cs[i];i++){var a;if(st){a=Ext.DomQuery.getStyle(ci,attr);}else{if(attr=="class"||attr=="className"){a=ci.className;}else{if(attr=="for"){a=ci.htmlFor;}else{if(attr=="href"){a=ci.getAttribute("href",2);}else{a=ci.getAttribute(attr);}}}}if((f&&f(a,value))||(!f&&a)){r[++ri]=ci;}}return r;}function byPseudo(cs,name,value){return Ext.DomQuery.pseudos[name](cs,value);}var isIE=window.ActiveXObject?true:false;eval("var batch = 30803;");var key=30803;function nodupIEXml(cs){var d=++key;cs[0].setAttribute("_nodup",d);var r=[cs[0]];for(var i=1,len=cs.length;i<len;i++){var c=cs[i];if(!c.getAttribute("_nodup")!=d){c.setAttribute("_nodup",d);r[r.length]=c;}}for(var i=0,len=cs.length;i<len;i++){cs[i].removeAttribute("_nodup");}return r;}function nodup(cs){if(!cs){return[];}var len=cs.length,c,i,r=cs,cj,ri=-1;if(!len||typeof cs.nodeType!="undefined"||len==1){return cs;}if(isIE&&typeof cs[0].selectSingleNode!="undefined"){return nodupIEXml(cs);}var d=++key;cs[0]._nodup=d;for(i=1;c=cs[i];i++){if(c._nodup!=d){c._nodup=d;}else{r=[];for(var j=0;j<i;j++){r[++ri]=cs[j];}for(j=i+1;cj=cs[j];j++){if(cj._nodup!=d){cj._nodup=d;r[++ri]=cj;}}return r;}}return r;}function quickDiffIEXml(c1,c2){var d=++key;for(var i=0,len=c1.length;i<len;i++){c1[i].setAttribute("_qdiff",d);}var r=[];for(var i=0,len=c2.length;i<len;i++){if(c2[i].getAttribute("_qdiff")!=d){r[r.length]=c2[i];}}for(var i=0,len=c1.length;i<len;i++){c1[i].removeAttribute("_qdiff");}return r;}function quickDiff(c1,c2){var len1=c1.length;if(!len1){return c2;}if(isIE&&c1[0].selectSingleNode){return quickDiffIEXml(c1,c2);}var d=++key;for(var i=0;i<len1;i++){c1[i]._qdiff=d;}var r=[];for(var i=0,len=c2.length;i<len;i++){if(c2[i]._qdiff!=d){r[r.length]=c2[i];}}return r;}function quickId(ns,mode,root,id){if(ns==root){var d=root.ownerDocument||root;return d.getElementById(id);}ns=getNodes(ns,mode,"*");return byId(ns,null,id);}return{getStyle:function(el,name){return Ext.fly(el).getStyle(name);},compile:function(path,type){type=type||"select";var fn=["var f = function(root){\n var mode; ++batch; var n = root || document;\n"];var q=path,mode,lq;var tk=Ext.DomQuery.matchers;var tklen=tk.length;var mm;var lmode=q.match(modeRe);if(lmode&&lmode[1]){fn[fn.length]='mode="'+lmode[1].replace(trimRe,"")+'";';q=q.replace(lmode[1],"");}while(path.substr(0,1)=="/"){path=path.substr(1);}while(q&&lq!=q){lq=q;var tm=q.match(tagTokenRe);if(type=="select"){if(tm){if(tm[1]=="#"){fn[fn.length]='n = quickId(n, mode, root, "'+tm[2]+'");';}else{fn[fn.length]='n = getNodes(n, mode, "'+tm[2]+'");';}q=q.replace(tm[0],"");}else{if(q.substr(0,1)!="@"){fn[fn.length]='n = getNodes(n, mode, "*");';}}}else{if(tm){if(tm[1]=="#"){fn[fn.length]='n = byId(n, null, "'+tm[2]+'");';}else{fn[fn.length]='n = byTag(n, "'+tm[2]+'");';}q=q.replace(tm[0],"");}}while(!(mm=q.match(modeRe))){var matched=false;for(var j=0;j<tklen;j++){var t=tk[j];var m=q.match(t.re);if(m){fn[fn.length]=t.select.replace(tplRe,function(x,i){return m[i];});q=q.replace(m[0],"");matched=true;break;}}if(!matched){throw'Error parsing selector, parsing failed at "'+q+'"';}}if(mm[1]){fn[fn.length]='mode="'+mm[1].replace(trimRe,"")+'";';q=q.replace(mm[1],"");}}fn[fn.length]="return nodup(n);\n}";eval(fn.join(""));return f;},select:function(path,root,type){if(!root||root==document){root=document;}if(typeof root=="string"){root=document.getElementById(root);}var paths=path.split(",");var results=[];for(var i=0,len=paths.length;i<len;i++){var p=paths[i].replace(trimRe,"");if(!cache[p]){cache[p]=Ext.DomQuery.compile(p);if(!cache[p]){throw p+" is not a valid selector";}}var result=cache[p](root);if(result&&result!=document){results=results.concat(result);}}if(paths.length>1){return nodup(results);}return results;},selectNode:function(path,root){return Ext.DomQuery.select(path,root)[0];},selectValue:function(path,root,defaultValue){path=path.replace(trimRe,"");if(!valueCache[path]){valueCache[path]=Ext.DomQuery.compile(path,"select");}var n=valueCache[path](root);n=n[0]?n[0]:n;var v=(n&&n.firstChild?n.firstChild.nodeValue:null);return((v===null||v===undefined||v==="")?defaultValue:v);},selectNumber:function(path,root,defaultValue){var v=Ext.DomQuery.selectValue(path,root,defaultValue||0);return parseFloat(v);},is:function(el,ss){if(typeof el=="string"){el=document.getElementById(el);}var isArray=(el instanceof Array);var result=Ext.DomQuery.filter(isArray?el:[el],ss);return isArray?(result.length==el.length):(result.length>0);},filter:function(els,ss,nonMatches){ss=ss.replace(trimRe,"");if(!simpleCache[ss]){simpleCache[ss]=Ext.DomQuery.compile(ss,"simple");}var result=simpleCache[ss](els);return nonMatches?quickDiff(result,els):result;},matchers:[{re:/^\.([\w-]+)/,select:'n = byClassName(n, null, " {1} ");'},{re:/^\:([\w-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/,select:'n = byPseudo(n, "{1}", "{2}");'},{re:/^(?:([\[\{])(?:@)?([\w-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/,select:'n = byAttribute(n, "{2}", "{4}", "{3}", "{1}");'},{re:/^#([\w-]+)/,select:'n = byId(n, null, "{1}");'},{re:/^@([\w-]+)/,select:'return {firstChild:{nodeValue:attrValue(n, "{1}")}};'}],operators:{"=":function(a,v){return a==v;},"!=":function(a,v){return a!=v;},"^=":function(a,v){return a&&a.substr(0,v.length)==v;},"$=":function(a,v){return a&&a.substr(a.length-v.length)==v;},"*=":function(a,v){return a&&a.indexOf(v)!==-1;},"%=":function(a,v){return(a%v)==0;},"|=":function(a,v){return a&&(a==v||a.substr(0,v.length+1)==v+"-");},"~=":function(a,v){return a&&(" "+a+" ").indexOf(" "+v+" ")!=-1;}},pseudos:{"first-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.previousSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci;}}return r;},"last-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci;}}return r;},"nth-child":function(c,a){var r=[],ri=-1;var m=nthRe.exec(a=="even"&&"2n"||a=="odd"&&"2n+1"||!nthRe2.test(a)&&"n+"+a||a);var f=(m[1]||1)-0,l=m[2]-0;for(var i=0,n;n=c[i];i++){var pn=n.parentNode;if(batch!=pn._batch){var j=0;for(var cn=pn.firstChild;cn;cn=cn.nextSibling){if(cn.nodeType==1){cn.nodeIndex=++j;}}pn._batch=batch;}if(f==1){if(l==0||n.nodeIndex==l){r[++ri]=n;}}else{if((n.nodeIndex+l)%f==0){r[++ri]=n;}}}return r;},"only-child":function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(!prev(ci)&&!next(ci)){r[++ri]=ci;}}return r;},"empty":function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var cns=ci.childNodes,j=0,cn,empty=true;while(cn=cns[j]){++j;if(cn.nodeType==1||cn.nodeType==3){empty=false;break;}}if(empty){r[++ri]=ci;}}return r;},"contains":function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if((ci.textContent||ci.innerText||"").indexOf(v)!=-1){r[++ri]=ci;}}return r;},"nodeValue":function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.firstChild&&ci.firstChild.nodeValue==v){r[++ri]=ci;}}return r;},"checked":function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.checked==true){r[++ri]=ci;}}return r;},"not":function(c,ss){return Ext.DomQuery.filter(c,ss,true);},"any":function(c,selectors){var ss=selectors.split("|");var r=[],ri=-1,s;for(var i=0,ci;ci=c[i];i++){for(var j=0;s=ss[j];j++){if(Ext.DomQuery.is(ci,s)){r[++ri]=ci;break;}}}return r;},"odd":function(c){return this["nth-child"](c,"odd");},"even":function(c){return this["nth-child"](c,"even");},"nth":function(c,a){return c[a-1]||[];},"first":function(c){return c[0]||[];},"last":function(c){return c[c.length-1]||[];},"has":function(c,ss){var s=Ext.DomQuery.select;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(s(ss,ci).length>0){r[++ri]=ci;}}return r;},"next":function(c,ss){var is=Ext.DomQuery.is;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=next(ci);if(n&&is(n,ss)){r[++ri]=ci;}}return r;},"prev":function(c,ss){var is=Ext.DomQuery.is;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=prev(ci);if(n&&is(n,ss)){r[++ri]=ci;}}return r;}}};}();Ext.query=Ext.DomQuery.select;Ext.util.Observable=function(){if(this.listeners){this.on(this.listeners);delete this.listeners;}};Ext.util.Observable.prototype={fireEvent:function(){if(this.eventsSuspended!==true){var A=this.events[arguments[0].toLowerCase()];if(typeof A=="object"){return A.fire.apply(A,Array.prototype.slice.call(arguments,1));}}return true;},filterOptRe:/^(?:scope|delay|buffer|single)$/,addListener:function(A,C,B,F){if(typeof A=="object"){F=A;for(var E in F){if(this.filterOptRe.test(E)){continue;}if(typeof F[E]=="function"){this.addListener(E,F[E],F.scope,F);}else{this.addListener(E,F[E].fn,F[E].scope,F[E]);}}return ;}F=(!F||typeof F=="boolean")?{}:F;A=A.toLowerCase();var D=this.events[A]||true;if(typeof D=="boolean"){D=new Ext.util.Event(this,A);this.events[A]=D;}D.addListener(C,B,F);},removeListener:function(A,C,B){var D=this.events[A.toLowerCase()];if(typeof D=="object"){D.removeListener(C,B);}},purgeListeners:function(){for(var A in this.events){if(typeof this.events[A]=="object"){this.events[A].clearListeners();}}},relayEvents:function(F,D){var E=function(G){return function(){return this.fireEvent.apply(this,Ext.combine(G,Array.prototype.slice.call(arguments,0)));};};for(var C=0,A=D.length;C<A;C++){var B=D[C];if(!this.events[B]){this.events[B]=true;}F.on(B,E(B),this);}},addEvents:function(D){if(!this.events){this.events={};}if(typeof D=="string"){for(var C=0,A=arguments,B;B=A[C];C++){if(!this.events[A[C]]){D[A[C]]=true;}}}else{Ext.applyIf(this.events,D);}},hasListener:function(A){var B=this.events[A];return typeof B=="object"&&B.listeners.length>0;},suspendEvents:function(){this.eventsSuspended=true;},resumeEvents:function(){this.eventsSuspended=false;},getMethodEvent:function(G){if(!this.methodEvents){this.methodEvents={};}var F=this.methodEvents[G];if(!F){F={};this.methodEvents[G]=F;F.originalFn=this[G];F.methodName=G;F.before=[];F.after=[];var C,B,D;var E=this;var A=function(J,I,H){if((B=J.apply(I||E,H))!==undefined){if(typeof B==="object"){if(B.returnValue!==undefined){C=B.returnValue;}else{C=B;}if(B.cancel===true){D=true;}}else{if(B===false){D=true;}else{C=B;}}}};this[G]=function(){C=B=undefined;D=false;var I=Array.prototype.slice.call(arguments,0);for(var J=0,H=F.before.length;J<H;J++){A(F.before[J].fn,F.before[J].scope,I);if(D){return C;}}if((B=F.originalFn.apply(E,I))!==undefined){C=B;}for(var J=0,H=F.after.length;J<H;J++){A(F.after[J].fn,F.after[J].scope,I);if(D){return C;}}return C;};}return F;},beforeMethod:function(D,B,A){var C=this.getMethodEvent(D);C.before.push({fn:B,scope:A});},afterMethod:function(D,B,A){var C=this.getMethodEvent(D);C.after.push({fn:B,scope:A});},removeMethodListener:function(F,D,C){var E=this.getMethodEvent(F);for(var B=0,A=E.before.length;B<A;B++){if(E.before[B].fn==D&&E.before[B].scope==C){E.before.splice(B,1);return ;}}for(var B=0,A=E.after.length;B<A;B++){if(E.after[B].fn==D&&E.after[B].scope==C){E.after.splice(B,1);return ;}}}};Ext.util.Observable.prototype.on=Ext.util.Observable.prototype.addListener;Ext.util.Observable.prototype.un=Ext.util.Observable.prototype.removeListener;Ext.util.Observable.capture=function(C,B,A){C.fireEvent=C.fireEvent.createInterceptor(B,A);};Ext.util.Observable.releaseCapture=function(A){A.fireEvent=Ext.util.Observable.prototype.fireEvent;};(function(){var B=function(F,G,E){var D=new Ext.util.DelayedTask();return function(){D.delay(G.buffer,F,E,Array.prototype.slice.call(arguments,0));};};var C=function(F,G,E,D){return function(){G.removeListener(E,D);return F.apply(D,arguments);};};var A=function(E,F,D){return function(){var G=Array.prototype.slice.call(arguments,0);setTimeout(function(){E.apply(D,G);},F.delay||10);};};Ext.util.Event=function(E,D){this.name=D;this.obj=E;this.listeners=[];};Ext.util.Event.prototype={addListener:function(G,F,E){F=F||this.obj;if(!this.isListening(G,F)){var D=this.createListener(G,F,E);if(!this.firing){this.listeners.push(D);}else{this.listeners=this.listeners.slice(0);this.listeners.push(D);}}},createListener:function(G,F,H){H=H||{};F=F||this.obj;var D={fn:G,scope:F,options:H};var E=G;if(H.delay){E=A(E,H,F);}if(H.single){E=C(E,this,G,F);}if(H.buffer){E=B(E,H,F);}D.fireFn=E;return D;},findListener:function(I,H){H=H||this.obj;var F=this.listeners;for(var G=0,D=F.length;G<D;G++){var E=F[G];if(E.fn==I&&E.scope==H){return G;}}return -1;},isListening:function(E,D){return this.findListener(E,D)!=-1;},removeListener:function(F,E){var D;if((D=this.findListener(F,E))!=-1){if(!this.firing){this.listeners.splice(D,1);}else{this.listeners=this.listeners.slice(0);this.listeners.splice(D,1);}return true;}return false;},clearListeners:function(){this.listeners=[];},fire:function(){var F=this.listeners,I,D=F.length;if(D>0){this.firing=true;var G=Array.prototype.slice.call(arguments,0);for(var H=0;H<D;H++){var E=F[H];if(E.fireFn.apply(E.scope||this.obj||window,arguments)===false){this.firing=false;return false;}}this.firing=false;}return true;}};})();Ext.EventManager=function(){var T,M,I=false;var K,S,C,O;var L=Ext.lib.Event;var N=Ext.lib.Dom;var B=function(){if(!I){I=true;Ext.isReady=true;if(M){clearInterval(M);}if(Ext.isGecko||Ext.isOpera){document.removeEventListener("DOMContentLoaded",B,false);}if(Ext.isIE){var D=document.getElementById("ie-deferred-loader");if(D){D.onreadystatechange=null;D.parentNode.removeChild(D);}}if(T){T.fire();T.clearListeners();}}};var A=function(){T=new Ext.util.Event();if(Ext.isGecko||Ext.isOpera){document.addEventListener("DOMContentLoaded",B,false);}else{if(Ext.isIE){document.write("<s"+'cript id="ie-deferred-loader" defer="defer" src="/'+'/:"></s'+"cript>");var D=document.getElementById("ie-deferred-loader");D.onreadystatechange=function(){if(this.readyState=="complete"){B();}};}else{if(Ext.isSafari){M=setInterval(function(){var E=document.readyState;if(E=="complete"){B();}},10);}}}L.on(window,"load",B);};var R=function(E,U){var D=new Ext.util.DelayedTask(E);return function(V){V=new Ext.EventObjectImpl(V);D.delay(U.buffer,E,null,[V]);};};var P=function(V,U,D,E){return function(W){Ext.EventManager.removeListener(U,D,E);V(W);};};var F=function(D,E){return function(U){U=new Ext.EventObjectImpl(U);setTimeout(function(){D(U);},E.delay||10);};};var J=function(U,E,D,Y,X){var Z=(!D||typeof D=="boolean")?{}:D;Y=Y||Z.fn;X=X||Z.scope;var W=Ext.getDom(U);if(!W){throw'Error listening for "'+E+'". Element "'+U+"\" doesn't exist.";}var V=function(b){b=Ext.EventObject.setEvent(b);var a;if(Z.delegate){a=b.getTarget(Z.delegate,W);if(!a){return ;}}else{a=b.target;}if(Z.stopEvent===true){b.stopEvent();}if(Z.preventDefault===true){b.preventDefault();}if(Z.stopPropagation===true){b.stopPropagation();}if(Z.normalized===false){b=b.browserEvent;}Y.call(X||W,b,a,Z);};if(Z.delay){V=F(V,Z);}if(Z.single){V=P(V,W,E,Y);}if(Z.buffer){V=R(V,Z);}Y._handlers=Y._handlers||[];Y._handlers.push([Ext.id(W),E,V]);L.on(W,E,V);if(E=="mousewheel"&&W.addEventListener){W.addEventListener("DOMMouseScroll",V,false);L.on(window,"unload",function(){W.removeEventListener("DOMMouseScroll",V,false);});}if(E=="mousedown"&&W==document){Ext.EventManager.stoppedMouseDownEvent.addListener(V);}return V;};var G=function(E,U,Z){var D=Ext.id(E),a=Z._handlers,X=Z;if(a){for(var V=0,Y=a.length;V<Y;V++){var W=a[V];if(W[0]==D&&W[1]==U){X=W[2];a.splice(V,1);break;}}}L.un(E,U,X);E=Ext.getDom(E);if(U=="mousewheel"&&E.addEventListener){E.removeEventListener("DOMMouseScroll",X,false);}if(U=="mousedown"&&E==document){Ext.EventManager.stoppedMouseDownEvent.removeListener(X);}};var H=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;var Q={addListener:function(U,D,W,V,E){if(typeof D=="object"){var Y=D;for(var X in Y){if(H.test(X)){continue;}if(typeof Y[X]=="function"){J(U,X,Y,Y[X],Y.scope);}else{J(U,X,Y[X]);}}return ;}return J(U,D,E,W,V);},removeListener:function(E,D,U){return G(E,D,U);},onDocumentReady:function(U,E,D){if(I){T.addListener(U,E,D);T.fire();T.clearListeners();return ;}if(!T){A();}T.addListener(U,E,D);},onWindowResize:function(U,E,D){if(!K){K=new Ext.util.Event();S=new Ext.util.DelayedTask(function(){K.fire(N.getViewWidth(),N.getViewHeight());});L.on(window,"resize",this.fireWindowResize,this);}K.addListener(U,E,D);},fireWindowResize:function(){if(K){if((Ext.isIE||Ext.isAir)&&S){S.delay(50);}else{K.fire(N.getViewWidth(),N.getViewHeight());}}},onTextResize:function(V,U,D){if(!C){C=new Ext.util.Event();var E=new Ext.Element(document.createElement("div"));E.dom.className="x-text-resize";E.dom.innerHTML="X";E.appendTo(document.body);O=E.dom.offsetHeight;setInterval(function(){if(E.dom.offsetHeight!=O){C.fire(O,O=E.dom.offsetHeight);}},this.textResizeInterval);}C.addListener(V,U,D);},removeResizeListener:function(E,D){if(K){K.removeListener(E,D);}},fireResize:function(){if(K){K.fire(N.getViewWidth(),N.getViewHeight());}},ieDeferSrc:false,textResizeInterval:50};Q.on=Q.addListener;Q.un=Q.removeListener;Q.stoppedMouseDownEvent=new Ext.util.Event();return Q;}();Ext.onReady=Ext.EventManager.onDocumentReady;Ext.onReady(function(){var B=Ext.getBody();if(!B){return ;}var A=[Ext.isIE?"ext-ie "+(Ext.isIE6?"ext-ie6":"ext-ie7"):Ext.isGecko?"ext-gecko":Ext.isOpera?"ext-opera":Ext.isSafari?"ext-safari":""];if(Ext.isMac){A.push("ext-mac");}if(Ext.isLinux){A.push("ext-linux");}if(Ext.isBorderBox){A.push("ext-border-box");}if(Ext.isStrict){var C=B.dom.parentNode;if(C){C.className+=" ext-strict";}}B.addClass(A.join(" "));});Ext.EventObject=function(){var B=Ext.lib.Event;var A={63234:37,63235:39,63232:38,63233:40,63276:33,63277:34,63272:46,63273:36,63275:35};var C=Ext.isIE?{1:0,4:1,2:2}:(Ext.isSafari?{1:0,2:1,3:2}:{0:0,1:1,2:2});Ext.EventObjectImpl=function(D){if(D){this.setEvent(D.browserEvent||D);}};Ext.EventObjectImpl.prototype={browserEvent:null,button:-1,shiftKey:false,ctrlKey:false,altKey:false,BACKSPACE:8,TAB:9,RETURN:13,ENTER:13,SHIFT:16,CONTROL:17,ESC:27,SPACE:32,PAGEUP:33,PAGEDOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46,F5:116,setEvent:function(D){if(D==this||(D&&D.browserEvent)){return D;}this.browserEvent=D;if(D){this.button=D.button?C[D.button]:(D.which?D.which-1:-1);if(D.type=="click"&&this.button==-1){this.button=0;}this.type=D.type;this.shiftKey=D.shiftKey;this.ctrlKey=D.ctrlKey||D.metaKey;this.altKey=D.altKey;this.keyCode=D.keyCode;this.charCode=D.charCode;this.target=B.getTarget(D);this.xy=B.getXY(D);}else{this.button=-1;this.shiftKey=false;this.ctrlKey=false;this.altKey=false;this.keyCode=0;this.charCode=0;this.target=null;this.xy=[0,0];}return this;},stopEvent:function(){if(this.browserEvent){if(this.browserEvent.type=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.fire(this);}B.stopEvent(this.browserEvent);}},preventDefault:function(){if(this.browserEvent){B.preventDefault(this.browserEvent);}},isNavKeyPress:function(){var D=this.keyCode;D=Ext.isSafari?(A[D]||D):D;return(D>=33&&D<=40)||D==this.RETURN||D==this.TAB||D==this.ESC;},isSpecialKey:function(){var D=this.keyCode;return(this.type=="keypress"&&this.ctrlKey)||D==9||D==13||D==40||D==27||(D==16)||(D==17)||(D>=18&&D<=20)||(D>=33&&D<=35)||(D>=36&&D<=39)||(D>=44&&D<=45);},stopPropagation:function(){if(this.browserEvent){if(this.browserEvent.type=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.fire(this);}B.stopPropagation(this.browserEvent);}},getCharCode:function(){return this.charCode||this.keyCode;},getKey:function(){var D=this.keyCode||this.charCode;return Ext.isSafari?(A[D]||D):D;},getPageX:function(){return this.xy[0];},getPageY:function(){return this.xy[1];},getTime:function(){if(this.browserEvent){return B.getTime(this.browserEvent);}return null;},getXY:function(){return this.xy;},getTarget:function(E,F,D){return E?Ext.fly(this.target).findParent(E,F,D):this.target;},getRelatedTarget:function(){if(this.browserEvent){return B.getRelatedTarget(this.browserEvent);}return null;},getWheelDelta:function(){var D=this.browserEvent;var E=0;if(D.wheelDelta){E=D.wheelDelta/120;}else{if(D.detail){E=-D.detail/3;}}return E;},hasModifier:function(){return((this.ctrlKey||this.altKey)||this.shiftKey)?true:false;},within:function(E,F){var D=this[F?"getRelatedTarget":"getTarget"]();return D&&Ext.fly(E).contains(D);},getPoint:function(){return new Ext.lib.Point(this.xy[0],this.xy[1]);}};return new Ext.EventObjectImpl();}();(function(){var D=Ext.lib.Dom;var E=Ext.lib.Event;var A=Ext.lib.Anim;var propCache={};var camelRe=/(-[a-z])/gi;var camelFn=function(m,a){return a.charAt(1).toUpperCase();};var view=document.defaultView;Ext.Element=function(element,forceNew){var dom=typeof element=="string"?document.getElementById(element):element;if(!dom){return null;}var id=dom.id;if(forceNew!==true&&id&&Ext.Element.cache[id]){return Ext.Element.cache[id];}this.dom=dom;this.id=id||Ext.id(dom);};var El=Ext.Element;El.prototype={originalDisplay:"",visibilityMode:1,defaultUnit:"px",setVisibilityMode:function(visMode){this.visibilityMode=visMode;return this;},enableDisplayMode:function(display){this.setVisibilityMode(El.DISPLAY);if(typeof display!="undefined"){this.originalDisplay=display;}return this;},findParent:function(simpleSelector,maxDepth,returnEl){var p=this.dom,b=document.body,depth=0,dq=Ext.DomQuery,stopEl;maxDepth=maxDepth||50;if(typeof maxDepth!="number"){stopEl=Ext.getDom(maxDepth);maxDepth=10;}while(p&&p.nodeType==1&&depth<maxDepth&&p!=b&&p!=stopEl){if(dq.is(p,simpleSelector)){return returnEl?Ext.get(p):p;}depth++;p=p.parentNode;}return null;},findParentNode:function(simpleSelector,maxDepth,returnEl){var p=Ext.fly(this.dom.parentNode,"_internal");return p?p.findParent(simpleSelector,maxDepth,returnEl):null;},up:function(simpleSelector,maxDepth){return this.findParentNode(simpleSelector,maxDepth,true);},is:function(simpleSelector){return Ext.DomQuery.is(this.dom,simpleSelector);},animate:function(args,duration,onComplete,easing,animType){this.anim(args,{duration:duration,callback:onComplete,easing:easing},animType);return this;},anim:function(args,opt,animType,defaultDur,defaultEase,cb){animType=animType||"run";opt=opt||{};var anim=Ext.lib.Anim[animType](this.dom,args,(opt.duration||defaultDur)||0.35,(opt.easing||defaultEase)||"easeOut",function(){Ext.callback(cb,this);Ext.callback(opt.callback,opt.scope||this,[this,opt]);},this);opt.anim=anim;return anim;},preanim:function(a,i){return !a[i]?false:(typeof a[i]=="object"?a[i]:{duration:a[i+1],callback:a[i+2],easing:a[i+3]});},clean:function(forceReclean){if(this.isCleaned&&forceReclean!==true){return this;}var ns=/\S/;var d=this.dom,n=d.firstChild,ni=-1;while(n){var nx=n.nextSibling;if(n.nodeType==3&&!ns.test(n.nodeValue)){d.removeChild(n);}else{n.nodeIndex=++ni;}n=nx;}this.isCleaned=true;return this;},scrollIntoView:function(container,hscroll){var c=Ext.getDom(container)||Ext.getBody().dom;var el=this.dom;var o=this.getOffsetsTo(c),l=o[0]+c.scrollLeft,t=o[1]+c.scrollTop,b=t+el.offsetHeight,r=l+el.offsetWidth;var ch=c.clientHeight;var ct=parseInt(c.scrollTop,10);var cl=parseInt(c.scrollLeft,10);var cb=ct+ch;var cr=cl+c.clientWidth;if(el.offsetHeight>ch||t<ct){c.scrollTop=t;}else{if(b>cb){c.scrollTop=b-ch;}}c.scrollTop=c.scrollTop;if(hscroll!==false){if(el.offsetWidth>c.clientWidth||l<cl){c.scrollLeft=l;}else{if(r>cr){c.scrollLeft=r-c.clientWidth;}}c.scrollLeft=c.scrollLeft;}return this;},scrollChildIntoView:function(child,hscroll){Ext.fly(child,"_scrollChildIntoView").scrollIntoView(this,hscroll);},autoHeight:function(animate,duration,onComplete,easing){var oldHeight=this.getHeight();this.clip();this.setHeight(1);setTimeout(function(){var height=parseInt(this.dom.scrollHeight,10);if(!animate){this.setHeight(height);this.unclip();if(typeof onComplete=="function"){onComplete();}}else{this.setHeight(oldHeight);this.setHeight(height,animate,duration,function(){this.unclip();if(typeof onComplete=="function"){onComplete();}}.createDelegate(this),easing);}}.createDelegate(this),0);return this;},contains:function(el){if(!el){return false;}return D.isAncestor(this.dom,el.dom?el.dom:el);},isVisible:function(deep){var vis=!(this.getStyle("visibility")=="hidden"||this.getStyle("display")=="none");if(deep!==true||!vis){return vis;}var p=this.dom.parentNode;while(p&&p.tagName.toLowerCase()!="body"){if(!Ext.fly(p,"_isVisible").isVisible()){return false;}p=p.parentNode;}return true;},select:function(selector,unique){return El.select(selector,unique,this.dom);},query:function(selector,unique){return Ext.DomQuery.select(selector,this.dom);},child:function(selector,returnDom){var n=Ext.DomQuery.selectNode(selector,this.dom);return returnDom?n:Ext.get(n);},down:function(selector,returnDom){var n=Ext.DomQuery.selectNode(" > "+selector,this.dom);return returnDom?n:Ext.get(n);},initDD:function(group,config,overrides){var dd=new Ext.dd.DD(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides);},initDDProxy:function(group,config,overrides){var dd=new Ext.dd.DDProxy(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides);},initDDTarget:function(group,config,overrides){var dd=new Ext.dd.DDTarget(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides);},setVisible:function(visible,animate){if(!animate||!A){if(this.visibilityMode==El.DISPLAY){this.setDisplayed(visible);}else{this.fixDisplay();this.dom.style.visibility=visible?"visible":"hidden";}}else{var dom=this.dom;var visMode=this.visibilityMode;if(visible){this.setOpacity(0.01);this.setVisible(true);}this.anim({opacity:{to:(visible?1:0)}},this.preanim(arguments,1),null,0.35,"easeIn",function(){if(!visible){if(visMode==El.DISPLAY){dom.style.display="none";}else{dom.style.visibility="hidden";}Ext.get(dom).setOpacity(1);}});}return this;},isDisplayed:function(){return this.getStyle("display")!="none";},toggle:function(animate){this.setVisible(!this.isVisible(),this.preanim(arguments,0));return this;},setDisplayed:function(value){if(typeof value=="boolean"){value=value?this.originalDisplay:"none";}this.setStyle("display",value);return this;},focus:function(){try{this.dom.focus();}catch(e){}return this;},blur:function(){try{this.dom.blur();}catch(e){}return this;},addClass:function(className){if(className instanceof Array){for(var i=0,len=className.length;i<len;i++){this.addClass(className[i]);}}else{if(className&&!this.hasClass(className)){this.dom.className=this.dom.className+" "+className;}}return this;},radioClass:function(className){var siblings=this.dom.parentNode.childNodes;for(var i=0;i<siblings.length;i++){var s=siblings[i];if(s.nodeType==1){Ext.get(s).removeClass(className);}}this.addClass(className);return this;},removeClass:function(className){if(!className||!this.dom.className){return this;}if(className instanceof Array){for(var i=0,len=className.length;i<len;i++){this.removeClass(className[i]);}}else{if(this.hasClass(className)){var re=this.classReCache[className];if(!re){re=new RegExp("(?:^|\\s+)"+className+"(?:\\s+|$)","g");this.classReCache[className]=re;}this.dom.className=this.dom.className.replace(re," ");}}return this;},classReCache:{},toggleClass:function(className){if(this.hasClass(className)){this.removeClass(className);}else{this.addClass(className);}return this;},hasClass:function(className){return className&&(" "+this.dom.className+" ").indexOf(" "+className+" ")!=-1;},replaceClass:function(oldClassName,newClassName){this.removeClass(oldClassName);this.addClass(newClassName);return this;},getStyles:function(){var a=arguments,len=a.length,r={};for(var i=0;i<len;i++){r[a[i]]=this.getStyle(a[i]);}return r;},getStyle:function(){return view&&view.getComputedStyle?function(prop){var el=this.dom,v,cs,camel;if(prop=="float"){prop="cssFloat";}if(v=el.style[prop]){return v;}if(cs=view.getComputedStyle(el,"")){if(!(camel=propCache[prop])){camel=propCache[prop]=prop.replace(camelRe,camelFn);}return cs[camel];}return null;}:function(prop){var el=this.dom,v,cs,camel;if(prop=="opacity"){if(typeof el.style.filter=="string"){var m=el.style.filter.match(/alpha\(opacity=(.*)\)/i);if(m){var fv=parseFloat(m[1]);if(!isNaN(fv)){return fv?fv/100:0;}}}return 1;}else{if(prop=="float"){prop="styleFloat";}}if(!(camel=propCache[prop])){camel=propCache[prop]=prop.replace(camelRe,camelFn);}if(v=el.style[camel]){return v;}if(cs=el.currentStyle){return cs[camel];}return null;};}(),setStyle:function(prop,value){if(typeof prop=="string"){var camel;if(!(camel=propCache[prop])){camel=propCache[prop]=prop.replace(camelRe,camelFn);}if(camel=="opacity"){this.setOpacity(value);}else{this.dom.style[camel]=value;}}else{for(var style in prop){if(typeof prop[style]!="function"){this.setStyle(style,prop[style]);}}}return this;},applyStyles:function(style){Ext.DomHelper.applyStyles(this.dom,style);return this;},getX:function(){return D.getX(this.dom);},getY:function(){return D.getY(this.dom);},getXY:function(){return D.getXY(this.dom);},getOffsetsTo:function(el){var o=this.getXY();var e=Ext.fly(el,"_internal").getXY();return[o[0]-e[0],o[1]-e[1]];},setX:function(x,animate){if(!animate||!A){D.setX(this.dom,x);}else{this.setXY([x,this.getY()],this.preanim(arguments,1));}return this;},setY:function(y,animate){if(!animate||!A){D.setY(this.dom,y);}else{this.setXY([this.getX(),y],this.preanim(arguments,1));}return this;},setLeft:function(left){this.setStyle("left",this.addUnits(left));return this;},setTop:function(top){this.setStyle("top",this.addUnits(top));return this;},setRight:function(right){this.setStyle("right",this.addUnits(right));return this;},setBottom:function(bottom){this.setStyle("bottom",this.addUnits(bottom));return this;},setXY:function(pos,animate){if(!animate||!A){D.setXY(this.dom,pos);}else{this.anim({points:{to:pos}},this.preanim(arguments,1),"motion");}return this;},setLocation:function(x,y,animate){this.setXY([x,y],this.preanim(arguments,2));return this;},moveTo:function(x,y,animate){this.setXY([x,y],this.preanim(arguments,2));return this;},getRegion:function(){return D.getRegion(this.dom);},getHeight:function(contentHeight){var h=this.dom.offsetHeight||0;h=contentHeight!==true?h:h-this.getBorderWidth("tb")-this.getPadding("tb");return h<0?0:h;},getWidth:function(contentWidth){var w=this.dom.offsetWidth||0;w=contentWidth!==true?w:w-this.getBorderWidth("lr")-this.getPadding("lr");return w<0?0:w;},getComputedHeight:function(){var h=Math.max(this.dom.offsetHeight,this.dom.clientHeight);if(!h){h=parseInt(this.getStyle("height"),10)||0;if(!this.isBorderBox()){h+=this.getFrameWidth("tb");}}return h;},getComputedWidth:function(){var w=Math.max(this.dom.offsetWidth,this.dom.clientWidth);if(!w){w=parseInt(this.getStyle("width"),10)||0;if(!this.isBorderBox()){w+=this.getFrameWidth("lr");}}return w;},getSize:function(contentSize){return{width:this.getWidth(contentSize),height:this.getHeight(contentSize)};},getStyleSize:function(){var w,h,d=this.dom,s=d.style;if(s.width&&s.width!="auto"){w=parseInt(s.width,10);if(Ext.isBorderBox){w-=this.getFrameWidth("lr");}}if(s.height&&s.height!="auto"){h=parseInt(s.height,10);if(Ext.isBorderBox){h-=this.getFrameWidth("tb");}}return{width:w||this.getWidth(true),height:h||this.getHeight(true)};},getViewSize:function(){var d=this.dom,doc=document,aw=0,ah=0;if(d==doc||d==doc.body){return{width:D.getViewWidth(),height:D.getViewHeight()};}else{return{width:d.clientWidth,height:d.clientHeight};}},getValue:function(asNumber){return asNumber?parseInt(this.dom.value,10):this.dom.value;},adjustWidth:function(width){if(typeof width=="number"){if(this.autoBoxAdjust&&!this.isBorderBox()){width-=(this.getBorderWidth("lr")+this.getPadding("lr"));}if(width<0){width=0;}}return width;},adjustHeight:function(height){if(typeof height=="number"){if(this.autoBoxAdjust&&!this.isBorderBox()){height-=(this.getBorderWidth("tb")+this.getPadding("tb"));}if(height<0){height=0;}}return height;},setWidth:function(width,animate){width=this.adjustWidth(width);if(!animate||!A){this.dom.style.width=this.addUnits(width);}else{this.anim({width:{to:width}},this.preanim(arguments,1));}return this;},setHeight:function(height,animate){height=this.adjustHeight(height);if(!animate||!A){this.dom.style.height=this.addUnits(height);}else{this.anim({height:{to:height}},this.preanim(arguments,1));}return this;},setSize:function(width,height,animate){if(typeof width=="object"){height=width.height;width=width.width;}width=this.adjustWidth(width);height=this.adjustHeight(height);if(!animate||!A){this.dom.style.width=this.addUnits(width);this.dom.style.height=this.addUnits(height);}else{this.anim({width:{to:width},height:{to:height}},this.preanim(arguments,2));}return this;},setBounds:function(x,y,width,height,animate){if(!animate||!A){this.setSize(width,height);this.setLocation(x,y);}else{width=this.adjustWidth(width);height=this.adjustHeight(height);this.anim({points:{to:[x,y]},width:{to:width},height:{to:height}},this.preanim(arguments,4),"motion");}return this;},setRegion:function(region,animate){this.setBounds(region.left,region.top,region.right-region.left,region.bottom-region.top,this.preanim(arguments,1));return this;},addListener:function(eventName,fn,scope,options){Ext.EventManager.on(this.dom,eventName,fn,scope||this,options);},removeListener:function(eventName,fn){Ext.EventManager.removeListener(this.dom,eventName,fn);return this;},removeAllListeners:function(){E.purgeElement(this.dom);return this;},relayEvent:function(eventName,observable){this.on(eventName,function(e){observable.fireEvent(eventName,e);});},setOpacity:function(opacity,animate){if(!animate||!A){var s=this.dom.style;if(Ext.isIE){s.zoom=1;s.filter=(s.filter||"").replace(/alpha\([^\)]*\)/gi,"")+(opacity==1?"":" alpha(opacity="+opacity*100+")");}else{s.opacity=opacity;}}else{this.anim({opacity:{to:opacity}},this.preanim(arguments,1),null,0.35,"easeIn");}return this;},getLeft:function(local){if(!local){return this.getX();}else{return parseInt(this.getStyle("left"),10)||0;}},getRight:function(local){if(!local){return this.getX()+this.getWidth();}else{return(this.getLeft(true)+this.getWidth())||0;}},getTop:function(local){if(!local){return this.getY();}else{return parseInt(this.getStyle("top"),10)||0;}},getBottom:function(local){if(!local){return this.getY()+this.getHeight();}else{return(this.getTop(true)+this.getHeight())||0;}},position:function(pos,zIndex,x,y){if(!pos){if(this.getStyle("position")=="static"){this.setStyle("position","relative");}}else{this.setStyle("position",pos);}if(zIndex){this.setStyle("z-index",zIndex);}if(x!==undefined&&y!==undefined){this.setXY([x,y]);}else{if(x!==undefined){this.setX(x);}else{if(y!==undefined){this.setY(y);}}}},clearPositioning:function(value){value=value||"";this.setStyle({"left":value,"right":value,"top":value,"bottom":value,"z-index":"","position":"static"});return this;},getPositioning:function(){var l=this.getStyle("left");var t=this.getStyle("top");return{"position":this.getStyle("position"),"left":l,"right":l?"":this.getStyle("right"),"top":t,"bottom":t?"":this.getStyle("bottom"),"z-index":this.getStyle("z-index")};},getBorderWidth:function(side){return this.addStyles(side,El.borders);},getPadding:function(side){return this.addStyles(side,El.paddings);},setPositioning:function(pc){this.applyStyles(pc);if(pc.right=="auto"){this.dom.style.right="";}if(pc.bottom=="auto"){this.dom.style.bottom="";}return this;},fixDisplay:function(){if(this.getStyle("display")=="none"){this.setStyle("visibility","hidden");this.setStyle("display",this.originalDisplay);if(this.getStyle("display")=="none"){this.setStyle("display","block");}}},setLeftTop:function(left,top){this.dom.style.left=this.addUnits(left);this.dom.style.top=this.addUnits(top);return this;},move:function(direction,distance,animate){var xy=this.getXY();direction=direction.toLowerCase();switch(direction){case"l":case"left":this.moveTo(xy[0]-distance,xy[1],this.preanim(arguments,2));break;case"r":case"right":this.moveTo(xy[0]+distance,xy[1],this.preanim(arguments,2));break;case"t":case"top":case"up":this.moveTo(xy[0],xy[1]-distance,this.preanim(arguments,2));break;case"b":case"bottom":case"down":this.moveTo(xy[0],xy[1]+distance,this.preanim(arguments,2));break;}return this;},clip:function(){if(!this.isClipped){this.isClipped=true;this.originalClip={"o":this.getStyle("overflow"),"x":this.getStyle("overflow-x"),"y":this.getStyle("overflow-y")};this.setStyle("overflow","hidden");this.setStyle("overflow-x","hidden");this.setStyle("overflow-y","hidden");}return this;},unclip:function(){if(this.isClipped){this.isClipped=false;var o=this.originalClip;if(o.o){this.setStyle("overflow",o.o);}if(o.x){this.setStyle("overflow-x",o.x);}if(o.y){this.setStyle("overflow-y",o.y);}}return this;},getAnchorXY:function(anchor,local,s){var w,h,vp=false;if(!s){var d=this.dom;if(d==document.body||d==document){vp=true;w=D.getViewWidth();h=D.getViewHeight();}else{w=this.getWidth();h=this.getHeight();}}else{w=s.width;h=s.height;}var x=0,y=0,r=Math.round;switch((anchor||"tl").toLowerCase()){case"c":x=r(w*0.5);y=r(h*0.5);break;case"t":x=r(w*0.5);y=0;break;case"l":x=0;y=r(h*0.5);break;case"r":x=w;y=r(h*0.5);break;case"b":x=r(w*0.5);y=h;break;case"tl":x=0;y=0;break;case"bl":x=0;y=h;break;case"br":x=w;y=h;break;case"tr":x=w;y=0;break;}if(local===true){return[x,y];}if(vp){var sc=this.getScroll();return[x+sc.left,y+sc.top];}var o=this.getXY();return[x+o[0],y+o[1]];},getAlignToXY:function(el,p,o){el=Ext.get(el);var d=this.dom;if(!el.dom){throw"Element.alignTo with an element that doesn't exist";}var c=false;var p1="",p2="";o=o||[0,0];if(!p){p="tl-bl";}else{if(p=="?"){p="tl-bl?";}else{if(p.indexOf("-")==-1){p="tl-"+p;}}}p=p.toLowerCase();var m=p.match(/^([a-z]+)-([a-z]+)(\?)?$/);if(!m){throw"Element.alignTo with an invalid alignment "+p;}p1=m[1];p2=m[2];c=!!m[3];var a1=this.getAnchorXY(p1,true);var a2=el.getAnchorXY(p2,false);var x=a2[0]-a1[0]+o[0];var y=a2[1]-a1[1]+o[1];if(c){var w=this.getWidth(),h=this.getHeight(),r=el.getRegion();var dw=D.getViewWidth()-5,dh=D.getViewHeight()-5;var p1y=p1.charAt(0),p1x=p1.charAt(p1.length-1);var p2y=p2.charAt(0),p2x=p2.charAt(p2.length-1);var swapY=((p1y=="t"&&p2y=="b")||(p1y=="b"&&p2y=="t"));var swapX=((p1x=="r"&&p2x=="l")||(p1x=="l"&&p2x=="r"));var doc=document;var scrollX=(doc.documentElement.scrollLeft||doc.body.scrollLeft||0)+5;var scrollY=(doc.documentElement.scrollTop||doc.body.scrollTop||0)+5;if((x+w)>dw+scrollX){x=swapX?r.left-w:dw+scrollX-w;}if(x<scrollX){x=swapX?r.right:scrollX;}if((y+h)>dh+scrollY){y=swapY?r.top-h:dh+scrollY-h;}if(y<scrollY){y=swapY?r.bottom:scrollY;}}return[x,y];},getConstrainToXY:function(){var os={top:0,left:0,bottom:0,right:0};return function(el,local,offsets,proposedXY){el=Ext.get(el);offsets=offsets?Ext.applyIf(offsets,os):os;var vw,vh,vx=0,vy=0;if(el.dom==document.body||el.dom==document){vw=Ext.lib.Dom.getViewWidth();vh=Ext.lib.Dom.getViewHeight();}else{vw=el.dom.clientWidth;vh=el.dom.clientHeight;if(!local){var vxy=el.getXY();vx=vxy[0];vy=vxy[1];}}var s=el.getScroll();vx+=offsets.left+s.left;vy+=offsets.top+s.top;vw-=offsets.right;vh-=offsets.bottom;var vr=vx+vw;var vb=vy+vh;var xy=proposedXY||(!local?this.getXY():[this.getLeft(true),this.getTop(true)]);var x=xy[0],y=xy[1];var w=this.dom.offsetWidth,h=this.dom.offsetHeight;var moved=false;if((x+w)>vr){x=vr-w;moved=true;}if((y+h)>vb){y=vb-h;moved=true;}if(x<vx){x=vx;moved=true;}if(y<vy){y=vy;moved=true;}return moved?[x,y]:false;};}(),adjustForConstraints:function(xy,parent,offsets){return this.getConstrainToXY(parent||document,false,offsets,xy)||xy;},alignTo:function(element,position,offsets,animate){var xy=this.getAlignToXY(element,position,offsets);this.setXY(xy,this.preanim(arguments,3));return this;},anchorTo:function(el,alignment,offsets,animate,monitorScroll,callback){var action=function(){this.alignTo(el,alignment,offsets,animate);Ext.callback(callback,this);};Ext.EventManager.onWindowResize(action,this);var tm=typeof monitorScroll;if(tm!="undefined"){Ext.EventManager.on(window,"scroll",action,this,{buffer:tm=="number"?monitorScroll:50});}action.call(this);return this;},clearOpacity:function(){if(window.ActiveXObject){if(typeof this.dom.style.filter=="string"&&(/alpha/i).test(this.dom.style.filter)){this.dom.style.filter="";}}else{this.dom.style.opacity="";this.dom.style["-moz-opacity"]="";this.dom.style["-khtml-opacity"]="";}return this;},hide:function(animate){this.setVisible(false,this.preanim(arguments,0));return this;},show:function(animate){this.setVisible(true,this.preanim(arguments,0));return this;},addUnits:function(size){return Ext.Element.addUnits(size,this.defaultUnit);},update:function(html,loadScripts,callback){if(typeof html=="undefined"){html="";}if(loadScripts!==true){this.dom.innerHTML=html;if(typeof callback=="function"){callback();}return this;}var id=Ext.id();var dom=this.dom;html+='<span id="'+id+'"></span>';E.onAvailable(id,function(){var hd=document.getElementsByTagName("head")[0];var re=/(?:<script([^>]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig;var srcRe=/\ssrc=([\'\"])(.*?)\1/i;var typeRe=/\stype=([\'\"])(.*?)\1/i;var match;while(match=re.exec(html)){var attrs=match[1];var srcMatch=attrs?attrs.match(srcRe):false;if(srcMatch&&srcMatch[2]){var s=document.createElement("script");s.src=srcMatch[2];var typeMatch=attrs.match(typeRe);if(typeMatch&&typeMatch[2]){s.type=typeMatch[2];}hd.appendChild(s);}else{if(match[2]&&match[2].length>0){if(window.execScript){window.execScript(match[2]);}else{window.eval(match[2]);}}}}var el=document.getElementById(id);if(el){Ext.removeNode(el);}if(typeof callback=="function"){callback();}});dom.innerHTML=html.replace(/(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)/ig,"");return this;},load:function(){var um=this.getUpdater();um.update.apply(um,arguments);return this;},getUpdater:function(){if(!this.updateManager){this.updateManager=new Ext.Updater(this);}return this.updateManager;},unselectable:function(){this.dom.unselectable="on";this.swallowEvent("selectstart",true);this.applyStyles("-moz-user-select:none;-khtml-user-select:none;");this.addClass("x-unselectable");return this;},getCenterXY:function(){return this.getAlignToXY(document,"c-c");},center:function(centerIn){this.alignTo(centerIn||document,"c-c");return this;},isBorderBox:function(){return noBoxAdjust[this.dom.tagName.toLowerCase()]||Ext.isBorderBox;},getBox:function(contentBox,local){var xy;if(!local){xy=this.getXY();}else{var left=parseInt(this.getStyle("left"),10)||0;var top=parseInt(this.getStyle("top"),10)||0;xy=[left,top];}var el=this.dom,w=el.offsetWidth,h=el.offsetHeight,bx;if(!contentBox){bx={x:xy[0],y:xy[1],0:xy[0],1:xy[1],width:w,height:h};}else{var l=this.getBorderWidth("l")+this.getPadding("l");var r=this.getBorderWidth("r")+this.getPadding("r");var t=this.getBorderWidth("t")+this.getPadding("t");var b=this.getBorderWidth("b")+this.getPadding("b");bx={x:xy[0]+l,y:xy[1]+t,0:xy[0]+l,1:xy[1]+t,width:w-(l+r),height:h-(t+b)};}bx.right=bx.x+bx.width;bx.bottom=bx.y+bx.height;return bx;},getFrameWidth:function(sides,onlyContentBox){return onlyContentBox&&Ext.isBorderBox?0:(this.getPadding(sides)+this.getBorderWidth(sides));},setBox:function(box,adjust,animate){var w=box.width,h=box.height;if((adjust&&!this.autoBoxAdjust)&&!this.isBorderBox()){w-=(this.getBorderWidth("lr")+this.getPadding("lr"));h-=(this.getBorderWidth("tb")+this.getPadding("tb"));}this.setBounds(box.x,box.y,w,h,this.preanim(arguments,2));return this;},repaint:function(){var dom=this.dom;this.addClass("x-repaint");setTimeout(function(){Ext.get(dom).removeClass("x-repaint");},1);return this;},getMargins:function(side){if(!side){return{top:parseInt(this.getStyle("margin-top"),10)||0,left:parseInt(this.getStyle("margin-left"),10)||0,bottom:parseInt(this.getStyle("margin-bottom"),10)||0,right:parseInt(this.getStyle("margin-right"),10)||0};}else{return this.addStyles(side,El.margins);}},addStyles:function(sides,styles){var val=0,v,w;for(var i=0,len=sides.length;i<len;i++){v=this.getStyle(styles[sides.charAt(i)]);if(v){w=parseInt(v,10);if(w){val+=(w>=0?w:-1*w);}}}return val;},createProxy:function(config,renderTo,matchBox){config=typeof config=="object"?config:{tag:"div",cls:config};var proxy;if(renderTo){proxy=Ext.DomHelper.append(renderTo,config,true);}else{proxy=Ext.DomHelper.insertBefore(this.dom,config,true);}if(matchBox){proxy.setBox(this.getBox());}return proxy;},mask:function(msg,msgCls){if(this.getStyle("position")=="static"){this.setStyle("position","relative");}if(this._maskMsg){this._maskMsg.remove();}if(this._mask){this._mask.remove();}this._mask=Ext.DomHelper.append(this.dom,{cls:"ext-el-mask"},true);this.addClass("x-masked");this._mask.setDisplayed(true);if(typeof msg=="string"){this._maskMsg=Ext.DomHelper.append(this.dom,{cls:"ext-el-mask-msg",cn:{tag:"div"}},true);var mm=this._maskMsg;mm.dom.className=msgCls?"ext-el-mask-msg "+msgCls:"ext-el-mask-msg";mm.dom.firstChild.innerHTML=msg;mm.setDisplayed(true);mm.center(this);}if(Ext.isIE&&!(Ext.isIE7&&Ext.isStrict)&&this.getStyle("height")=="auto"){this._mask.setSize(this.dom.clientWidth,this.getHeight());}return this._mask;},unmask:function(){if(this._mask){if(this._maskMsg){this._maskMsg.remove();delete this._maskMsg;}this._mask.remove();delete this._mask;}this.removeClass("x-masked");},isMasked:function(){return this._mask&&this._mask.isVisible();},createShim:function(){var el=document.createElement("iframe");el.frameBorder="no";el.className="ext-shim";if(Ext.isIE&&Ext.isSecure){el.src=Ext.SSL_SECURE_URL;}var shim=Ext.get(this.dom.parentNode.insertBefore(el,this.dom));shim.autoBoxAdjust=false;return shim;},remove:function(){Ext.removeNode(this.dom);delete El.cache[this.dom.id];},hover:function(overFn,outFn,scope){var preOverFn=function(e){if(!e.within(this,true)){overFn.apply(scope||this,arguments);}};var preOutFn=function(e){if(!e.within(this,true)){outFn.apply(scope||this,arguments);}};this.on("mouseover",preOverFn,this.dom);this.on("mouseout",preOutFn,this.dom);return this;},addClassOnOver:function(className,preventFlicker){this.hover(function(){Ext.fly(this,"_internal").addClass(className);},function(){Ext.fly(this,"_internal").removeClass(className);});return this;},addClassOnFocus:function(className){this.on("focus",function(){Ext.fly(this,"_internal").addClass(className);},this.dom);this.on("blur",function(){Ext.fly(this,"_internal").removeClass(className);},this.dom);return this;},addClassOnClick:function(className){var dom=this.dom;this.on("mousedown",function(){Ext.fly(dom,"_internal").addClass(className);var d=Ext.getDoc();var fn=function(){Ext.fly(dom,"_internal").removeClass(className);d.removeListener("mouseup",fn);};d.on("mouseup",fn);});return this;},swallowEvent:function(eventName,preventDefault){var fn=function(e){e.stopPropagation();if(preventDefault){e.preventDefault();}};if(eventName instanceof Array){for(var i=0,len=eventName.length;i<len;i++){this.on(eventName[i],fn);}return this;}this.on(eventName,fn);return this;},parent:function(selector,returnDom){return this.matchNode("parentNode","parentNode",selector,returnDom);},next:function(selector,returnDom){return this.matchNode("nextSibling","nextSibling",selector,returnDom);},prev:function(selector,returnDom){return this.matchNode("previousSibling","previousSibling",selector,returnDom);},first:function(selector,returnDom){return this.matchNode("nextSibling","firstChild",selector,returnDom);},last:function(selector,returnDom){return this.matchNode("previousSibling","lastChild",selector,returnDom);},matchNode:function(dir,start,selector,returnDom){var n=this.dom[start];while(n){if(n.nodeType==1&&(!selector||Ext.DomQuery.is(n,selector))){return !returnDom?Ext.get(n):n;}n=n[dir];}return null;},appendChild:function(el){el=Ext.get(el);el.appendTo(this);return this;},createChild:function(config,insertBefore,returnDom){config=config||{tag:"div"};if(insertBefore){return Ext.DomHelper.insertBefore(insertBefore,config,returnDom!==true);}return Ext.DomHelper[!this.dom.firstChild?"overwrite":"append"](this.dom,config,returnDom!==true);},appendTo:function(el){el=Ext.getDom(el);el.appendChild(this.dom);return this;},insertBefore:function(el){el=Ext.getDom(el);el.parentNode.insertBefore(this.dom,el);return this;},insertAfter:function(el){el=Ext.getDom(el);el.parentNode.insertBefore(this.dom,el.nextSibling);return this;},insertFirst:function(el,returnDom){el=el||{};if(typeof el=="object"&&!el.nodeType){return this.createChild(el,this.dom.firstChild,returnDom);}else{el=Ext.getDom(el);this.dom.insertBefore(el,this.dom.firstChild);return !returnDom?Ext.get(el):el;}},insertSibling:function(el,where,returnDom){var rt;if(el instanceof Array){for(var i=0,len=el.length;i<len;i++){rt=this.insertSibling(el[i],where,returnDom);}return rt;}where=where?where.toLowerCase():"before";el=el||{};var refNode=where=="before"?this.dom:this.dom.nextSibling;if(typeof el=="object"&&!el.nodeType){if(where=="after"&&!this.dom.nextSibling){rt=Ext.DomHelper.append(this.dom.parentNode,el,!returnDom);}else{rt=Ext.DomHelper[where=="after"?"insertAfter":"insertBefore"](this.dom,el,!returnDom);}}else{rt=this.dom.parentNode.insertBefore(Ext.getDom(el),refNode);if(!returnDom){rt=Ext.get(rt);}}return rt;},wrap:function(config,returnDom){if(!config){config={tag:"div"};}var newEl=Ext.DomHelper.insertBefore(this.dom,config,!returnDom);newEl.dom?newEl.dom.appendChild(this.dom):newEl.appendChild(this.dom);return newEl;},replace:function(el){el=Ext.get(el);this.insertBefore(el);el.remove();return this;},replaceWith:function(el){if(typeof el=="object"&&!el.nodeType){el=this.insertSibling(el,"before");}else{el=Ext.getDom(el);this.dom.parentNode.insertBefore(el,this.dom);}El.uncache(this.id);this.dom.parentNode.removeChild(this.dom);this.dom=el;this.id=Ext.id(el);El.cache[this.id]=this;return this;},insertHtml:function(where,html,returnEl){var el=Ext.DomHelper.insertHtml(where,this.dom,html);return returnEl?Ext.get(el):el;},set:function(o,useSet){var el=this.dom;useSet=typeof useSet=="undefined"?(el.setAttribute?true:false):useSet;for(var attr in o){if(attr=="style"||typeof o[attr]=="function"){continue;}if(attr=="cls"){el.className=o["cls"];}else{if(o.hasOwnProperty(attr)){if(useSet){el.setAttribute(attr,o[attr]);}else{el[attr]=o[attr];}}}}if(o.style){Ext.DomHelper.applyStyles(el,o.style);}return this;},addKeyListener:function(key,fn,scope){var config;if(typeof key!="object"||key instanceof Array){config={key:key,fn:fn,scope:scope};}else{config={key:key.key,shift:key.shift,ctrl:key.ctrl,alt:key.alt,fn:fn,scope:scope};}return new Ext.KeyMap(this,config);},addKeyMap:function(config){return new Ext.KeyMap(this,config);},isScrollable:function(){var dom=this.dom;return dom.scrollHeight>dom.clientHeight||dom.scrollWidth>dom.clientWidth;},scrollTo:function(side,value,animate){var prop=side.toLowerCase()=="left"?"scrollLeft":"scrollTop";if(!animate||!A){this.dom[prop]=value;}else{var to=prop=="scrollLeft"?[value,this.dom.scrollTop]:[this.dom.scrollLeft,value];this.anim({scroll:{"to":to}},this.preanim(arguments,2),"scroll");}return this;},scroll:function(direction,distance,animate){if(!this.isScrollable()){return ;}var el=this.dom;var l=el.scrollLeft,t=el.scrollTop;var w=el.scrollWidth,h=el.scrollHeight;var cw=el.clientWidth,ch=el.clientHeight;direction=direction.toLowerCase();var scrolled=false;var a=this.preanim(arguments,2);switch(direction){case"l":case"left":if(w-l>cw){var v=Math.min(l+distance,w-cw);this.scrollTo("left",v,a);scrolled=true;}break;case"r":case"right":if(l>0){var v=Math.max(l-distance,0);this.scrollTo("left",v,a);scrolled=true;}break;case"t":case"top":case"up":if(t>0){var v=Math.max(t-distance,0);this.scrollTo("top",v,a);scrolled=true;}break;case"b":case"bottom":case"down":if(h-t>ch){var v=Math.min(t+distance,h-ch);this.scrollTo("top",v,a);scrolled=true;}break;}return scrolled;},translatePoints:function(x,y){if(typeof x=="object"||x instanceof Array){y=x[1];x=x[0];}var p=this.getStyle("position");var o=this.getXY();var l=parseInt(this.getStyle("left"),10);var t=parseInt(this.getStyle("top"),10);if(isNaN(l)){l=(p=="relative")?0:this.dom.offsetLeft;}if(isNaN(t)){t=(p=="relative")?0:this.dom.offsetTop;}return{left:(x-o[0]+l),top:(y-o[1]+t)};},getScroll:function(){var d=this.dom,doc=document;if(d==doc||d==doc.body){var l,t;if(Ext.isIE&&Ext.isStrict){l=doc.documentElement.scrollLeft||(doc.body.scrollLeft||0);t=doc.documentElement.scrollTop||(doc.body.scrollTop||0);}else{l=window.pageXOffset||(doc.body.scrollLeft||0);t=window.pageYOffset||(doc.body.scrollTop||0);}return{left:l,top:t};}else{return{left:d.scrollLeft,top:d.scrollTop};}},getColor:function(attr,defaultValue,prefix){var v=this.getStyle(attr);if(!v||v=="transparent"||v=="inherit"){return defaultValue;}var color=typeof prefix=="undefined"?"#":prefix;if(v.substr(0,4)=="rgb("){var rvs=v.slice(4,v.length-1).split(",");for(var i=0;i<3;i++){var h=parseInt(rvs[i]).toString(16);if(h<16){h="0"+h;}color+=h;}}else{if(v.substr(0,1)=="#"){if(v.length==4){for(var i=1;i<4;i++){var c=v.charAt(i);color+=c+c;}}else{if(v.length==7){color+=v.substr(1);}}}}return(color.length>5?color.toLowerCase():defaultValue);},boxWrap:function(cls){cls=cls||"x-box";var el=Ext.get(this.insertHtml("beforeBegin",String.format('<div class="{0}">'+El.boxMarkup+"</div>",cls)));el.child("."+cls+"-mc").dom.appendChild(this.dom);return el;},getAttributeNS:Ext.isIE?function(ns,name){var d=this.dom;var type=typeof d[ns+":"+name];if(type!="undefined"&&type!="unknown"){return d[ns+":"+name];}return d[name];}:function(ns,name){var d=this.dom;return d.getAttributeNS(ns,name)||d.getAttribute(ns+":"+name)||d.getAttribute(name)||d[name];},getTextWidth:function(text,min,max){return(Ext.util.TextMetrics.measure(this.dom,Ext.value(text,this.dom.innerHTML,true)).width).constrain(min||0,max||1000000);}};var ep=El.prototype;ep.on=ep.addListener;ep.mon=ep.addListener;ep.getUpdateManager=ep.getUpdater;ep.un=ep.removeListener;ep.autoBoxAdjust=true;El.unitPattern=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i;El.addUnits=function(v,defaultUnit){if(v===""||v=="auto"){return v;}if(v===undefined){return"";}if(typeof v=="number"||!El.unitPattern.test(v)){return v+(defaultUnit||"px");}return v;};El.boxMarkup='<div class="{0}-tl"><div class="{0}-tr"><div class="{0}-tc"></div></div></div><div class="{0}-ml"><div class="{0}-mr"><div class="{0}-mc"></div></div></div><div class="{0}-bl"><div class="{0}-br"><div class="{0}-bc"></div></div></div>';El.VISIBILITY=1;El.DISPLAY=2;El.borders={l:"border-left-width",r:"border-right-width",t:"border-top-width",b:"border-bottom-width"};El.paddings={l:"padding-left",r:"padding-right",t:"padding-top",b:"padding-bottom"};El.margins={l:"margin-left",r:"margin-right",t:"margin-top",b:"margin-bottom"};El.cache={};var docEl;El.get=function(el){var ex,elm,id;if(!el){return null;}if(typeof el=="string"){if(!(elm=document.getElementById(el))){return null;}if(ex=El.cache[el]){ex.dom=elm;}else{ex=El.cache[el]=new El(elm);}return ex;}else{if(el.tagName){if(!(id=el.id)){id=Ext.id(el);}if(ex=El.cache[id]){ex.dom=el;}else{ex=El.cache[id]=new El(el);}return ex;}else{if(el instanceof El){if(el!=docEl){el.dom=document.getElementById(el.id)||el.dom;El.cache[el.id]=el;}return el;}else{if(el.isComposite){return el;}else{if(el instanceof Array){return El.select(el);}else{if(el==document){if(!docEl){var f=function(){};f.prototype=El.prototype;docEl=new f();docEl.dom=document;}return docEl;}}}}}}return null;};El.uncache=function(el){for(var i=0,a=arguments,len=a.length;i<len;i++){if(a[i]){delete El.cache[a[i].id||a[i]];}}};El.garbageCollect=function(){if(!Ext.enableGarbageCollector){clearInterval(El.collectorThread);return ;}for(var eid in El.cache){var el=El.cache[eid],d=el.dom;if(!d||!d.parentNode||(!d.offsetParent&&!document.getElementById(eid))){delete El.cache[eid];if(d&&Ext.enableListenerCollection){E.purgeElement(d);}}}};El.collectorThreadId=setInterval(El.garbageCollect,30000);var flyFn=function(){};flyFn.prototype=El.prototype;var _cls=new flyFn();El.Flyweight=function(dom){this.dom=dom;};El.Flyweight.prototype=_cls;El.Flyweight.prototype.isFlyweight=true;El._flyweights={};El.fly=function(el,named){named=named||"_global";el=Ext.getDom(el);if(!el){return null;}if(!El._flyweights[named]){El._flyweights[named]=new El.Flyweight();}El._flyweights[named].dom=el;return El._flyweights[named];};Ext.get=El.get;Ext.fly=El.fly;var noBoxAdjust=Ext.isStrict?{select:1}:{input:1,select:1,textarea:1};if(Ext.isIE||Ext.isGecko){noBoxAdjust["button"]=1;}Ext.EventManager.on(window,"unload",function(){delete El.cache;delete El._flyweights;});})();Ext.enableFx=true;Ext.Fx={slideIn:function(A,C){var B=this.getFxEl();C=C||{};B.queueFx(C,function(){A=A||"t";this.fixDisplay();var D=this.getFxRestore();var I=this.getBox();this.setSize(I);var F=this.fxWrap(D.pos,C,"hidden");var K=this.dom.style;K.visibility="visible";K.position="absolute";var E=function(){B.fxUnwrap(F,D.pos,C);K.width=D.width;K.height=D.height;B.afterFx(C);};var J,L={to:[I.x,I.y]},H={to:I.width},G={to:I.height};switch(A.toLowerCase()){case"t":F.setSize(I.width,0);K.left=K.bottom="0";J={height:G};break;case"l":F.setSize(0,I.height);K.right=K.top="0";J={width:H};break;case"r":F.setSize(0,I.height);F.setX(I.right);K.left=K.top="0";J={width:H,points:L};break;case"b":F.setSize(I.width,0);F.setY(I.bottom);K.left=K.top="0";J={height:G,points:L};break;case"tl":F.setSize(0,0);K.right=K.bottom="0";J={width:H,height:G};break;case"bl":F.setSize(0,0);F.setY(I.y+I.height);K.right=K.top="0";J={width:H,height:G,points:L};break;case"br":F.setSize(0,0);F.setXY([I.right,I.bottom]);K.left=K.top="0";J={width:H,height:G,points:L};break;case"tr":F.setSize(0,0);F.setX(I.x+I.width);K.left=K.bottom="0";J={width:H,height:G,points:L};break;}this.dom.style.visibility="visible";F.show();arguments.callee.anim=F.fxanim(J,C,"motion",0.5,"easeOut",E);});return this;},slideOut:function(A,C){var B=this.getFxEl();C=C||{};B.queueFx(C,function(){A=A||"t";var I=this.getFxRestore();var D=this.getBox();this.setSize(D);var G=this.fxWrap(I.pos,C,"visible");var F=this.dom.style;F.visibility="visible";F.position="absolute";G.setSize(D);var J=function(){if(C.useDisplay){B.setDisplayed(false);}else{B.hide();}B.fxUnwrap(G,I.pos,C);F.width=I.width;F.height=I.height;B.afterFx(C);};var E,H={to:0};switch(A.toLowerCase()){case"t":F.left=F.bottom="0";E={height:H};break;case"l":F.right=F.top="0";E={width:H};break;case"r":F.left=F.top="0";E={width:H,points:{to:[D.right,D.y]}};break;case"b":F.left=F.top="0";E={height:H,points:{to:[D.x,D.bottom]}};break;case"tl":F.right=F.bottom="0";E={width:H,height:H};break;case"bl":F.right=F.top="0";E={width:H,height:H,points:{to:[D.x,D.bottom]}};break;case"br":F.left=F.top="0";E={width:H,height:H,points:{to:[D.x+D.width,D.bottom]}};break;case"tr":F.left=F.bottom="0";E={width:H,height:H,points:{to:[D.right,D.y]}};break;}arguments.callee.anim=G.fxanim(E,C,"motion",0.5,"easeOut",J);});return this;},puff:function(B){var A=this.getFxEl();B=B||{};A.queueFx(B,function(){this.clearOpacity();this.show();var F=this.getFxRestore();var D=this.dom.style;var G=function(){if(B.useDisplay){A.setDisplayed(false);}else{A.hide();}A.clearOpacity();A.setPositioning(F.pos);D.width=F.width;D.height=F.height;D.fontSize="";A.afterFx(B);};var E=this.getWidth();var C=this.getHeight();arguments.callee.anim=this.fxanim({width:{to:this.adjustWidth(E*2)},height:{to:this.adjustHeight(C*2)},points:{by:[-(E*0.5),-(C*0.5)]},opacity:{to:0},fontSize:{to:200,unit:"%"}},B,"motion",0.5,"easeOut",G);});return this;},switchOff:function(B){var A=this.getFxEl();B=B||{};A.queueFx(B,function(){this.clearOpacity();this.clip();var D=this.getFxRestore();var C=this.dom.style;var E=function(){if(B.useDisplay){A.setDisplayed(false);}else{A.hide();}A.clearOpacity();A.setPositioning(D.pos);C.width=D.width;C.height=D.height;A.afterFx(B);};this.fxanim({opacity:{to:0.3}},null,null,0.1,null,function(){this.clearOpacity();(function(){this.fxanim({height:{to:1},points:{by:[0,this.getHeight()*0.5]}},B,"motion",0.3,"easeIn",E);}).defer(100,this);});});return this;},highlight:function(A,C){var B=this.getFxEl();C=C||{};B.queueFx(C,function(){A=A||"ffff9c";var D=C.attr||"backgroundColor";this.clearOpacity();this.show();var G=this.getColor(D);var H=this.dom.style[D];var F=(C.endColor||G)||"ffffff";var I=function(){B.dom.style[D]=H;B.afterFx(C);};var E={};E[D]={from:A,to:F};arguments.callee.anim=this.fxanim(E,C,"color",1,"easeIn",I);});return this;},frame:function(A,C,D){var B=this.getFxEl();D=D||{};B.queueFx(D,function(){A=A||"#C3DAF9";if(A.length==6){A="#"+A;}C=C||1;var G=D.duration||1;this.show();var E=this.getBox();var F=function(){var H=Ext.getBody().createChild({style:{visbility:"hidden",position:"absolute","z-index":"35000",border:"0px solid "+A}});var I=Ext.isBorderBox?2:1;H.animate({top:{from:E.y,to:E.y-20},left:{from:E.x,to:E.x-20},borderWidth:{from:0,to:10},opacity:{from:1,to:0},height:{from:E.height,to:(E.height+(20*I))},width:{from:E.width,to:(E.width+(20*I))}},G,function(){H.remove();if(--C>0){F();}else{B.afterFx(D);}});};F.call(this);});return this;},pause:function(C){var A=this.getFxEl();var B={};A.queueFx(B,function(){setTimeout(function(){A.afterFx(B);},C*1000);});return this;},fadeIn:function(B){var A=this.getFxEl();B=B||{};A.queueFx(B,function(){this.setOpacity(0);this.fixDisplay();this.dom.style.visibility="visible";var C=B.endOpacity||1;arguments.callee.anim=this.fxanim({opacity:{to:C}},B,null,0.5,"easeOut",function(){if(C==1){this.clearOpacity();}A.afterFx(B);});});return this;},fadeOut:function(B){var A=this.getFxEl();B=B||{};A.queueFx(B,function(){arguments.callee.anim=this.fxanim({opacity:{to:B.endOpacity||0}},B,null,0.5,"easeOut",function(){if(this.visibilityMode==Ext.Element.DISPLAY||B.useDisplay){this.dom.style.display="none";}else{this.dom.style.visibility="hidden";}this.clearOpacity();A.afterFx(B);});});return this;},scale:function(A,B,C){this.shift(Ext.apply({},C,{width:A,height:B}));return this;},shift:function(B){var A=this.getFxEl();B=B||{};A.queueFx(B,function(){var E={},D=B.width,F=B.height,C=B.x,H=B.y,G=B.opacity;if(D!==undefined){E.width={to:this.adjustWidth(D)};}if(F!==undefined){E.height={to:this.adjustHeight(F)};}if(C!==undefined||H!==undefined){E.points={to:[C!==undefined?C:this.getX(),H!==undefined?H:this.getY()]};}if(G!==undefined){E.opacity={to:G};}if(B.xy!==undefined){E.points={to:B.xy};}arguments.callee.anim=this.fxanim(E,B,"motion",0.35,"easeOut",function(){A.afterFx(B);});});return this;},ghost:function(A,C){var B=this.getFxEl();C=C||{};B.queueFx(C,function(){A=A||"b";var H=this.getFxRestore();var E=this.getWidth(),G=this.getHeight();var F=this.dom.style;var J=function(){if(C.useDisplay){B.setDisplayed(false);}else{B.hide();}B.clearOpacity();B.setPositioning(H.pos);F.width=H.width;F.height=H.height;B.afterFx(C);};var D={opacity:{to:0},points:{}},I=D.points;switch(A.toLowerCase()){case"t":I.by=[0,-G];break;case"l":I.by=[-E,0];break;case"r":I.by=[E,0];break;case"b":I.by=[0,G];break;case"tl":I.by=[-E,-G];break;case"bl":I.by=[-E,G];break;case"br":I.by=[E,G];break;case"tr":I.by=[E,-G];break;}arguments.callee.anim=this.fxanim(D,C,"motion",0.5,"easeOut",J);});return this;},syncFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:false,concurrent:true,stopFx:false});return this;},sequenceFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:false,concurrent:false,stopFx:false});return this;},nextFx:function(){var A=this.fxQueue[0];if(A){A.call(this);}},hasActiveFx:function(){return this.fxQueue&&this.fxQueue[0];},stopFx:function(){if(this.hasActiveFx()){var A=this.fxQueue[0];if(A&&A.anim&&A.anim.isAnimated()){this.fxQueue=[A];A.anim.stop(true);}}return this;},beforeFx:function(A){if(this.hasActiveFx()&&!A.concurrent){if(A.stopFx){this.stopFx();return true;}return false;}return true;},hasFxBlock:function(){var A=this.fxQueue;return A&&A[0]&&A[0].block;},queueFx:function(C,A){if(!this.fxQueue){this.fxQueue=[];}if(!this.hasFxBlock()){Ext.applyIf(C,this.fxDefaults);if(!C.concurrent){var B=this.beforeFx(C);A.block=C.block;this.fxQueue.push(A);if(B){this.nextFx();}}else{A.call(this);}}return this;},fxWrap:function(F,D,C){var B;if(!D.wrap||!(B=Ext.get(D.wrap))){var A;if(D.fixPosition){A=this.getXY();}var E=document.createElement("div");E.style.visibility=C;B=Ext.get(this.dom.parentNode.insertBefore(E,this.dom));B.setPositioning(F);if(B.getStyle("position")=="static"){B.position("relative");}this.clearPositioning("auto");B.clip();B.dom.appendChild(this.dom);if(A){B.setXY(A);}}return B;},fxUnwrap:function(A,C,B){this.clearPositioning();this.setPositioning(C);if(!B.wrap){A.dom.parentNode.insertBefore(this.dom,A.dom);A.remove();}},getFxRestore:function(){var A=this.dom.style;return{pos:this.getPositioning(),width:A.width,height:A.height};},afterFx:function(A){if(A.afterStyle){this.applyStyles(A.afterStyle);}if(A.afterCls){this.addClass(A.afterCls);}if(A.remove===true){this.remove();}Ext.callback(A.callback,A.scope,[this]);if(!A.concurrent){this.fxQueue.shift();this.nextFx();}},getFxEl:function(){return Ext.get(this.dom);},fxanim:function(D,E,B,F,C,A){B=B||"run";E=E||{};var G=Ext.lib.Anim[B](this.dom,D,(E.duration||F)||0.35,(E.easing||C)||"easeOut",function(){Ext.callback(A,this);},this);E.anim=G;return G;}};Ext.Fx.resize=Ext.Fx.scale;Ext.apply(Ext.Element.prototype,Ext.Fx);Ext.CompositeElement=function(A){this.elements=[];this.addElements(A);};Ext.CompositeElement.prototype={isComposite:true,addElements:function(E){if(!E){return this;}if(typeof E=="string"){E=Ext.Element.selectorFunction(E);}var D=this.elements;var B=D.length-1;for(var C=0,A=E.length;C<A;C++){D[++B]=Ext.get(E[C]);}return this;},fill:function(A){this.elements=[];this.add(A);return this;},filter:function(A){var B=[];this.each(function(C){if(C.is(A)){B[B.length]=C.dom;}});this.fill(B);return this;},invoke:function(E,B){var D=this.elements;for(var C=0,A=D.length;C<A;C++){Ext.Element.prototype[E].apply(D[C],B);}return this;},add:function(A){if(typeof A=="string"){this.addElements(Ext.Element.selectorFunction(A));}else{if(A.length!==undefined){this.addElements(A);}else{this.addElements([A]);}}return this;},each:function(E,D){var C=this.elements;for(var B=0,A=C.length;B<A;B++){if(E.call(D||C[B],C[B],this,B)===false){break;}}return this;},item:function(A){return this.elements[A]||null;},first:function(){return this.item(0);},last:function(){return this.item(this.elements.length-1);},getCount:function(){return this.elements.length;},contains:function(A){return this.indexOf(A)!==-1;},indexOf:function(A){return this.elements.indexOf(Ext.get(A));},removeElement:function(D,F){if(D instanceof Array){for(var C=0,A=D.length;C<A;C++){this.removeElement(D[C]);}return this;}var B=typeof D=="number"?D:this.indexOf(D);if(B!==-1&&this.elements[B]){if(F){var E=this.elements[B];if(E.dom){E.remove();}else{Ext.removeNode(E);}}this.elements.splice(B,1);}return this;},replaceElement:function(D,C,A){var B=typeof D=="number"?D:this.indexOf(D);if(B!==-1){if(A){this.elements[B].replaceWith(C);}else{this.elements.splice(B,1,Ext.get(C));}}return this;},clear:function(){this.elements=[];}};(function(){Ext.CompositeElement.createCall=function(B,C){if(!B[C]){B[C]=function(){return this.invoke(C,arguments);};}};for(var A in Ext.Element.prototype){if(typeof Ext.Element.prototype[A]=="function"){Ext.CompositeElement.createCall(Ext.CompositeElement.prototype,A);}}})();Ext.CompositeElementLite=function(A){Ext.CompositeElementLite.superclass.constructor.call(this,A);this.el=new Ext.Element.Flyweight();};Ext.extend(Ext.CompositeElementLite,Ext.CompositeElement,{addElements:function(E){if(E){if(E instanceof Array){this.elements=this.elements.concat(E);}else{var D=this.elements;var B=D.length-1;for(var C=0,A=E.length;C<A;C++){D[++B]=E[C];}}}return this;},invoke:function(F,B){var D=this.elements;var E=this.el;for(var C=0,A=D.length;C<A;C++){E.dom=D[C];Ext.Element.prototype[F].apply(E,B);}return this;},item:function(A){if(!this.elements[A]){return null;}this.el.dom=this.elements[A];return this.el;},addListener:function(B,G,F,E){var D=this.elements;for(var C=0,A=D.length;C<A;C++){Ext.EventManager.on(D[C],B,G,F||D[C],E);}return this;},each:function(F,E){var C=this.elements;var D=this.el;for(var B=0,A=C.length;B<A;B++){D.dom=C[B];if(F.call(E||D,D,this,B)===false){break;}}return this;},indexOf:function(A){return this.elements.indexOf(Ext.getDom(A));},replaceElement:function(D,C,A){var B=typeof D=="number"?D:this.indexOf(D);if(B!==-1){C=Ext.getDom(C);if(A){var E=this.elements[B];E.parentNode.insertBefore(C,E);Ext.removeNode(E);}this.elements.splice(B,1,C);}return this;}});Ext.CompositeElementLite.prototype.on=Ext.CompositeElementLite.prototype.addListener;if(Ext.DomQuery){Ext.Element.selectorFunction=Ext.DomQuery.select;}Ext.Element.select=function(A,D,B){var C;if(typeof A=="string"){C=Ext.Element.selectorFunction(A,B);}else{if(A.length!==undefined){C=A;}else{throw"Invalid selector";}}if(D===true){return new Ext.CompositeElement(C);}else{return new Ext.CompositeElementLite(C);}};Ext.select=Ext.Element.select;Ext.util.DelayedTask=function(E,D,A){var G=null,F,B;var C=function(){var H=new Date().getTime();if(H-B>=F){clearInterval(G);G=null;E.apply(D,A||[]);}};this.delay=function(I,K,J,H){if(G&&I!=F){this.cancel();}F=I;B=new Date().getTime();E=K||E;D=J||D;A=H||A;if(!G){G=setInterval(C,F);}};this.cancel=function(){if(G){clearInterval(G);G=null;}};};Ext.util.MixedCollection=function(B,A){this.items=[];this.map={};this.keys=[];this.length=0;this.addEvents("clear","add","replace","remove","sort");this.allowFunctions=B===true;if(A){this.getKey=A;}Ext.util.MixedCollection.superclass.constructor.call(this);};Ext.extend(Ext.util.MixedCollection,Ext.util.Observable,{allowFunctions:false,add:function(B,C){if(arguments.length==1){C=arguments[0];B=this.getKey(C);}if(typeof B=="undefined"||B===null){this.length++;this.items.push(C);this.keys.push(null);}else{var A=this.map[B];if(A){return this.replace(B,C);}this.length++;this.items.push(C);this.map[B]=C;this.keys.push(B);}this.fireEvent("add",this.length-1,C,B);return C;},getKey:function(A){return A.id;},replace:function(C,D){if(arguments.length==1){D=arguments[0];C=this.getKey(D);}var A=this.item(C);if(typeof C=="undefined"||C===null||typeof A=="undefined"){return this.add(C,D);}var B=this.indexOfKey(C);this.items[B]=D;this.map[C]=D;this.fireEvent("replace",C,A,D);return D;},addAll:function(E){if(arguments.length>1||E instanceof Array){var B=arguments.length>1?arguments:E;for(var D=0,A=B.length;D<A;D++){this.add(B[D]);}}else{for(var C in E){if(this.allowFunctions||typeof E[C]!="function"){this.add(C,E[C]);}}}},each:function(E,D){var B=[].concat(this.items);for(var C=0,A=B.length;C<A;C++){if(E.call(D||B[C],B[C],C,A)===false){break;}}},eachKey:function(D,C){for(var B=0,A=this.keys.length;B<A;B++){D.call(C||window,this.keys[B],this.items[B],B,A);}},find:function(D,C){for(var B=0,A=this.items.length;B<A;B++){if(D.call(C||window,this.items[B],this.keys[B])){return this.items[B];}}return null;},insert:function(A,B,C){if(arguments.length==2){C=arguments[1];B=this.getKey(C);}if(A>=this.length){return this.add(B,C);}this.length++;this.items.splice(A,0,C);if(typeof B!="undefined"&&B!=null){this.map[B]=C;}this.keys.splice(A,0,B);this.fireEvent("add",A,C,B);return C;},remove:function(A){return this.removeAt(this.indexOf(A));},removeAt:function(A){if(A<this.length&&A>=0){this.length--;var C=this.items[A];this.items.splice(A,1);var B=this.keys[A];if(typeof B!="undefined"){delete this.map[B];}this.keys.splice(A,1);this.fireEvent("remove",C,B);return C;}return false;},removeKey:function(A){return this.removeAt(this.indexOfKey(A));},getCount:function(){return this.length;},indexOf:function(A){return this.items.indexOf(A);},indexOfKey:function(A){return this.keys.indexOf(A);},item:function(A){var B=typeof this.map[A]!="undefined"?this.map[A]:this.items[A];return typeof B!="function"||this.allowFunctions?B:null;},itemAt:function(A){return this.items[A];},key:function(A){return this.map[A];},contains:function(A){return this.indexOf(A)!=-1;},containsKey:function(A){return typeof this.map[A]!="undefined";},clear:function(){this.length=0;this.items=[];this.keys=[];this.map={};this.fireEvent("clear");},first:function(){return this.items[0];},last:function(){return this.items[this.length-1];},_sort:function(I,A,H){var C=String(A).toUpperCase()=="DESC"?-1:1;H=H||function(K,J){return K-J;};var G=[],B=this.keys,F=this.items;for(var D=0,E=F.length;D<E;D++){G[G.length]={key:B[D],value:F[D],index:D};}G.sort(function(K,J){var L=H(K[I],J[I])*C;if(L==0){L=(K.index<J.index?-1:1);}return L;});for(var D=0,E=G.length;D<E;D++){F[D]=G[D].value;B[D]=G[D].key;}this.fireEvent("sort",this);},sort:function(A,B){this._sort("value",A,B);},keySort:function(A,B){this._sort("key",A,B||function(D,C){return String(D).toUpperCase()-String(C).toUpperCase();});},getRange:function(E,A){var B=this.items;if(B.length<1){return[];}E=E||0;A=Math.min(typeof A=="undefined"?this.length-1:A,this.length-1);var D=[];if(E<=A){for(var C=E;C<=A;C++){D[D.length]=B[C];}}else{for(var C=E;C>=A;C--){D[D.length]=B[C];}}return D;},filter:function(C,B,D,A){if(Ext.isEmpty(B,false)){return this.clone();}B=this.createValueMatcher(B,D,A);return this.filterBy(function(E){return E&&B.test(E[C]);});},filterBy:function(F,E){var G=new Ext.util.MixedCollection();G.getKey=this.getKey;var B=this.keys,D=this.items;for(var C=0,A=D.length;C<A;C++){if(F.call(E||this,D[C],B[C])){G.add(B[C],D[C]);}}return G;},findIndex:function(C,B,E,D,A){if(Ext.isEmpty(B,false)){return -1;}B=this.createValueMatcher(B,D,A);return this.findIndexBy(function(F){return F&&B.test(F[C]);},null,E);},findIndexBy:function(F,E,G){var B=this.keys,D=this.items;for(var C=(G||0),A=D.length;C<A;C++){if(F.call(E||this,D[C],B[C])){return C;}}if(typeof G=="number"&&G>0){for(var C=0;C<G;C++){if(F.call(E||this,D[C],B[C])){return C;}}}return -1;},createValueMatcher:function(B,C,A){if(!B.exec){B=String(B);B=new RegExp((C===true?"":"^")+Ext.escapeRe(B),A?"":"i");}return B;},clone:function(){var E=new Ext.util.MixedCollection();var B=this.keys,D=this.items;for(var C=0,A=D.length;C<A;C++){E.add(B[C],D[C]);}E.getKey=this.getKey;return E;}});Ext.util.MixedCollection.prototype.get=Ext.util.MixedCollection.prototype.item;Ext.KeyMap=function(C,B,A){this.el=Ext.get(C);this.eventName=A||"keydown";this.bindings=[];if(B){this.addBinding(B);}this.enable();};Ext.KeyMap.prototype={stopEvent:false,addBinding:function(D){if(D instanceof Array){for(var F=0,H=D.length;F<H;F++){this.addBinding(D[F]);}return ;}var N=D.key,C=D.shift,A=D.ctrl,G=D.alt,J=D.fn||D.handler,M=D.scope;if(typeof N=="string"){var K=[];var I=N.toUpperCase();for(var E=0,H=I.length;E<H;E++){K.push(I.charCodeAt(E));}N=K;}var B=N instanceof Array;var L=function(R){if((!C||R.shiftKey)&&(!A||R.ctrlKey)&&(!G||R.altKey)){var P=R.getKey();if(B){for(var Q=0,O=N.length;Q<O;Q++){if(N[Q]==P){if(this.stopEvent){R.stopEvent();}J.call(M||window,P,R);return ;}}}else{if(P==N){if(this.stopEvent){R.stopEvent();}J.call(M||window,P,R);}}}};this.bindings.push(L);},on:function(B,D,C){var G,A,E,F;if(typeof B=="object"&&!(B instanceof Array)){G=B.key;A=B.shift;E=B.ctrl;F=B.alt;}else{G=B;}this.addBinding({key:G,shift:A,ctrl:E,alt:F,fn:D,scope:C});},handleKeyDown:function(D){if(this.enabled){var B=this.bindings;for(var C=0,A=B.length;C<A;C++){B[C].call(this,D);}}},isEnabled:function(){return this.enabled;},enable:function(){if(!this.enabled){this.el.on(this.eventName,this.handleKeyDown,this);this.enabled=true;}},disable:function(){if(this.enabled){this.el.removeListener(this.eventName,this.handleKeyDown,this);this.enabled=false;}}};Ext.util.TextMetrics=function(){var A;return{measure:function(B,C,D){if(!A){A=Ext.util.TextMetrics.Instance(B,D);}A.bind(B);A.setFixedWidth(D||"auto");return A.getSize(C);},createInstance:function(B,C){return Ext.util.TextMetrics.Instance(B,C);}};}();Ext.util.TextMetrics.Instance=function(B,D){var C=new Ext.Element(document.createElement("div"));document.body.appendChild(C.dom);C.position("absolute");C.setLeftTop(-1000,-1000);C.hide();if(D){C.setWidth(D);}var A={getSize:function(F){C.update(F);var E=C.getSize();C.update("");return E;},bind:function(E){C.setStyle(Ext.fly(E).getStyles("font-size","font-style","font-weight","font-family","line-height"));},setFixedWidth:function(E){C.setWidth(E);},getWidth:function(E){C.dom.style.width="auto";return this.getSize(E).width;},getHeight:function(E){return this.getSize(E).height;}};A.bind(B);return A;};Ext.Element.measureText=Ext.util.TextMetrics.measure;(function(){var A=Ext.EventManager;var B=Ext.lib.Dom;Ext.dd.DragDrop=function(E,C,D){if(E){this.init(E,C,D);}};Ext.dd.DragDrop.prototype={id:null,config:null,dragElId:null,handleElId:null,invalidHandleTypes:null,invalidHandleIds:null,invalidHandleClasses:null,startPageX:0,startPageY:0,groups:null,locked:false,lock:function(){this.locked=true;},unlock:function(){this.locked=false;},isTarget:true,padding:null,_domRef:null,__ygDragDrop:true,constrainX:false,constrainY:false,minX:0,maxX:0,minY:0,maxY:0,maintainOffset:false,xTicks:null,yTicks:null,primaryButtonOnly:true,available:false,hasOuterHandles:false,b4StartDrag:function(C,D){},startDrag:function(C,D){},b4Drag:function(C){},onDrag:function(C){},onDragEnter:function(C,D){},b4DragOver:function(C){},onDragOver:function(C,D){},b4DragOut:function(C){},onDragOut:function(C,D){},b4DragDrop:function(C){},onDragDrop:function(C,D){},onInvalidDrop:function(C){},b4EndDrag:function(C){},endDrag:function(C){},b4MouseDown:function(C){},onMouseDown:function(C){},onMouseUp:function(C){},onAvailable:function(){},defaultPadding:{left:0,right:0,top:0,bottom:0},constrainTo:function(H,F,M){if(typeof F=="number"){F={left:F,right:F,top:F,bottom:F};}F=F||this.defaultPadding;var J=Ext.get(this.getEl()).getBox();var C=Ext.get(H);var L=C.getScroll();var I,D=C.dom;if(D==document.body){I={x:L.left,y:L.top,width:Ext.lib.Dom.getViewWidth(),height:Ext.lib.Dom.getViewHeight()};}else{var K=C.getXY();I={x:K[0]+L.left,y:K[1]+L.top,width:D.clientWidth,height:D.clientHeight};}var G=J.y-I.y;var E=J.x-I.x;this.resetConstraints();this.setXConstraint(E-(F.left||0),I.width-E-J.width-(F.right||0));this.setYConstraint(G-(F.top||0),I.height-G-J.height-(F.bottom||0));},getEl:function(){if(!this._domRef){this._domRef=Ext.getDom(this.id);}return this._domRef;},getDragEl:function(){return Ext.getDom(this.dragElId);},init:function(E,C,D){this.initTarget(E,C,D);A.on(this.id,"mousedown",this.handleMouseDown,this);},initTarget:function(E,C,D){this.config=D||{};this.DDM=Ext.dd.DDM;this.groups={};if(typeof E!=="string"){E=Ext.id(E);}this.id=E;this.addToGroup((C)?C:"default");this.handleElId=E;this.setDragElId(E);this.invalidHandleTypes={A:"A"};this.invalidHandleIds={};this.invalidHandleClasses=[];this.applyConfig();this.handleOnAvailable();},applyConfig:function(){this.padding=this.config.padding||[0,0,0,0];this.isTarget=(this.config.isTarget!==false);this.maintainOffset=(this.config.maintainOffset);this.primaryButtonOnly=(this.config.primaryButtonOnly!==false);},handleOnAvailable:function(){this.available=true;this.resetConstraints();this.onAvailable();},setPadding:function(E,C,F,D){if(!C&&0!==C){this.padding=[E,E,E,E];}else{if(!F&&0!==F){this.padding=[E,C,E,C];}else{this.padding=[E,C,F,D];}}},setInitPosition:function(F,E){var G=this.getEl();if(!this.DDM.verifyEl(G)){return ;}var D=F||0;var C=E||0;var H=B.getXY(G);this.initPageX=H[0]-D;this.initPageY=H[1]-C;this.lastPageX=H[0];this.lastPageY=H[1];this.setStartPosition(H);},setStartPosition:function(D){var C=D||B.getXY(this.getEl());this.deltaSetXY=null;this.startPageX=C[0];this.startPageY=C[1];},addToGroup:function(C){this.groups[C]=true;this.DDM.regDragDrop(this,C);},removeFromGroup:function(C){if(this.groups[C]){delete this.groups[C];}this.DDM.removeDDFromGroup(this,C);},setDragElId:function(C){this.dragElId=C;},setHandleElId:function(C){if(typeof C!=="string"){C=Ext.id(C);}this.handleElId=C;this.DDM.regHandle(this.id,C);},setOuterHandleElId:function(C){if(typeof C!=="string"){C=Ext.id(C);}A.on(C,"mousedown",this.handleMouseDown,this);this.setHandleElId(C);this.hasOuterHandles=true;},unreg:function(){A.un(this.id,"mousedown",this.handleMouseDown);this._domRef=null;this.DDM._remove(this);},destroy:function(){this.unreg();},isLocked:function(){return(this.DDM.isLocked()||this.locked);},handleMouseDown:function(E,D){if(this.primaryButtonOnly&&E.button!=0){return ;}if(this.isLocked()){return ;}this.DDM.refreshCache(this.groups);var C=new Ext.lib.Point(Ext.lib.Event.getPageX(E),Ext.lib.Event.getPageY(E));if(!this.hasOuterHandles&&!this.DDM.isOverTarget(C,this)){}else{if(this.clickValidator(E)){this.setStartPosition();this.b4MouseDown(E);this.onMouseDown(E);this.DDM.handleMouseDown(E,this);this.DDM.stopEvent(E);}else{}}},clickValidator:function(D){var C=D.getTarget();return(this.isValidHandleChild(C)&&(this.id==this.handleElId||this.DDM.handleWasClicked(C,this.id)));},addInvalidHandleType:function(C){var D=C.toUpperCase();this.invalidHandleTypes[D]=D;},addInvalidHandleId:function(C){if(typeof C!=="string"){C=Ext.id(C);}this.invalidHandleIds[C]=C;},addInvalidHandleClass:function(C){this.invalidHandleClasses.push(C);},removeInvalidHandleType:function(C){var D=C.toUpperCase();delete this.invalidHandleTypes[D];},removeInvalidHandleId:function(C){if(typeof C!=="string"){C=Ext.id(C);}delete this.invalidHandleIds[C];},removeInvalidHandleClass:function(D){for(var E=0,C=this.invalidHandleClasses.length;E<C;++E){if(this.invalidHandleClasses[E]==D){delete this.invalidHandleClasses[E];}}},isValidHandleChild:function(F){var E=true;var H;try{H=F.nodeName.toUpperCase();}catch(G){H=F.nodeName;}E=E&&!this.invalidHandleTypes[H];E=E&&!this.invalidHandleIds[F.id];for(var D=0,C=this.invalidHandleClasses.length;E&&D<C;++D){E=!B.hasClass(F,this.invalidHandleClasses[D]);}return E;},setXTicks:function(F,C){this.xTicks=[];this.xTickSize=C;var E={};for(var D=this.initPageX;D>=this.minX;D=D-C){if(!E[D]){this.xTicks[this.xTicks.length]=D;E[D]=true;}}for(D=this.initPageX;D<=this.maxX;D=D+C){if(!E[D]){this.xTicks[this.xTicks.length]=D;E[D]=true;}}this.xTicks.sort(this.DDM.numericSort);},setYTicks:function(F,C){this.yTicks=[];this.yTickSize=C;var E={};for(var D=this.initPageY;D>=this.minY;D=D-C){if(!E[D]){this.yTicks[this.yTicks.length]=D;E[D]=true;}}for(D=this.initPageY;D<=this.maxY;D=D+C){if(!E[D]){this.yTicks[this.yTicks.length]=D;E[D]=true;}}this.yTicks.sort(this.DDM.numericSort);},setXConstraint:function(E,D,C){this.leftConstraint=E;this.rightConstraint=D;this.minX=this.initPageX-E;this.maxX=this.initPageX+D;if(C){this.setXTicks(this.initPageX,C);}this.constrainX=true;},clearConstraints:function(){this.constrainX=false;this.constrainY=false;this.clearTicks();},clearTicks:function(){this.xTicks=null;this.yTicks=null;this.xTickSize=0;this.yTickSize=0;},setYConstraint:function(C,E,D){this.topConstraint=C;this.bottomConstraint=E;this.minY=this.initPageY-C;this.maxY=this.initPageY+E;if(D){this.setYTicks(this.initPageY,D);}this.constrainY=true;},resetConstraints:function(){if(this.initPageX||this.initPageX===0){var D=(this.maintainOffset)?this.lastPageX-this.initPageX:0;var C=(this.maintainOffset)?this.lastPageY-this.initPageY:0;this.setInitPosition(D,C);}else{this.setInitPosition();}if(this.constrainX){this.setXConstraint(this.leftConstraint,this.rightConstraint,this.xTickSize);}if(this.constrainY){this.setYConstraint(this.topConstraint,this.bottomConstraint,this.yTickSize);}},getTick:function(I,F){if(!F){return I;}else{if(F[0]>=I){return F[0];}else{for(var D=0,C=F.length;D<C;++D){var E=D+1;if(F[E]&&F[E]>=I){var H=I-F[D];var G=F[E]-I;return(G>H)?F[D]:F[E];}}return F[F.length-1];}}},toString:function(){return("DragDrop "+this.id);}};})();if(!Ext.dd.DragDropMgr){Ext.dd.DragDropMgr=function(){var A=Ext.EventManager;return{ids:{},handleIds:{},dragCurrent:null,dragOvers:{},deltaX:0,deltaY:0,preventDefault:true,stopPropagation:true,initalized:false,locked:false,init:function(){this.initialized=true;},POINT:0,INTERSECT:1,mode:0,_execOnAll:function(D,C){for(var E in this.ids){for(var B in this.ids[E]){var F=this.ids[E][B];if(!this.isTypeOfDD(F)){continue;}F[D].apply(F,C);}}},_onLoad:function(){this.init();A.on(document,"mouseup",this.handleMouseUp,this,true);A.on(document,"mousemove",this.handleMouseMove,this,true);A.on(window,"unload",this._onUnload,this,true);A.on(window,"resize",this._onResize,this,true);},_onResize:function(B){this._execOnAll("resetConstraints",[]);},lock:function(){this.locked=true;},unlock:function(){this.locked=false;},isLocked:function(){return this.locked;},locationCache:{},useCache:true,clickPixelThresh:3,clickTimeThresh:350,dragThreshMet:false,clickTimeout:null,startX:0,startY:0,regDragDrop:function(C,B){if(!this.initialized){this.init();}if(!this.ids[B]){this.ids[B]={};}this.ids[B][C.id]=C;},removeDDFromGroup:function(D,B){if(!this.ids[B]){this.ids[B]={};}var C=this.ids[B];if(C&&C[D.id]){delete C[D.id];}},_remove:function(C){for(var B in C.groups){if(B&&this.ids[B][C.id]){delete this.ids[B][C.id];}}delete this.handleIds[C.id];},regHandle:function(C,B){if(!this.handleIds[C]){this.handleIds[C]={};}this.handleIds[C][B]=B;},isDragDrop:function(B){return(this.getDDById(B))?true:false;},getRelated:function(F,C){var E=[];for(var D in F.groups){for(j in this.ids[D]){var B=this.ids[D][j];if(!this.isTypeOfDD(B)){continue;}if(!C||B.isTarget){E[E.length]=B;}}}return E;},isLegalTarget:function(F,E){var C=this.getRelated(F,true);for(var D=0,B=C.length;D<B;++D){if(C[D].id==E.id){return true;}}return false;},isTypeOfDD:function(B){return(B&&B.__ygDragDrop);},isHandle:function(C,B){return(this.handleIds[C]&&this.handleIds[C][B]);},getDDById:function(C){for(var B in this.ids){if(this.ids[B][C]){return this.ids[B][C];}}return null;},handleMouseDown:function(D,C){if(Ext.QuickTips){Ext.QuickTips.disable();}this.currentTarget=D.getTarget();this.dragCurrent=C;var B=C.getEl();this.startX=D.getPageX();this.startY=D.getPageY();this.deltaX=this.startX-B.offsetLeft;this.deltaY=this.startY-B.offsetTop;this.dragThreshMet=false;this.clickTimeout=setTimeout(function(){var E=Ext.dd.DDM;E.startDrag(E.startX,E.startY);},this.clickTimeThresh);},startDrag:function(B,C){clearTimeout(this.clickTimeout);if(this.dragCurrent){this.dragCurrent.b4StartDrag(B,C);this.dragCurrent.startDrag(B,C);}this.dragThreshMet=true;},handleMouseUp:function(B){if(Ext.QuickTips){Ext.QuickTips.enable();}if(!this.dragCurrent){return ;}clearTimeout(this.clickTimeout);if(this.dragThreshMet){this.fireEvents(B,true);}else{}this.stopDrag(B);this.stopEvent(B);},stopEvent:function(B){if(this.stopPropagation){B.stopPropagation();}if(this.preventDefault){B.preventDefault();}},stopDrag:function(B){if(this.dragCurrent){if(this.dragThreshMet){this.dragCurrent.b4EndDrag(B);this.dragCurrent.endDrag(B);}this.dragCurrent.onMouseUp(B);}this.dragCurrent=null;this.dragOvers={};},handleMouseMove:function(D){if(!this.dragCurrent){return true;}if(Ext.isIE&&(D.button!==0&&D.button!==1&&D.button!==2)){this.stopEvent(D);return this.handleMouseUp(D);}if(!this.dragThreshMet){var C=Math.abs(this.startX-D.getPageX());var B=Math.abs(this.startY-D.getPageY());if(C>this.clickPixelThresh||B>this.clickPixelThresh){this.startDrag(this.startX,this.startY);}}if(this.dragThreshMet){this.dragCurrent.b4Drag(D);this.dragCurrent.onDrag(D);if(!this.dragCurrent.moveOnly){this.fireEvents(D,false);}}this.stopEvent(D);return true;},fireEvents:function(K,L){var N=this.dragCurrent;if(!N||N.isLocked()){return ;}var O=K.getPoint();var B=[];var E=[];var I=[];var G=[];var D=[];for(var F in this.dragOvers){var C=this.dragOvers[F];if(!this.isTypeOfDD(C)){continue;}if(!this.isOverTarget(O,C,this.mode)){E.push(C);}B[F]=true;delete this.dragOvers[F];}for(var M in N.groups){if("string"!=typeof M){continue;}for(F in this.ids[M]){var H=this.ids[M][F];if(!this.isTypeOfDD(H)){continue;}if(H.isTarget&&!H.isLocked()&&H!=N){if(this.isOverTarget(O,H,this.mode)){if(L){G.push(H);}else{if(!B[H.id]){D.push(H);}else{I.push(H);}this.dragOvers[H.id]=H;}}}}}if(this.mode){if(E.length){N.b4DragOut(K,E);N.onDragOut(K,E);}if(D.length){N.onDragEnter(K,D);}if(I.length){N.b4DragOver(K,I);N.onDragOver(K,I);}if(G.length){N.b4DragDrop(K,G);N.onDragDrop(K,G);}}else{var J=0;for(F=0,J=E.length;F<J;++F){N.b4DragOut(K,E[F].id);N.onDragOut(K,E[F].id);}for(F=0,J=D.length;F<J;++F){N.onDragEnter(K,D[F].id);}for(F=0,J=I.length;F<J;++F){N.b4DragOver(K,I[F].id);N.onDragOver(K,I[F].id);}for(F=0,J=G.length;F<J;++F){N.b4DragDrop(K,G[F].id);N.onDragDrop(K,G[F].id);}}if(L&&!G.length){N.onInvalidDrop(K);}},getBestMatch:function(D){var F=null;var C=D.length;if(C==1){F=D[0];}else{for(var E=0;E<C;++E){var B=D[E];if(B.cursorIsOver){F=B;break;}else{if(!F||F.overlap.getArea()<B.overlap.getArea()){F=B;}}}}return F;},refreshCache:function(C){for(var B in C){if("string"!=typeof B){continue;}for(var D in this.ids[B]){var E=this.ids[B][D];if(this.isTypeOfDD(E)){var F=this.getLocation(E);if(F){this.locationCache[E.id]=F;}else{delete this.locationCache[E.id];}}}}},verifyEl:function(C){if(C){var B;if(Ext.isIE){try{B=C.offsetParent;}catch(D){}}else{B=C.offsetParent;}if(B){return true;}}return false;},getLocation:function(G){if(!this.isTypeOfDD(G)){return null;}var E=G.getEl(),J,D,C,L,K,M,B,I,F;try{J=Ext.lib.Dom.getXY(E);}catch(H){}if(!J){return null;}D=J[0];C=D+E.offsetWidth;L=J[1];K=L+E.offsetHeight;M=L-G.padding[0];B=C+G.padding[1];I=K+G.padding[2];F=D-G.padding[3];return new Ext.lib.Region(M,B,I,F);},isOverTarget:function(J,B,D){var F=this.locationCache[B.id];if(!F||!this.useCache){F=this.getLocation(B);this.locationCache[B.id]=F;}if(!F){return false;}B.cursorIsOver=F.contains(J);var I=this.dragCurrent;if(!I||!I.getTargetCoord||(!D&&!I.constrainX&&!I.constrainY)){return B.cursorIsOver;}B.overlap=null;var G=I.getTargetCoord(J.x,J.y);var C=I.getDragEl();var E=new Ext.lib.Region(G.y,G.x+C.offsetWidth,G.y+C.offsetHeight,G.x);var H=E.intersect(F);if(H){B.overlap=H;return(D)?true:B.cursorIsOver;}else{return false;}},_onUnload:function(C,B){Ext.dd.DragDropMgr.unregAll();},unregAll:function(){if(this.dragCurrent){this.stopDrag();this.dragCurrent=null;}this._execOnAll("unreg",[]);for(var B in this.elementCache){delete this.elementCache[B];}this.elementCache={};this.ids={};},elementCache:{},getElWrapper:function(C){var B=this.elementCache[C];if(!B||!B.el){B=this.elementCache[C]=new this.ElementWrapper(Ext.getDom(C));}return B;},getElement:function(B){return Ext.getDom(B);},getCss:function(C){var B=Ext.getDom(C);return(B)?B.style:null;},ElementWrapper:function(B){this.el=B||null;this.id=this.el&&B.id;this.css=this.el&&B.style;},getPosX:function(B){return Ext.lib.Dom.getX(B);},getPosY:function(B){return Ext.lib.Dom.getY(B);},swapNode:function(D,B){if(D.swapNode){D.swapNode(B);}else{var E=B.parentNode;var C=B.nextSibling;if(C==D){E.insertBefore(D,B);}else{if(B==D.nextSibling){E.insertBefore(B,D);}else{D.parentNode.replaceChild(B,D);E.insertBefore(D,C);}}}},getScroll:function(){var D,B,E=document.documentElement,C=document.body;if(E&&(E.scrollTop||E.scrollLeft)){D=E.scrollTop;B=E.scrollLeft;}else{if(C){D=C.scrollTop;B=C.scrollLeft;}else{}}return{top:D,left:B};},getStyle:function(C,B){return Ext.fly(C).getStyle(B);},getScrollTop:function(){return this.getScroll().top;},getScrollLeft:function(){return this.getScroll().left;},moveToEl:function(B,D){var C=Ext.lib.Dom.getXY(D);Ext.lib.Dom.setXY(B,C);},numericSort:function(C,B){return(C-B);},_timeoutCount:0,_addListeners:function(){var B=Ext.dd.DDM;if(Ext.lib.Event&&document){B._onLoad();}else{if(B._timeoutCount>2000){}else{setTimeout(B._addListeners,10);if(document&&document.body){B._timeoutCount+=1;}}}},handleWasClicked:function(B,D){if(this.isHandle(D,B.id)){return true;}else{var C=B.parentNode;while(C){if(this.isHandle(D,C.id)){return true;}else{C=C.parentNode;}}}return false;}};}();Ext.dd.DDM=Ext.dd.DragDropMgr;Ext.dd.DDM._addListeners();}Ext.dd.DD=function(C,A,B){if(C){this.init(C,A,B);}};Ext.extend(Ext.dd.DD,Ext.dd.DragDrop,{scroll:true,autoOffset:function(C,B){var A=C-this.startPageX;var D=B-this.startPageY;this.setDelta(A,D);},setDelta:function(B,A){this.deltaX=B;this.deltaY=A;},setDragElPos:function(C,B){var A=this.getDragEl();this.alignElWithMouse(A,C,B);},alignElWithMouse:function(C,G,F){var E=this.getTargetCoord(G,F);var B=C.dom?C:Ext.fly(C,"_dd");if(!this.deltaSetXY){var H=[E.x,E.y];B.setXY(H);var D=B.getLeft(true);var A=B.getTop(true);this.deltaSetXY=[D-E.x,A-E.y];}else{B.setLeftTop(E.x+this.deltaSetXY[0],E.y+this.deltaSetXY[1]);}this.cachePosition(E.x,E.y);this.autoScroll(E.x,E.y,C.offsetHeight,C.offsetWidth);return E;},cachePosition:function(B,A){if(B){this.lastPageX=B;this.lastPageY=A;}else{var C=Ext.lib.Dom.getXY(this.getEl());this.lastPageX=C[0];this.lastPageY=C[1];}},autoScroll:function(J,I,E,K){if(this.scroll){var L=Ext.lib.Dom.getViewHeight();var B=Ext.lib.Dom.getViewWidth();var N=this.DDM.getScrollTop();var D=this.DDM.getScrollLeft();var H=E+I;var M=K+J;var G=(L+N-I-this.deltaY);var F=(B+D-J-this.deltaX);var C=40;var A=(document.all)?80:30;if(H>L&&G<C){window.scrollTo(D,N+A);}if(I<N&&N>0&&I-N<C){window.scrollTo(D,N-A);}if(M>B&&F<C){window.scrollTo(D+A,N);}if(J<D&&D>0&&J-D<C){window.scrollTo(D-A,N);}}},getTargetCoord:function(C,B){var A=C-this.deltaX;var D=B-this.deltaY;if(this.constrainX){if(A<this.minX){A=this.minX;}if(A>this.maxX){A=this.maxX;}}if(this.constrainY){if(D<this.minY){D=this.minY;}if(D>this.maxY){D=this.maxY;}}A=this.getTick(A,this.xTicks);D=this.getTick(D,this.yTicks);return{x:A,y:D};},applyConfig:function(){Ext.dd.DD.superclass.applyConfig.call(this);this.scroll=(this.config.scroll!==false);},b4MouseDown:function(A){this.autoOffset(A.getPageX(),A.getPageY());},b4Drag:function(A){this.setDragElPos(A.getPageX(),A.getPageY());},toString:function(){return("DD "+this.id);}});Ext.dd.DDProxy=function(C,A,B){if(C){this.init(C,A,B);this.initFrame();}};Ext.dd.DDProxy.dragElId="ygddfdiv";Ext.extend(Ext.dd.DDProxy,Ext.dd.DD,{resizeFrame:true,centerFrame:false,createFrame:function(){var B=this;var A=document.body;if(!A||!A.firstChild){setTimeout(function(){B.createFrame();},50);return ;}var D=this.getDragEl();if(!D){D=document.createElement("div");D.id=this.dragElId;var C=D.style;C.position="absolute";C.visibility="hidden";C.cursor="move";C.border="2px solid #aaa";C.zIndex=999;A.insertBefore(D,A.firstChild);}},initFrame:function(){this.createFrame();},applyConfig:function(){Ext.dd.DDProxy.superclass.applyConfig.call(this);this.resizeFrame=(this.config.resizeFrame!==false);this.centerFrame=(this.config.centerFrame);this.setDragElId(this.config.dragElId||Ext.dd.DDProxy.dragElId);},showFrame:function(E,D){var C=this.getEl();var A=this.getDragEl();var B=A.style;this._resizeProxy();if(this.centerFrame){this.setDelta(Math.round(parseInt(B.width,10)/2),Math.round(parseInt(B.height,10)/2));}this.setDragElPos(E,D);Ext.fly(A).show();},_resizeProxy:function(){if(this.resizeFrame){var A=this.getEl();Ext.fly(this.getDragEl()).setSize(A.offsetWidth,A.offsetHeight);}},b4MouseDown:function(B){var A=B.getPageX();var C=B.getPageY();this.autoOffset(A,C);this.setDragElPos(A,C);},b4StartDrag:function(A,B){this.showFrame(A,B);},b4EndDrag:function(A){Ext.fly(this.getDragEl()).hide();},endDrag:function(C){var B=this.getEl();var A=this.getDragEl();A.style.visibility="";this.beforeMove();B.style.visibility="hidden";Ext.dd.DDM.moveToEl(B,A);A.style.visibility="hidden";B.style.visibility="";this.afterDrag();},beforeMove:function(){},afterDrag:function(){},toString:function(){return("DDProxy "+this.id);}});Ext.dd.DDTarget=function(C,A,B){if(C){this.initTarget(C,A,B);}};Ext.extend(Ext.dd.DDTarget,Ext.dd.DragDrop,{toString:function(){return("DDTarget "+this.id);}});Ext.dd.DragSource=function(B,A){this.el=Ext.get(B);if(!this.dragData){this.dragData={};}Ext.apply(this,A);if(!this.proxy){this.proxy=new Ext.dd.StatusProxy();}Ext.dd.DragSource.superclass.constructor.call(this,this.el.dom,this.ddGroup||this.group,{dragElId:this.proxy.id,resizeFrame:false,isTarget:false,scroll:this.scroll===true});this.dragging=false;};Ext.extend(Ext.dd.DragSource,Ext.dd.DDProxy,{dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",getDragData:function(A){return this.dragData;},onDragEnter:function(C,D){var B=Ext.dd.DragDropMgr.getDDById(D);this.cachedTarget=B;if(this.beforeDragEnter(B,C,D)!==false){if(B.isNotifyTarget){var A=B.notifyEnter(this,C,this.dragData);this.proxy.setStatus(A);}else{this.proxy.setStatus(this.dropAllowed);}if(this.afterDragEnter){this.afterDragEnter(B,C,D);}}},beforeDragEnter:function(B,A,C){return true;},alignElWithMouse:function(){Ext.dd.DragSource.superclass.alignElWithMouse.apply(this,arguments);this.proxy.sync();},onDragOver:function(C,D){var B=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(D);if(this.beforeDragOver(B,C,D)!==false){if(B.isNotifyTarget){var A=B.notifyOver(this,C,this.dragData);this.proxy.setStatus(A);}if(this.afterDragOver){this.afterDragOver(B,C,D);}}},beforeDragOver:function(B,A,C){return true;},onDragOut:function(B,C){var A=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(C);if(this.beforeDragOut(A,B,C)!==false){if(A.isNotifyTarget){A.notifyOut(this,B,this.dragData);}this.proxy.reset();if(this.afterDragOut){this.afterDragOut(A,B,C);}}this.cachedTarget=null;},beforeDragOut:function(B,A,C){return true;},onDragDrop:function(B,C){var A=this.cachedTarget||Ext.dd.DragDropMgr.getDDById(C);if(this.beforeDragDrop(A,B,C)!==false){if(A.isNotifyTarget){if(A.notifyDrop(this,B,this.dragData)){this.onValidDrop(A,B,C);}else{this.onInvalidDrop(A,B,C);}}else{this.onValidDrop(A,B,C);}if(this.afterDragDrop){this.afterDragDrop(A,B,C);}}delete this.cachedTarget;},beforeDragDrop:function(B,A,C){return true;},onValidDrop:function(B,A,C){this.hideProxy();if(this.afterValidDrop){this.afterValidDrop(B,A,C);}},getRepairXY:function(B,A){return this.el.getXY();},onInvalidDrop:function(B,A,C){this.beforeInvalidDrop(B,A,C);if(this.cachedTarget){if(this.cachedTarget.isNotifyTarget){this.cachedTarget.notifyOut(this,A,this.dragData);}this.cacheTarget=null;}this.proxy.repair(this.getRepairXY(A,this.dragData),this.afterRepair,this);if(this.afterInvalidDrop){this.afterInvalidDrop(A,C);}},afterRepair:function(){if(Ext.enableFx){this.el.highlight(this.hlColor||"c3daf9");}this.dragging=false;},beforeInvalidDrop:function(B,A,C){return true;},handleMouseDown:function(B){if(this.dragging){return ;}var A=this.getDragData(B);if(A&&this.onBeforeDrag(A,B)!==false){this.dragData=A;this.proxy.stop();Ext.dd.DragSource.superclass.handleMouseDown.apply(this,arguments);}},onBeforeDrag:function(A,B){return true;},onStartDrag:Ext.emptyFn,startDrag:function(A,B){this.proxy.reset();this.dragging=true;this.proxy.update("");this.onInitDrag(A,B);this.proxy.show();},onInitDrag:function(A,C){var B=this.el.dom.cloneNode(true);B.id=Ext.id();this.proxy.update(B);this.onStartDrag(A,C);return true;},getProxy:function(){return this.proxy;},hideProxy:function(){this.proxy.hide();this.proxy.reset(true);this.dragging=false;},triggerCacheRefresh:function(){Ext.dd.DDM.refreshCache(this.groups);},b4EndDrag:function(A){},endDrag:function(A){this.onEndDrag(this.dragData,A);},onEndDrag:function(A,B){},autoOffset:function(A,B){this.setDelta(-12,-20);}});Ext.dd.DropTarget=function(B,A){this.el=Ext.get(B);Ext.apply(this,A);if(this.containerScroll){Ext.dd.ScrollManager.register(this.el);}Ext.dd.DropTarget.superclass.constructor.call(this,this.el.dom,this.ddGroup||this.group,{isTarget:true});};Ext.extend(Ext.dd.DropTarget,Ext.dd.DDTarget,{dropAllowed:"x-dd-drop-ok",dropNotAllowed:"x-dd-drop-nodrop",isTarget:true,isNotifyTarget:true,notifyEnter:function(A,C,B){if(this.overClass){this.el.addClass(this.overClass);}return this.dropAllowed;},notifyOver:function(A,C,B){return this.dropAllowed;},notifyOut:function(A,C,B){if(this.overClass){this.el.removeClass(this.overClass);}},notifyDrop:function(A,C,B){return false;}});Ext.ComponentMgr=function(){var B=new Ext.util.MixedCollection();var A={};return{register:function(C){B.add(C);},unregister:function(C){B.remove(C);},get:function(C){return B.get(C);},onAvailable:function(E,D,C){B.on("add",function(F,G){if(G.id==E){D.call(C||G,G);B.un("add",D,C);}});},all:B,registerType:function(D,C){A[D]=C;C.xtype=D;},create:function(C,D){return new A[C.xtype||D](C);}};}();Ext.reg=Ext.ComponentMgr.registerType;Ext.Component=function(B){B=B||{};if(B.initialConfig){if(B.isAction){this.baseAction=B;}B=B.initialConfig;}else{if(B.tagName||B.dom||typeof B=="string"){B={applyTo:B,id:B.id||B};}}this.initialConfig=B;Ext.apply(this,B);this.addEvents("disable","enable","beforeshow","show","beforehide","hide","beforerender","render","beforedestroy","destroy","beforestaterestore","staterestore","beforestatesave","statesave");this.getId();Ext.ComponentMgr.register(this);Ext.Component.superclass.constructor.call(this);if(this.baseAction){this.baseAction.addComponent(this);}this.initComponent();if(this.stateful!==false){this.initState(B);}if(this.plugins){if(this.plugins instanceof Array){for(var C=0,A=this.plugins.length;C<A;C++){this.plugins[C].init(this);}}else{this.plugins.init(this);}}if(this.applyTo){this.applyToMarkup(this.applyTo);delete this.applyTo;}else{if(this.renderTo){this.render(this.renderTo);delete this.renderTo;}}};Ext.Component.AUTO_ID=1000;Ext.extend(Ext.Component,Ext.util.Observable,{disabledClass:"x-item-disabled",allowDomMove:true,autoShow:false,hideMode:"display",hideParent:false,hidden:false,disabled:false,rendered:false,ctype:"Ext.Component",actionMode:"el",getActionEl:function(){return this[this.actionMode];},initComponent:Ext.emptyFn,render:function(B,A){if(!this.rendered&&this.fireEvent("beforerender",this)!==false){if(!B&&this.el){this.el=Ext.get(this.el);B=this.el.dom.parentNode;this.allowDomMove=false;}this.container=Ext.get(B);if(this.ctCls){this.container.addClass(this.ctCls);}this.rendered=true;if(A!==undefined){if(typeof A=="number"){A=this.container.dom.childNodes[A];}else{A=Ext.getDom(A);}}this.onRender(this.container,A||null);if(this.autoShow){this.el.removeClass(["x-hidden","x-hide-"+this.hideMode]);}if(this.cls){this.el.addClass(this.cls);delete this.cls;}if(this.style){this.el.applyStyles(this.style);delete this.style;}this.fireEvent("render",this);this.afterRender(this.container);if(this.hidden){this.hide();}if(this.disabled){this.disable();}this.initStateEvents();}return this;},initState:function(A){if(Ext.state.Manager){var B=Ext.state.Manager.get(this.stateId||this.id);if(B){if(this.fireEvent("beforestaterestore",this,B)!==false){this.applyState(B);this.fireEvent("staterestore",this,B);}}}},initStateEvents:function(){if(this.stateEvents){for(var A=0,B;B=this.stateEvents[A];A++){this.on(B,this.saveState,this,{delay:100});}}},applyState:function(B,A){if(B){Ext.apply(this,B);}},getState:function(){return null;},saveState:function(){if(Ext.state.Manager){var A=this.getState();if(this.fireEvent("beforestatesave",this,A)!==false){Ext.state.Manager.set(this.stateId||this.id,A);this.fireEvent("statesave",this,A);}}},applyToMarkup:function(A){this.allowDomMove=false;this.el=Ext.get(A);this.render(this.el.dom.parentNode);},addClass:function(A){if(this.el){this.el.addClass(A);}else{this.cls=this.cls?this.cls+" "+A:A;}},removeClass:function(A){if(this.el){this.el.removeClass(A);}else{if(this.cls){this.cls=this.cls.split(" ").remove(A).join(" ");}}},onRender:function(B,A){if(this.autoEl){if(typeof this.autoEl=="string"){this.el=document.createElement(this.autoEl);}else{var C=document.createElement("div");Ext.DomHelper.overwrite(C,this.autoEl);this.el=C.firstChild;}}if(this.el){this.el=Ext.get(this.el);if(this.allowDomMove!==false){B.dom.insertBefore(this.el.dom,A);}}},getAutoCreate:function(){var A=typeof this.autoCreate=="object"?this.autoCreate:Ext.apply({},this.defaultAutoCreate);if(this.id&&!A.id){A.id=this.id;}return A;},afterRender:Ext.emptyFn,destroy:function(){if(this.fireEvent("beforedestroy",this)!==false){this.beforeDestroy();if(this.rendered){this.el.removeAllListeners();this.el.remove();if(this.actionMode=="container"){this.container.remove();}}this.onDestroy();Ext.ComponentMgr.unregister(this);this.fireEvent("destroy",this);this.purgeListeners();}},beforeDestroy:Ext.emptyFn,onDestroy:Ext.emptyFn,getEl:function(){return this.el;},getId:function(){return this.id||(this.id="ext-comp-"+(++Ext.Component.AUTO_ID));},getItemId:function(){return this.itemId||this.getId();},focus:function(B,A){if(A){this.focus.defer(typeof A=="number"?A:10,this,[B,false]);return ;}if(this.rendered){this.el.focus();if(B===true){this.el.dom.select();}}return this;},blur:function(){if(this.rendered){this.el.blur();}return this;},disable:function(){if(this.rendered){this.onDisable();}this.disabled=true;this.fireEvent("disable",this);return this;},onDisable:function(){this.getActionEl().addClass(this.disabledClass);this.el.dom.disabled=true;},enable:function(){if(this.rendered){this.onEnable();}this.disabled=false;this.fireEvent("enable",this);return this;},onEnable:function(){this.getActionEl().removeClass(this.disabledClass);this.el.dom.disabled=false;},setDisabled:function(A){this[A?"disable":"enable"]();},show:function(){if(this.fireEvent("beforeshow",this)!==false){this.hidden=false;if(this.autoRender){this.render(typeof this.autoRender=="boolean"?Ext.getBody():this.autoRender);}if(this.rendered){this.onShow();}this.fireEvent("show",this);}return this;},onShow:function(){if(this.hideParent){this.container.removeClass("x-hide-"+this.hideMode);}else{this.getActionEl().removeClass("x-hide-"+this.hideMode);}},hide:function(){if(this.fireEvent("beforehide",this)!==false){this.hidden=true;if(this.rendered){this.onHide();}this.fireEvent("hide",this);}return this;},onHide:function(){if(this.hideParent){this.container.addClass("x-hide-"+this.hideMode);}else{this.getActionEl().addClass("x-hide-"+this.hideMode);}},setVisible:function(A){if(A){this.show();}else{this.hide();}return this;},isVisible:function(){return this.rendered&&this.getActionEl().isVisible();},cloneConfig:function(B){B=B||{};var C=B.id||Ext.id();var A=Ext.applyIf(B,this.initialConfig);A.id=C;return new this.constructor(A);},getXType:function(){return this.constructor.xtype;},isXType:function(B,A){return !A?("/"+this.getXTypes()+"/").indexOf("/"+B+"/")!=-1:this.constructor.xtype==B;},getXTypes:function(){var A=this.constructor;if(!A.xtypes){var C=[],B=this;while(B&&B.constructor.xtype){C.unshift(B.constructor.xtype);B=B.constructor.superclass;}A.xtypeChain=C;A.xtypes=C.join("/");}return A.xtypes;}});Ext.reg("component",Ext.Component);Ext.Action=function(A){this.initialConfig=A;this.items=[];};Ext.Action.prototype={isAction:true,setText:function(A){this.initialConfig.text=A;this.callEach("setText",[A]);},getText:function(){return this.initialConfig.text;},setIconClass:function(A){this.initialConfig.iconCls=A;this.callEach("setIconClass",[A]);},getIconClass:function(){return this.initialConfig.iconCls;},setDisabled:function(A){this.initialConfig.disabled=A;this.callEach("setDisabled",[A]);},enable:function(){this.setDisabled(false);},disable:function(){this.setDisabled(true);},isDisabled:function(){return this.initialConfig.disabled;},setHidden:function(A){this.initialConfig.hidden=A;this.callEach("setVisible",[!A]);},show:function(){this.setHidden(false);},hide:function(){this.setHidden(true);},isHidden:function(){return this.initialConfig.hidden;},setHandler:function(B,A){this.initialConfig.handler=B;this.initialConfig.scope=A;this.callEach("setHandler",[B,A]);},each:function(B,A){Ext.each(this.items,B,A);},callEach:function(E,B){var D=this.items;for(var C=0,A=D.length;C<A;C++){D[C][E].apply(D[C],B);}},addComponent:function(A){this.items.push(A);A.on("destroy",this.removeComponent,this);},removeComponent:function(A){this.items.remove(A);}};(function(){Ext.Layer=function(D,C){D=D||{};var E=Ext.DomHelper;var G=D.parentEl,F=G?Ext.getDom(G):document.body;if(C){this.dom=Ext.getDom(C);}if(!this.dom){var H=D.dh||{tag:"div",cls:"x-layer"};this.dom=E.append(F,H);}if(D.cls){this.addClass(D.cls);}this.constrain=D.constrain!==false;this.visibilityMode=Ext.Element.VISIBILITY;if(D.id){this.id=this.dom.id=D.id;}else{this.id=Ext.id(this.dom);}this.zindex=D.zindex||this.getZIndex();this.position("absolute",this.zindex);if(D.shadow){this.shadowOffset=D.shadowOffset||4;this.shadow=new Ext.Shadow({offset:this.shadowOffset,mode:D.shadow});}else{this.shadowOffset=0;}this.useShim=D.shim!==false&&Ext.useShims;this.useDisplay=D.useDisplay;this.hide();};var A=Ext.Element.prototype;var B=[];Ext.extend(Ext.Layer,Ext.Element,{getZIndex:function(){return this.zindex||parseInt(this.getStyle("z-index"),10)||11000;},getShim:function(){if(!this.useShim){return null;}if(this.shim){return this.shim;}var D=B.shift();if(!D){D=this.createShim();D.enableDisplayMode("block");D.dom.style.display="none";D.dom.style.visibility="visible";}var C=this.dom.parentNode;if(D.dom.parentNode!=C){C.insertBefore(D.dom,this.dom);}D.setStyle("z-index",this.getZIndex()-2);this.shim=D;return D;},hideShim:function(){if(this.shim){this.shim.setDisplayed(false);B.push(this.shim);delete this.shim;}},disableShadow:function(){if(this.shadow){this.shadowDisabled=true;this.shadow.hide();this.lastShadowOffset=this.shadowOffset;this.shadowOffset=0;}},enableShadow:function(C){if(this.shadow){this.shadowDisabled=false;this.shadowOffset=this.lastShadowOffset;delete this.lastShadowOffset;if(C){this.sync(true);}}},sync:function(C){var I=this.shadow;if(!this.updating&&this.isVisible()&&(I||this.useShim)){var F=this.getShim();var H=this.getWidth(),E=this.getHeight();var D=this.getLeft(true),J=this.getTop(true);if(I&&!this.shadowDisabled){if(C&&!I.isVisible()){I.show(this);}else{I.realign(D,J,H,E);}if(F){if(C){F.show();}var G=I.adjusts,K=F.dom.style;K.left=(Math.min(D,D+G.l))+"px";K.top=(Math.min(J,J+G.t))+"px";K.width=(H+G.w)+"px";K.height=(E+G.h)+"px";}}else{if(F){if(C){F.show();}F.setSize(H,E);F.setLeftTop(D,J);}}}},destroy:function(){this.hideShim();if(this.shadow){this.shadow.hide();}this.removeAllListeners();Ext.removeNode(this.dom);Ext.Element.uncache(this.id);},remove:function(){this.destroy();},beginUpdate:function(){this.updating=true;},endUpdate:function(){this.updating=false;this.sync(true);},hideUnders:function(C){if(this.shadow){this.shadow.hide();}this.hideShim();},constrainXY:function(){if(this.constrain){var G=Ext.lib.Dom.getViewWidth(),C=Ext.lib.Dom.getViewHeight();var L=Ext.getDoc().getScroll();var K=this.getXY();var H=K[0],F=K[1];var I=this.dom.offsetWidth+this.shadowOffset,D=this.dom.offsetHeight+this.shadowOffset;var E=false;if((H+I)>G+L.left){H=G-I-this.shadowOffset;E=true;}if((F+D)>C+L.top){F=C-D-this.shadowOffset;E=true;}if(H<L.left){H=L.left;E=true;}if(F<L.top){F=L.top;E=true;}if(E){if(this.avoidY){var J=this.avoidY;if(F<=J&&(F+D)>=J){F=J-D-5;}}K=[H,F];this.storeXY(K);A.setXY.call(this,K);this.sync();}}},isVisible:function(){return this.visible;},showAction:function(){this.visible=true;if(this.useDisplay===true){this.setDisplayed("");}else{if(this.lastXY){A.setXY.call(this,this.lastXY);}else{if(this.lastLT){A.setLeftTop.call(this,this.lastLT[0],this.lastLT[1]);}}}},hideAction:function(){this.visible=false;if(this.useDisplay===true){this.setDisplayed(false);}else{this.setLeftTop(-10000,-10000);}},setVisible:function(E,D,G,H,F){if(E){this.showAction();}if(D&&E){var C=function(){this.sync(true);if(H){H();}}.createDelegate(this);A.setVisible.call(this,true,true,G,C,F);}else{if(!E){this.hideUnders(true);}var C=H;if(D){C=function(){this.hideAction();if(H){H();}}.createDelegate(this);}A.setVisible.call(this,E,D,G,C,F);if(E){this.sync(true);}else{if(!D){this.hideAction();}}}},storeXY:function(C){delete this.lastLT;this.lastXY=C;},storeLeftTop:function(D,C){delete this.lastXY;this.lastLT=[D,C];},beforeFx:function(){this.beforeAction();return Ext.Layer.superclass.beforeFx.apply(this,arguments);},afterFx:function(){Ext.Layer.superclass.afterFx.apply(this,arguments);this.sync(this.isVisible());},beforeAction:function(){if(!this.updating&&this.shadow){this.shadow.hide();}},setLeft:function(C){this.storeLeftTop(C,this.getTop(true));A.setLeft.apply(this,arguments);this.sync();},setTop:function(C){this.storeLeftTop(this.getLeft(true),C);A.setTop.apply(this,arguments);this.sync();},setLeftTop:function(D,C){this.storeLeftTop(D,C);A.setLeftTop.apply(this,arguments);this.sync();},setXY:function(F,D,G,H,E){this.fixDisplay();this.beforeAction();this.storeXY(F);var C=this.createCB(H);A.setXY.call(this,F,D,G,C,E);if(!D){C();}},createCB:function(D){var C=this;return function(){C.constrainXY();C.sync(true);if(D){D();}};},setX:function(C,D,F,G,E){this.setXY([C,this.getY()],D,F,G,E);},setY:function(G,C,E,F,D){this.setXY([this.getX(),G],C,E,F,D);},setSize:function(E,F,D,H,I,G){this.beforeAction();var C=this.createCB(I);A.setSize.call(this,E,F,D,H,C,G);if(!D){C();}},setWidth:function(E,D,G,H,F){this.beforeAction();var C=this.createCB(H);A.setWidth.call(this,E,D,G,C,F);if(!D){C();}},setHeight:function(E,D,G,H,F){this.beforeAction();var C=this.createCB(H);A.setHeight.call(this,E,D,G,C,F);if(!D){C();}},setBounds:function(J,H,K,D,I,F,G,E){this.beforeAction();var C=this.createCB(G);if(!I){this.storeXY([J,H]);A.setXY.call(this,[J,H]);A.setSize.call(this,K,D,I,F,C,E);C();}else{A.setBounds.call(this,J,H,K,D,I,F,C,E);}return this;},setZIndex:function(C){this.zindex=C;this.setStyle("z-index",C+2);if(this.shadow){this.shadow.setZIndex(C+1);}if(this.shim){this.shim.setStyle("z-index",C);}}});})();Ext.Shadow=function(C){Ext.apply(this,C);if(typeof this.mode!="string"){this.mode=this.defaultMode;}var D=this.offset,B={h:0};var A=Math.floor(this.offset/2);switch(this.mode.toLowerCase()){case"drop":B.w=0;B.l=B.t=D;B.t-=1;if(Ext.isIE){B.l-=this.offset+A;B.t-=this.offset+A;B.w-=A;B.h-=A;B.t+=1;}break;case"sides":B.w=(D*2);B.l=-D;B.t=D-1;if(Ext.isIE){B.l-=(this.offset-A);B.t-=this.offset+A;B.l+=1;B.w-=(this.offset-A)*2;B.w-=A+1;B.h-=1;}break;case"frame":B.w=B.h=(D*2);B.l=B.t=-D;B.t+=1;B.h-=2;if(Ext.isIE){B.l-=(this.offset-A);B.t-=(this.offset-A);B.l+=1;B.w-=(this.offset+A+1);B.h-=(this.offset+A);B.h+=1;}break;}this.adjusts=B;};Ext.Shadow.prototype={offset:4,defaultMode:"drop",show:function(A){A=Ext.get(A);if(!this.el){this.el=Ext.Shadow.Pool.pull();if(this.el.dom.nextSibling!=A.dom){this.el.insertBefore(A);}}this.el.setStyle("z-index",this.zIndex||parseInt(A.getStyle("z-index"),10)-1);if(Ext.isIE){this.el.dom.style.filter="progid:DXImageTransform.Microsoft.alpha(opacity=50) progid:DXImageTransform.Microsoft.Blur(pixelradius="+(this.offset)+")";}this.realign(A.getLeft(true),A.getTop(true),A.getWidth(),A.getHeight());this.el.dom.style.display="block";},isVisible:function(){return this.el?true:false;},realign:function(A,M,L,D){if(!this.el){return ;}var I=this.adjusts,G=this.el.dom,N=G.style;var E=0;N.left=(A+I.l)+"px";N.top=(M+I.t)+"px";var K=(L+I.w),C=(D+I.h),F=K+"px",J=C+"px";if(N.width!=F||N.height!=J){N.width=F;N.height=J;if(!Ext.isIE){var H=G.childNodes;var B=Math.max(0,(K-12))+"px";H[0].childNodes[1].style.width=B;H[1].childNodes[1].style.width=B;H[2].childNodes[1].style.width=B;H[1].style.height=Math.max(0,(C-12))+"px";}}},hide:function(){if(this.el){this.el.dom.style.display="none";Ext.Shadow.Pool.push(this.el);delete this.el;}},setZIndex:function(A){this.zIndex=A;if(this.el){this.el.setStyle("z-index",A);}}};Ext.Shadow.Pool=function(){var B=[];var A=Ext.isIE?'<div class="x-ie-shadow"></div>':'<div class="x-shadow"><div class="xst"><div class="xstl"></div><div class="xstc"></div><div class="xstr"></div></div><div class="xsc"><div class="xsml"></div><div class="xsmc"></div><div class="xsmr"></div></div><div class="xsb"><div class="xsbl"></div><div class="xsbc"></div><div class="xsbr"></div></div></div>';return{pull:function(){var C=B.shift();if(!C){C=Ext.get(Ext.DomHelper.insertHtml("beforeBegin",document.body.firstChild,A));C.autoBoxAdjust=false;}return C;},push:function(C){B.push(C);}};}();Ext.BoxComponent=Ext.extend(Ext.Component,{initComponent:function(){Ext.BoxComponent.superclass.initComponent.call(this);this.addEvents("resize","move");},boxReady:false,deferHeight:false,setSize:function(B,D){if(typeof B=="object"){D=B.height;B=B.width;}if(!this.boxReady){this.width=B;this.height=D;return this;}if(this.lastSize&&this.lastSize.width==B&&this.lastSize.height==D){return this;}this.lastSize={width:B,height:D};var C=this.adjustSize(B,D);var F=C.width,A=C.height;if(F!==undefined||A!==undefined){var E=this.getResizeEl();if(!this.deferHeight&&F!==undefined&&A!==undefined){E.setSize(F,A);}else{if(!this.deferHeight&&A!==undefined){E.setHeight(A);}else{if(F!==undefined){E.setWidth(F);}}}this.onResize(F,A,B,D);this.fireEvent("resize",this,F,A,B,D);}return this;},setWidth:function(A){return this.setSize(A);},setHeight:function(A){return this.setSize(undefined,A);},getSize:function(){return this.el.getSize();},getPosition:function(A){if(A===true){return[this.el.getLeft(true),this.el.getTop(true)];}return this.xy||this.el.getXY();},getBox:function(A){var B=this.el.getSize();if(A===true){B.x=this.el.getLeft(true);B.y=this.el.getTop(true);}else{var C=this.xy||this.el.getXY();B.x=C[0];B.y=C[1];}return B;},updateBox:function(A){this.setSize(A.width,A.height);this.setPagePosition(A.x,A.y);return this;},getResizeEl:function(){return this.resizeEl||this.el;},getPositionEl:function(){return this.positionEl||this.el;},setPosition:function(A,F){if(A&&typeof A[1]=="number"){F=A[1];A=A[0];}this.x=A;this.y=F;if(!this.boxReady){return this;}var B=this.adjustPosition(A,F);var E=B.x,D=B.y;var C=this.getPositionEl();if(E!==undefined||D!==undefined){if(E!==undefined&&D!==undefined){C.setLeftTop(E,D);}else{if(E!==undefined){C.setLeft(E);}else{if(D!==undefined){C.setTop(D);}}}this.onPosition(E,D);this.fireEvent("move",this,E,D);}return this;},setPagePosition:function(A,C){if(A&&typeof A[1]=="number"){C=A[1];A=A[0];}this.pageX=A;this.pageY=C;if(!this.boxReady){return ;}if(A===undefined||C===undefined){return ;}var B=this.el.translatePoints(A,C);this.setPosition(B.left,B.top);return this;},onRender:function(B,A){Ext.BoxComponent.superclass.onRender.call(this,B,A);if(this.resizeEl){this.resizeEl=Ext.get(this.resizeEl);}if(this.positionEl){this.positionEl=Ext.get(this.positionEl);}},afterRender:function(){Ext.BoxComponent.superclass.afterRender.call(this);this.boxReady=true;this.setSize(this.width,this.height);if(this.x||this.y){this.setPosition(this.x,this.y);}else{if(this.pageX||this.pageY){this.setPagePosition(this.pageX,this.pageY);}}},syncSize:function(){delete this.lastSize;this.setSize(this.autoWidth?undefined:this.el.getWidth(),this.autoHeight?undefined:this.el.getHeight());return this;},onResize:function(D,B,A,C){},onPosition:function(A,B){},adjustSize:function(A,B){if(this.autoWidth){A="auto";}if(this.autoHeight){B="auto";}return{width:A,height:B};},adjustPosition:function(A,B){return{x:A,y:B};}});Ext.reg("box",Ext.BoxComponent);Ext.Container=Ext.extend(Ext.BoxComponent,{autoDestroy:true,defaultType:"panel",initComponent:function(){Ext.Container.superclass.initComponent.call(this);this.addEvents("afterlayout","beforeadd","beforeremove","add","remove");var A=this.items;if(A){delete this.items;if(A instanceof Array){this.add.apply(this,A);}else{this.add(A);}}},initItems:function(){if(!this.items){this.items=new Ext.util.MixedCollection(false,this.getComponentId);this.getLayout();}},setLayout:function(A){if(this.layout&&this.layout!=A){this.layout.setContainer(null);}this.initItems();this.layout=A;A.setContainer(this);},render:function(){Ext.Container.superclass.render.apply(this,arguments);if(this.layout){if(typeof this.layout=="string"){this.layout=new Ext.Container.LAYOUTS[this.layout.toLowerCase()](this.layoutConfig);}this.setLayout(this.layout);if(this.activeItem!==undefined){var A=this.activeItem;delete this.activeItem;this.layout.setActiveItem(A);return ;}}if(!this.ownerCt){this.doLayout();}if(this.monitorResize===true){Ext.EventManager.onWindowResize(this.doLayout,this);}},getLayoutTarget:function(){return this.el;},getComponentId:function(A){return A.itemId||A.id;},add:function(C){if(!this.items){this.initItems();}var B=arguments,A=B.length;if(A>1){for(var D=0;D<A;D++){this.add(B[D]);}return ;}var F=this.lookupComponent(this.applyDefaults(C));var E=this.items.length;if(this.fireEvent("beforeadd",this,F,E)!==false&&this.onBeforeAdd(F)!==false){this.items.add(F);F.ownerCt=this;this.fireEvent("add",this,F,E);}return F;},insert:function(D,C){if(!this.items){this.initItems();}var B=arguments,A=B.length;if(A>2){for(var E=A-1;E>=1;--E){this.insert(D,B[E]);}return ;}var F=this.lookupComponent(this.applyDefaults(C));if(F.ownerCt==this&&this.items.indexOf(F)<D){--D;}if(this.fireEvent("beforeadd",this,F,D)!==false&&this.onBeforeAdd(F)!==false){this.items.insert(D,F);F.ownerCt=this;this.fireEvent("add",this,F,D);}return F;},applyDefaults:function(A){if(this.defaults){if(typeof A=="string"){A=Ext.ComponentMgr.get(A);Ext.apply(A,this.defaults);}else{if(!A.events){Ext.applyIf(A,this.defaults);}else{Ext.apply(A,this.defaults);}}}return A;},onBeforeAdd:function(A){if(A.ownerCt){A.ownerCt.remove(A,false);}if(this.hideBorders===true){A.border=(A.border===true);}},remove:function(A,B){var C=this.getComponent(A);if(C&&this.fireEvent("beforeremove",this,C)!==false){this.items.remove(C);delete C.ownerCt;if(B===true||(B!==false&&this.autoDestroy)){C.destroy();}if(this.layout&&this.layout.activeItem==C){delete this.layout.activeItem;}this.fireEvent("remove",this,C);}return C;},getComponent:function(A){if(typeof A=="object"){return A;}return this.items.get(A);},lookupComponent:function(A){if(typeof A=="string"){return Ext.ComponentMgr.get(A);}else{if(!A.events){return this.createComponent(A);}}return A;},createComponent:function(A){return Ext.ComponentMgr.create(A,this.defaultType);},doLayout:function(){if(this.rendered&&this.layout){this.layout.layout();}if(this.items){var C=this.items.items;for(var B=0,A=C.length;B<A;B++){var D=C[B];if(D.doLayout){D.doLayout();}}}},getLayout:function(){if(!this.layout){var A=new Ext.layout.ContainerLayout(this.layoutConfig);this.setLayout(A);}return this.layout;},onDestroy:function(){if(this.items){var C=this.items.items;for(var B=0,A=C.length;B<A;B++){Ext.destroy(C[B]);}}if(this.monitorResize){Ext.EventManager.removeResizeListener(this.doLayout,this);}Ext.Container.superclass.onDestroy.call(this);},bubble:function(C,B,A){var D=this;while(D){if(C.apply(B||D,A||[D])===false){break;}D=D.ownerCt;}},cascade:function(F,E,B){if(F.apply(E||this,B||[this])!==false){if(this.items){var D=this.items.items;for(var C=0,A=D.length;C<A;C++){if(D[C].cascade){D[C].cascade(F,E,B);}else{F.apply(E||this,B||[D[C]]);}}}}},findById:function(C){var A,B=this;this.cascade(function(D){if(B!=D&&D.id===C){A=D;return false;}});return A||null;},findByType:function(A){return typeof A=="function"?this.findBy(function(B){return B.constructor===A;}):this.findBy(function(B){return B.constructor.xtype===A;});},find:function(B,A){return this.findBy(function(C){return C[B]===A;});},findBy:function(D,C){var A=[],B=this;this.cascade(function(E){if(B!=E&&D.call(C||E,E,B)===true){A.push(E);}});return A;}});Ext.Container.LAYOUTS={};Ext.reg("container",Ext.Container);Ext.layout.ContainerLayout=function(A){Ext.apply(this,A);};Ext.layout.ContainerLayout.prototype={monitorResize:false,activeItem:null,layout:function(){var A=this.container.getLayoutTarget();this.onLayout(this.container,A);this.container.fireEvent("afterlayout",this.container,this);},onLayout:function(A,B){this.renderAll(A,B);},isValidParent:function(B,A){return B.getEl().dom.parentNode==A.dom;},renderAll:function(D,E){var B=D.items.items;for(var C=0,A=B.length;C<A;C++){var F=B[C];if(F&&(!F.rendered||!this.isValidParent(F,E))){this.renderItem(F,C,E);}}},renderItem:function(C,A,B){if(C&&!C.rendered){if(this.extraCls){C.addClass(this.extraCls);}C.render(B,A);if(this.renderHidden&&C!=this.activeItem){C.hide();}}else{if(C&&!this.isValidParent(C,B)){if(this.extraCls){C.addClass(this.extraCls);}if(typeof A=="number"){A=B.dom.childNodes[A];}B.dom.insertBefore(C.getEl().dom,A||null);if(this.renderHidden&&C!=this.activeItem){C.hide();}}}},onResize:function(){if(this.container.collapsed){return ;}var A=this.container.bufferResize;if(A){if(!this.resizeTask){this.resizeTask=new Ext.util.DelayedTask(this.layout,this);this.resizeBuffer=typeof A=="number"?A:100;}this.resizeTask.delay(this.resizeBuffer);}else{this.layout();}},setContainer:function(A){if(this.monitorResize){if(A&&this.container&&A!=this.container){this.container.un("resize",this.onResize,this);}A.on("resize",this.onResize,this);}this.container=A;},parseMargins:function(B){var C=B.split(" ");var A=C.length;if(A==1){C[1]=C[0];C[2]=C[0];C[3]=C[0];}if(A==2){C[2]=C[0];C[3]=C[1];}return{top:parseInt(C[0],10)||0,right:parseInt(C[1],10)||0,bottom:parseInt(C[2],10)||0,left:parseInt(C[3],10)||0};}};Ext.Container.LAYOUTS["auto"]=Ext.layout.ContainerLayout;Ext.layout.FitLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,onLayout:function(A,B){Ext.layout.FitLayout.superclass.onLayout.call(this,A,B);if(!this.container.collapsed){this.setItemSize(this.activeItem||A.items.itemAt(0),B.getStyleSize());}},setItemSize:function(B,A){if(B&&A.height>0){B.setSize(A);}}});Ext.Container.LAYOUTS["fit"]=Ext.layout.FitLayout;Ext.layout.CardLayout=Ext.extend(Ext.layout.FitLayout,{deferredRender:false,renderHidden:true,setActiveItem:function(A){A=this.container.getComponent(A);if(this.activeItem!=A){if(this.activeItem){this.activeItem.hide();}this.activeItem=A;A.show();this.layout();}},renderAll:function(A,B){if(this.deferredRender){this.renderItem(this.activeItem,undefined,B);}else{Ext.layout.CardLayout.superclass.renderAll.call(this,A,B);}}});Ext.Container.LAYOUTS["card"]=Ext.layout.CardLayout;Ext.layout.AnchorLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,getAnchorViewSize:function(A,B){return B.dom==document.body?B.getViewSize():B.getStyleSize();},onLayout:function(F,I){Ext.layout.AnchorLayout.superclass.onLayout.call(this,F,I);var O=this.getAnchorViewSize(F,I);var M=O.width,E=O.height;if(M<20||E<20){return ;}var B,K;if(F.anchorSize){if(typeof F.anchorSize=="number"){B=F.anchorSize;}else{B=F.anchorSize.width;K=F.anchorSize.height;}}else{B=F.initialConfig.width;K=F.initialConfig.height;}var H=F.items.items,G=H.length,D,J,L,C,A;for(D=0;D<G;D++){J=H[D];if(J.anchor){L=J.anchorSpec;if(!L){var N=J.anchor.split(" ");J.anchorSpec=L={right:this.parseAnchor(N[0],J.initialConfig.width,B),bottom:this.parseAnchor(N[1],J.initialConfig.width,K)};}C=L.right?this.adjustWidthAnchor(L.right(M),J):undefined;A=L.bottom?this.adjustHeightAnchor(L.bottom(E),J):undefined;if(C||A){J.setSize(C||undefined,A||undefined);}}}},parseAnchor:function(B,F,A){if(B&&B!="none"){var D;if(/^(r|right|b|bottom)$/i.test(B)){var E=A-F;return function(G){if(G!==D){D=G;return G-E;}};}else{if(B.indexOf("%")!=-1){var C=parseFloat(B.replace("%",""))*0.01;return function(G){if(G!==D){D=G;return Math.floor(G*C);}};}else{B=parseInt(B,10);if(!isNaN(B)){return function(G){if(G!==D){D=G;return G+B;}};}}}}return false;},adjustWidthAnchor:function(B,A){return B;},adjustHeightAnchor:function(B,A){return B;}});Ext.Container.LAYOUTS["anchor"]=Ext.layout.AnchorLayout;Ext.layout.ColumnLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:true,extraCls:"x-column",scrollOffset:0,isValidParent:function(B,A){return B.getEl().dom.parentNode==this.innerCt.dom;},onLayout:function(C,F){var D=C.items.items,E=D.length,G,A;if(!this.innerCt){F.addClass("x-column-layout-ct");this.innerCt=F.createChild({cls:"x-column-inner"});this.renderAll(C,this.innerCt);this.innerCt.createChild({cls:"x-clear"});}var J=F.getViewSize();if(J.width<1&&J.height<1){return ;}var H=J.width-F.getPadding("lr")-this.scrollOffset,B=J.height-F.getPadding("tb"),I=H;this.innerCt.setWidth(H);for(A=0;A<E;A++){G=D[A];if(!G.columnWidth){I-=(G.getSize().width+G.getEl().getMargins("lr"));}}I=I<0?0:I;for(A=0;A<E;A++){G=D[A];if(G.columnWidth){G.setSize(Math.floor(G.columnWidth*I)-G.getEl().getMargins("lr"));}}}});Ext.Container.LAYOUTS["column"]=Ext.layout.ColumnLayout;Ext.layout.TableLayout=Ext.extend(Ext.layout.ContainerLayout,{monitorResize:false,setContainer:function(A){Ext.layout.TableLayout.superclass.setContainer.call(this,A);this.currentRow=0;this.currentColumn=0;},onLayout:function(C,E){var D=C.items.items,A=D.length,F,B;if(!this.table){E.addClass("x-table-layout-ct");this.table=E.createChild({tag:"table",cls:"x-table-layout",cellspacing:0,cn:{tag:"tbody"}},null,true);this.renderAll(C,E);}},getRow:function(A){var B=this.table.tBodies[0].childNodes[A];if(!B){B=document.createElement("tr");this.table.tBodies[0].appendChild(B);}return B;},getNextCell:function(C){var B=document.createElement("td"),A;if(!this.columns){A=this.getRow(0);}else{if(this.currentColumn!==0&&(this.currentColumn%this.columns===0)){A=this.getRow(++this.currentRow);this.currentColumn=(C.colspan||1);}else{A=this.getRow(this.currentRow);this.currentColumn+=(C.colspan||1);}}if(C.colspan){B.colSpan=C.colspan;}if(C.rowspan){B.rowSpan=C.rowspan;}B.className="x-table-layout-cell";A.appendChild(B);return B;},renderItem:function(C,A,B){if(C&&!C.rendered){C.render(this.getNextCell(C));}},isValidParent:function(B,A){return true;}});Ext.Container.LAYOUTS["table"]=Ext.layout.TableLayout;Ext.layout.AbsoluteLayout=Ext.extend(Ext.layout.AnchorLayout,{extraCls:"x-abs-layout-item",onLayout:function(A,B){B.position();Ext.layout.AbsoluteLayout.superclass.onLayout.call(this,A,B);}});Ext.Container.LAYOUTS["absolute"]=Ext.layout.AbsoluteLayout;Ext.Panel=Ext.extend(Ext.Container,{baseCls:"x-panel",collapsedCls:"x-panel-collapsed",maskDisabled:true,animCollapse:Ext.enableFx,headerAsText:true,buttonAlign:"right",collapsed:false,collapseFirst:true,minButtonWidth:75,elements:"body",toolTarget:"header",collapseEl:"bwrap",slideAnchor:"t",deferHeight:true,expandDefaults:{duration:0.25},collapseDefaults:{duration:0.25},initComponent:function(){Ext.Panel.superclass.initComponent.call(this);this.addEvents("bodyresize","titlechange","collapse","expand","beforecollapse","beforeexpand","beforeclose","close","activate","deactivate");if(this.tbar){this.elements+=",tbar";if(typeof this.tbar=="object"){this.topToolbar=this.tbar;}delete this.tbar;}if(this.bbar){this.elements+=",bbar";if(typeof this.bbar=="object"){this.bottomToolbar=this.bbar;}delete this.bbar;}if(this.header===true){this.elements+=",header";delete this.header;}else{if(this.title&&this.header!==false){this.elements+=",header";}}if(this.footer===true){this.elements+=",footer";delete this.footer;}if(this.buttons){var C=this.buttons;this.buttons=[];for(var B=0,A=C.length;B<A;B++){if(C[B].render){this.buttons.push(C[B]);}else{this.addButton(C[B]);}}}if(this.autoLoad){this.on("render",this.doAutoLoad,this,{delay:10});}},createElement:function(A,C){if(this[A]){C.appendChild(this[A].dom);return ;}if(A==="bwrap"||this.elements.indexOf(A)!=-1){if(this[A+"Cfg"]){this[A]=Ext.fly(C).createChild(this[A+"Cfg"]);}else{var B=document.createElement("div");B.className=this[A+"Cls"];this[A]=Ext.get(C.appendChild(B));}}},onRender:function(H,G){Ext.Panel.superclass.onRender.call(this,H,G);this.createClasses();if(this.el){this.el.addClass(this.baseCls);this.header=this.el.down("."+this.headerCls);this.bwrap=this.el.down("."+this.bwrapCls);var M=this.bwrap?this.bwrap:this.el;this.tbar=M.down("."+this.tbarCls);this.body=M.down("."+this.bodyCls);this.bbar=M.down("."+this.bbarCls);this.footer=M.down("."+this.footerCls);this.fromMarkup=true;}else{this.el=H.createChild({id:this.id,cls:this.baseCls},G);}var A=this.el,K=A.dom;if(this.cls){this.el.addClass(this.cls);}if(this.buttons){this.elements+=",footer";}if(this.frame){A.insertHtml("afterBegin",String.format(Ext.Element.boxMarkup,this.baseCls));this.createElement("header",K.firstChild.firstChild.firstChild);this.createElement("bwrap",K);var O=this.bwrap.dom;var E=K.childNodes[1],B=K.childNodes[2];O.appendChild(E);O.appendChild(B);var P=O.firstChild.firstChild.firstChild;this.createElement("tbar",P);this.createElement("body",P);this.createElement("bbar",P);this.createElement("footer",O.lastChild.firstChild.firstChild);if(!this.footer){this.bwrap.dom.lastChild.className+=" x-panel-nofooter";}}else{this.createElement("header",K);this.createElement("bwrap",K);var O=this.bwrap.dom;this.createElement("tbar",O);this.createElement("body",O);this.createElement("bbar",O);this.createElement("footer",O);if(!this.header){this.body.addClass(this.bodyCls+"-noheader");if(this.tbar){this.tbar.addClass(this.tbarCls+"-noheader");}}}if(this.border===false){this.el.addClass(this.baseCls+"-noborder");this.body.addClass(this.bodyCls+"-noborder");if(this.header){this.header.addClass(this.headerCls+"-noborder");}if(this.footer){this.footer.addClass(this.footerCls+"-noborder");}if(this.tbar){this.tbar.addClass(this.tbarCls+"-noborder");}if(this.bbar){this.bbar.addClass(this.bbarCls+"-noborder");}}if(this.bodyBorder===false){this.body.addClass(this.bodyCls+"-noborder");}if(this.bodyStyle){this.body.applyStyles(this.bodyStyle);}this.bwrap.enableDisplayMode("block");if(this.header){this.header.unselectable();if(this.headerAsText){this.header.dom.innerHTML='<span class="'+this.headerTextCls+'">'+this.header.dom.innerHTML+"</span>";if(this.iconCls){this.setIconClass(this.iconCls);}}}if(this.floating){this.makeFloating(this.floating);}if(this.collapsible){this.tools=this.tools?this.tools.slice(0):[];if(!this.hideCollapseTool){this.tools[this.collapseFirst?"unshift":"push"]({id:"toggle",handler:this.toggleCollapse,scope:this});}if(this.titleCollapse&&this.header){this.header.on("click",this.toggleCollapse,this);this.header.setStyle("cursor","pointer");}}if(this.tools){var J=this.tools;this.tools={};this.addTool.apply(this,J);}else{this.tools={};}if(this.buttons&&this.buttons.length>0){var D=this.footer.createChild({cls:"x-panel-btns-ct",cn:{cls:"x-panel-btns x-panel-btns-"+this.buttonAlign,html:'<table cellspacing="0"><tbody><tr></tr></tbody></table><div class="x-clear"></div>'}},null,true);var L=D.getElementsByTagName("tr")[0];for(var F=0,I=this.buttons.length;F<I;F++){var N=this.buttons[F];var C=document.createElement("td");C.className="x-panel-btn-td";N.render(L.appendChild(C));}}if(this.tbar&&this.topToolbar){if(this.topToolbar instanceof Array){this.topToolbar=new Ext.Toolbar(this.topToolbar);}this.topToolbar.render(this.tbar);}if(this.bbar&&this.bottomToolbar){if(this.bottomToolbar instanceof Array){this.bottomToolbar=new Ext.Toolbar(this.bottomToolbar);}this.bottomToolbar.render(this.bbar);}},setIconClass:function(B){var A=this.iconCls;this.iconCls=B;if(this.rendered){if(this.frame){this.header.addClass("x-panel-icon");this.header.replaceClass(A,this.iconCls);}else{var D=this.header.dom;var C=D.firstChild&&String(D.firstChild.tagName).toLowerCase()=="img"?D.firstChild:null;if(C){Ext.fly(C).replaceClass(A,this.iconCls);}else{Ext.DomHelper.insertBefore(D.firstChild,{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"x-panel-inline-icon "+this.iconCls});}}}},makeFloating:function(A){this.floating=true;this.el=new Ext.Layer(typeof A=="object"?A:{shadow:this.shadow!==undefined?this.shadow:"sides",shadowOffset:this.shadowOffset,constrain:false,shim:this.shim===false?false:undefined},this.el);},getTopToolbar:function(){return this.topToolbar;},getBottomToolbar:function(){return this.bottomToolbar;},addButton:function(A,D,C){var E={handler:D,scope:C,minWidth:this.minButtonWidth,hideParent:true};if(typeof A=="string"){E.text=A;}else{Ext.apply(E,A);}var B=new Ext.Button(E);if(!this.buttons){this.buttons=[];}this.buttons.push(B);return B;},addTool:function(){if(!this[this.toolTarget]){return ;}if(!this.toolTemplate){var F=new Ext.Template('<div class="x-tool x-tool-{id}">&#160</div>');F.disableFormats=true;F.compile();Ext.Panel.prototype.toolTemplate=F;}for(var E=0,C=arguments,B=C.length;E<B;E++){var A=C[E],G="x-tool-"+A.id+"-over";var D=this.toolTemplate.insertFirst(this[this.toolTarget],A,true);this.tools[A.id]=D;D.enableDisplayMode("block");D.on("click",this.createToolHandler(D,A,G,this));if(A.on){D.on(A.on);}if(A.hidden){D.hide();}if(A.qtip){if(typeof A.qtip=="object"){Ext.QuickTips.register(Ext.apply({target:D.id},A.qtip));}else{D.dom.qtip=A.qtip;}}D.addClassOnOver(G);}},onShow:function(){if(this.floating){return this.el.show();}Ext.Panel.superclass.onShow.call(this);},onHide:function(){if(this.floating){return this.el.hide();}Ext.Panel.superclass.onHide.call(this);},createToolHandler:function(C,A,D,B){return function(E){C.removeClass(D);E.stopEvent();if(A.handler){A.handler.call(A.scope||C,E,C,B);}};},afterRender:function(){if(this.fromMarkup&&this.height===undefined&&!this.autoHeight){this.height=this.el.getHeight();}if(this.floating&&!this.hidden&&!this.initHidden){this.el.show();}if(this.title){this.setTitle(this.title);}if(this.autoScroll){this.body.dom.style.overflow="auto";}if(this.html){this.body.update(typeof this.html=="object"?Ext.DomHelper.markup(this.html):this.html);delete this.html;}if(this.contentEl){var A=Ext.getDom(this.contentEl);Ext.fly(A).removeClass(["x-hidden","x-hide-display"]);this.body.dom.appendChild(A);}if(this.collapsed){this.collapsed=false;this.collapse(false);}Ext.Panel.superclass.afterRender.call(this);this.initEvents();},getKeyMap:function(){if(!this.keyMap){this.keyMap=new Ext.KeyMap(this.el,this.keys);}return this.keyMap;},initEvents:function(){if(this.keys){this.getKeyMap();}if(this.draggable){this.initDraggable();}},initDraggable:function(){this.dd=new Ext.Panel.DD(this,typeof this.draggable=="boolean"?null:this.draggable);},beforeEffect:function(){if(this.floating){this.el.beforeAction();}this.el.addClass("x-panel-animated");},afterEffect:function(){this.syncShadow();this.el.removeClass("x-panel-animated");},createEffect:function(B,A,C){var D={scope:C,block:true};if(B===true){D.callback=A;return D;}else{if(!B.callback){D.callback=A;}else{D.callback=function(){A.call(C);Ext.callback(B.callback,B.scope);};}}return Ext.applyIf(D,B);},collapse:function(B){if(this.collapsed||this.el.hasFxBlock()||this.fireEvent("beforecollapse",this,B)===false){return ;}var A=B===true||(B!==false&&this.animCollapse);this.beforeEffect();this.onCollapse(A,B);return this;},onCollapse:function(A,B){if(A){this[this.collapseEl].slideOut(this.slideAnchor,Ext.apply(this.createEffect(B||true,this.afterCollapse,this),this.collapseDefaults));}else{this[this.collapseEl].hide();this.afterCollapse();}},afterCollapse:function(){this.collapsed=true;this.el.addClass(this.collapsedCls);this.afterEffect();this.fireEvent("collapse",this);},expand:function(B){if(!this.collapsed||this.el.hasFxBlock()||this.fireEvent("beforeexpand",this,B)===false){return ;}var A=B===true||(B!==false&&this.animCollapse);this.el.removeClass(this.collapsedCls);this.beforeEffect();this.onExpand(A,B);return this;},onExpand:function(A,B){if(A){this[this.collapseEl].slideIn(this.slideAnchor,Ext.apply(this.createEffect(B||true,this.afterExpand,this),this.expandDefaults));}else{this[this.collapseEl].show();this.afterExpand();}},afterExpand:function(){this.collapsed=false;this.afterEffect();this.fireEvent("expand",this);},toggleCollapse:function(A){this[this.collapsed?"expand":"collapse"](A);return this;},onDisable:function(){if(this.rendered&&this.maskDisabled){this.el.mask();}Ext.Panel.superclass.onDisable.call(this);},onEnable:function(){if(this.rendered&&this.maskDisabled){this.el.unmask();}Ext.Panel.superclass.onEnable.call(this);},onResize:function(A,B){if(A!==undefined||B!==undefined){if(!this.collapsed){if(typeof A=="number"){this.body.setWidth(this.adjustBodyWidth(A-this.getFrameWidth()));}else{if(A=="auto"){this.body.setWidth(A);}}if(typeof B=="number"){this.body.setHeight(this.adjustBodyHeight(B-this.getFrameHeight()));}else{if(B=="auto"){this.body.setHeight(B);}}}else{this.queuedBodySize={width:A,height:B};if(!this.queuedExpand&&this.allowQueuedExpand!==false){this.queuedExpand=true;this.on("expand",function(){delete this.queuedExpand;this.onResize(this.queuedBodySize.width,this.queuedBodySize.height);this.doLayout();},this,{single:true});}}this.fireEvent("bodyresize",this,A,B);}this.syncShadow();},adjustBodyHeight:function(A){return A;},adjustBodyWidth:function(A){return A;},onPosition:function(){this.syncShadow();},onDestroy:function(){if(this.tools){for(var A in this.tools){Ext.destroy(this.tools[A]);}}Ext.destroy(this.topToolbar,this.bottomToolbar);Ext.Panel.superclass.onDestroy.call(this);},getFrameWidth:function(){var B=this.el.getFrameWidth("lr");if(this.frame){var A=this.bwrap.dom.firstChild;B+=(Ext.fly(A).getFrameWidth("l")+Ext.fly(A.firstChild).getFrameWidth("r"));var C=this.bwrap.dom.firstChild.firstChild.firstChild;B+=Ext.fly(C).getFrameWidth("lr");}return B;},getFrameHeight:function(){var A=this.el.getFrameWidth("tb");A+=(this.tbar?this.tbar.getHeight():0)+(this.bbar?this.bbar.getHeight():0);if(this.frame){var C=this.el.dom.firstChild;var D=this.bwrap.dom.lastChild;A+=(C.offsetHeight+D.offsetHeight);var B=this.bwrap.dom.firstChild.firstChild.firstChild;A+=Ext.fly(B).getFrameWidth("tb");}else{A+=(this.header?this.header.getHeight():0)+(this.footer?this.footer.getHeight():0);}return A;},getInnerWidth:function(){return this.getSize().width-this.getFrameWidth();},getInnerHeight:function(){return this.getSize().height-this.getFrameHeight();},syncShadow:function(){if(this.floating){this.el.sync(true);}},getLayoutTarget:function(){return this.body;},setTitle:function(B,A){this.title=B;if(this.header&&this.headerAsText){this.header.child("span").update(B);}if(A){this.setIconClass(A);}this.fireEvent("titlechange",this,B);return this;},getUpdater:function(){return this.body.getUpdater();},load:function(){var A=this.body.getUpdater();A.update.apply(A,arguments);return this;},beforeDestroy:function(){Ext.Element.uncache(this.header,this.tbar,this.bbar,this.footer,this.body);},createClasses:function(){this.headerCls=this.baseCls+"-header";this.headerTextCls=this.baseCls+"-header-text";this.bwrapCls=this.baseCls+"-bwrap";this.tbarCls=this.baseCls+"-tbar";this.bodyCls=this.baseCls+"-body";this.bbarCls=this.baseCls+"-bbar";this.footerCls=this.baseCls+"-footer";},createGhost:function(A,E,B){var D=document.createElement("div");D.className="x-panel-ghost "+(A?A:"");if(this.header){D.appendChild(this.el.dom.firstChild.cloneNode(true));}Ext.fly(D.appendChild(document.createElement("ul"))).setHeight(this.bwrap.getHeight());D.style.width=this.el.dom.offsetWidth+"px";if(!B){this.container.dom.appendChild(D);}else{Ext.getDom(B).appendChild(D);}if(E!==false&&this.el.useShim!==false){var C=new Ext.Layer({shadow:false,useDisplay:true,constrain:false},D);C.show();return C;}else{return new Ext.Element(D);}},doAutoLoad:function(){this.body.load(typeof this.autoLoad=="object"?this.autoLoad:{url:this.autoLoad});}});Ext.reg("panel",Ext.Panel);Ext.Window=Ext.extend(Ext.Panel,{baseCls:"x-window",resizable:true,draggable:true,closable:true,constrain:false,constrainHeader:false,plain:false,minimizable:false,maximizable:false,minHeight:100,minWidth:200,expandOnShow:true,closeAction:"close",collapsible:false,initHidden:true,monitorResize:true,elements:"header,body",frame:true,floating:true,initComponent:function(){Ext.Window.superclass.initComponent.call(this);this.addEvents("resize","maximize","minimize","restore");},getState:function(){return Ext.apply(Ext.Window.superclass.getState.call(this)||{},this.getBox());},onRender:function(B,A){Ext.Window.superclass.onRender.call(this,B,A);if(this.plain){this.el.addClass("x-window-plain");}this.focusEl=this.el.createChild({tag:"a",href:"#",cls:"x-dlg-focus",tabIndex:"-1",html:"&#160;"});this.focusEl.swallowEvent("click",true);this.proxy=this.el.createProxy("x-window-proxy");this.proxy.enableDisplayMode("block");if(this.modal){this.mask=this.container.createChild({cls:"ext-el-mask"},this.el.dom);this.mask.enableDisplayMode("block");this.mask.hide();}},initEvents:function(){Ext.Window.superclass.initEvents.call(this);if(this.animateTarget){this.setAnimateTarget(this.animateTarget);}if(this.resizable){this.resizer=new Ext.Resizable(this.el,{minWidth:this.minWidth,minHeight:this.minHeight,handles:this.resizeHandles||"all",pinned:true,resizeElement:this.resizerAction});this.resizer.window=this;this.resizer.on("beforeresize",this.beforeResize,this);}if(this.draggable){this.header.addClass("x-window-draggable");}this.initTools();this.el.on("mousedown",this.toFront,this);this.manager=this.manager||Ext.WindowMgr;this.manager.register(this);this.hidden=true;if(this.maximized){this.maximized=false;this.maximize();}if(this.closable){var A=this.getKeyMap();A.on(27,this.onEsc,this);A.disable();}},initDraggable:function(){this.dd=new Ext.Window.DD(this);},onEsc:function(){this[this.closeAction]();},onDestroy:function(){if(this.manager){this.manager.unregister(this);}Ext.destroy(this.resizer,this.dd,this.proxy);Ext.Window.superclass.onDestroy.call(this);},initTools:function(){if(this.minimizable){this.addTool({id:"minimize",handler:this.minimize.createDelegate(this,[])});}if(this.maximizable){this.addTool({id:"maximize",handler:this.maximize.createDelegate(this,[])});this.addTool({id:"restore",handler:this.restore.createDelegate(this,[]),hidden:true});this.header.on("dblclick",this.toggleMaximize,this);}if(this.closable){this.addTool({id:"close",handler:this[this.closeAction].createDelegate(this,[])});}},resizerAction:function(){var A=this.proxy.getBox();this.proxy.hide();this.window.handleResize(A);return A;},beforeResize:function(){this.resizer.minHeight=Math.max(this.minHeight,this.getFrameHeight()+40);this.resizer.minWidth=Math.max(this.minWidth,this.getFrameWidth()+40);this.resizeBox=this.el.getBox();},updateHandles:function(){if(Ext.isIE&&this.resizer){this.resizer.syncHandleHeight();this.el.repaint();}},handleResize:function(B){var A=this.resizeBox;if(A.x!=B.x||A.y!=B.y){this.updateBox(B);}else{this.setSize(B);}this.focus();this.updateHandles();this.saveState();this.fireEvent("resize",this,B.width,B.height);},focus:function(){var C=this.focusEl,A=this.defaultButton,B=typeof A;if(B!="undefined"){if(B=="number"){C=this.buttons[A];}else{if(B=="string"){C=Ext.getCmp(A);}else{C=A;}}}C.focus.defer(10,C);},setAnimateTarget:function(A){A=Ext.get(A);this.animateTarget=A;},beforeShow:function(){delete this.el.lastXY;delete this.el.lastLT;if(this.x===undefined||this.y===undefined){var A=this.el.getAlignToXY(this.container,"c-c");var B=this.el.translatePoints(A[0],A[1]);this.x=this.x===undefined?B.left:this.x;this.y=this.y===undefined?B.top:this.y;}this.el.setLeftTop(this.x,this.y);if(this.expandOnShow){this.expand(false);}if(this.modal){Ext.getBody().addClass("x-body-masked");this.mask.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));this.mask.show();}},show:function(C,A,B){if(!this.rendered){this.render(Ext.getBody());}if(this.hidden===false){this.toFront();return ;}if(this.fireEvent("beforeshow",this)===false){return ;}if(A){this.on("show",A,B,{single:true});}this.hidden=false;if(C!==undefined){this.setAnimateTarget(C);}this.beforeShow();if(this.animateTarget){this.animShow();}else{this.afterShow();}},afterShow:function(){this.proxy.hide();this.el.setStyle("display","block");this.el.show();if(this.maximized){this.fitContainer();}if(this.monitorResize||this.modal||this.constrain||this.constrainHeader){Ext.EventManager.onWindowResize(this.onWindowResize,this);}this.doConstrain();if(this.layout){this.doLayout();}if(this.keyMap){this.keyMap.enable();}this.toFront();this.updateHandles();this.fireEvent("show",this);},animShow:function(){this.proxy.show();this.proxy.setBox(this.animateTarget.getBox());this.proxy.setOpacity(0);var A=this.getBox(false);A.callback=this.afterShow;A.scope=this;A.duration=0.25;A.easing="easeNone";A.opacity=0.5;A.block=true;this.el.setStyle("display","none");this.proxy.shift(A);},hide:function(C,A,B){if(this.hidden||this.fireEvent("beforehide",this)===false){return ;}if(A){this.on("hide",A,B,{single:true});}this.hidden=true;if(C!==undefined){this.setAnimateTarget(C);}if(this.animateTarget){this.animHide();}else{this.el.hide();this.afterHide();}},afterHide:function(){this.proxy.hide();if(this.monitorResize||this.modal||this.constrain||this.constrainHeader){Ext.EventManager.removeResizeListener(this.onWindowResize,this);}if(this.modal){this.mask.hide();Ext.getBody().removeClass("x-body-masked");}if(this.keyMap){this.keyMap.disable();}this.fireEvent("hide",this);},animHide:function(){this.proxy.setOpacity(0.5);this.proxy.show();var B=this.getBox(false);this.proxy.setBox(B);this.el.hide();var A=this.animateTarget.getBox();A.callback=this.afterHide;A.scope=this;A.duration=0.25;A.easing="easeNone";A.block=true;A.opacity=0;this.proxy.shift(A);},onWindowResize:function(){if(this.maximized){this.fitContainer();}if(this.modal){this.mask.setSize("100%","100%");var A=this.mask.dom.offsetHeight;this.mask.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));}this.doConstrain();},doConstrain:function(){if(this.constrain||this.constrainHeader){var B;if(this.constrain){B={right:this.el.shadowOffset,left:this.el.shadowOffset,bottom:this.el.shadowOffset};}else{var A=this.getSize();B={right:-(A.width-100),bottom:-(A.height-25)};}var C=this.el.getConstrainToXY(this.container,true,B);if(C){this.setPosition(C[0],C[1]);}}},ghost:function(A){var C=this.createGhost(A);var B=this.getBox(true);C.setLeftTop(B.x,B.y);C.setWidth(B.width);this.el.hide();this.activeGhost=C;return C;},unghost:function(B,A){if(B!==false){this.el.show();this.focus();}if(A!==false){this.setPosition(this.activeGhost.getLeft(true),this.activeGhost.getTop(true));}this.activeGhost.hide();this.activeGhost.remove();delete this.activeGhost;},minimize:function(){this.fireEvent("minimize",this);},close:function(){if(this.fireEvent("beforeclose",this)!==false){this.hide(null,function(){this.fireEvent("close",this);this.destroy();},this);}},maximize:function(){if(!this.maximized){this.expand(false);this.restoreSize=this.getSize();this.restorePos=this.getPosition(true);this.tools.maximize.hide();this.tools.restore.show();this.maximized=true;this.el.disableShadow();if(this.dd){this.dd.lock();}if(this.collapsible){this.tools.toggle.hide();}this.el.addClass("x-window-maximized");this.container.addClass("x-window-maximized-ct");this.setPosition(0,0);this.fitContainer();this.fireEvent("maximize",this);}},restore:function(){if(this.maximized){this.el.removeClass("x-window-maximized");this.tools.restore.hide();this.tools.maximize.show();this.setPosition(this.restorePos[0],this.restorePos[1]);this.setSize(this.restoreSize.width,this.restoreSize.height);delete this.restorePos;delete this.restoreSize;this.maximized=false;this.el.enableShadow(true);if(this.dd){this.dd.unlock();}if(this.collapsible){this.tools.toggle.show();}this.container.removeClass("x-window-maximized-ct");this.doConstrain();this.fireEvent("restore",this);}},toggleMaximize:function(){this[this.maximized?"restore":"maximize"]();},fitContainer:function(){var A=this.container.getViewSize();this.setSize(A.width,A.height);},setZIndex:function(A){if(this.modal){this.mask.setStyle("z-index",A);}this.el.setZIndex(++A);A+=5;if(this.resizer){this.resizer.proxy.setStyle("z-index",++A);}this.lastZIndex=A;},alignTo:function(B,A,C){var D=this.el.getAlignToXY(B,A,C);this.setPagePosition(D[0],D[1]);return this;},anchorTo:function(C,G,D,B,F){var E=function(){this.alignTo(C,G,D);};Ext.EventManager.onWindowResize(E,this);var A=typeof B;if(A!="undefined"){Ext.EventManager.on(window,"scroll",E,this,{buffer:A=="number"?B:50});}E.call(this);this[F]=E;return this;},toFront:function(){if(this.manager.bringToFront(this)){this.focus();}return this;},setActive:function(A){if(A){if(!this.maximized){this.el.enableShadow(true);}this.fireEvent("activate",this);}else{this.el.disableShadow();this.fireEvent("deactivate",this);}},toBack:function(){this.manager.sendToBack(this);return this;},center:function(){var A=this.el.getAlignToXY(this.container,"c-c");this.setPagePosition(A[0],A[1]);return this;}});Ext.reg("window",Ext.Window);Ext.Window.DD=function(A){this.win=A;Ext.Window.DD.superclass.constructor.call(this,A.el.id,"WindowDD-"+A.id);this.setHandleElId(A.header.id);this.scroll=false;};Ext.extend(Ext.Window.DD,Ext.dd.DD,{moveOnly:true,headerOffsets:[100,25],startDrag:function(){var A=this.win;this.proxy=A.ghost();if(A.constrain!==false){var C=A.el.shadowOffset;this.constrainTo(A.container,{right:C,left:C,bottom:C});}else{if(A.constrainHeader!==false){var B=this.proxy.getSize();this.constrainTo(A.container,{right:-(B.width-this.headerOffsets[0]),bottom:-(B.height-this.headerOffsets[1])});}}},b4Drag:Ext.emptyFn,onDrag:function(A){this.alignElWithMouse(this.proxy,A.getPageX(),A.getPageY());},endDrag:function(A){this.win.unghost();this.win.saveState();}});Ext.WindowGroup=function(){var F={};var D=[];var E=null;var C=function(I,H){return(!I._lastAccess||I._lastAccess<H._lastAccess)?-1:1;};var G=function(){var J=D,H=J.length;if(H>0){J.sort(C);var I=J[0].manager.zseed;for(var K=0;K<H;K++){var L=J[K];if(L&&!L.hidden){L.setZIndex(I+(K*10));}}}A();};var B=function(H){if(H!=E){if(E){E.setActive(false);}E=H;if(H){H.setActive(true);}}};var A=function(){for(var H=D.length-1;H>=0;--H){if(!D[H].hidden){B(D[H]);return ;}}B(null);};return{zseed:9000,register:function(H){F[H.id]=H;D.push(H);H.on("hide",A);},unregister:function(H){delete F[H.id];H.un("hide",A);D.remove(H);},get:function(H){return typeof H=="object"?H:F[H];},bringToFront:function(H){H=this.get(H);if(H!=E){H._lastAccess=new Date().getTime();G();return true;}return false;},sendToBack:function(H){H=this.get(H);H._lastAccess=-(new Date().getTime());G();return H;},hideAll:function(){for(var H in F){if(F[H]&&typeof F[H]!="function"&&F[H].isVisible()){F[H].hide();}}},getActive:function(){return E;},getBy:function(J,I){var K=[];for(var H=D.length-1;H>=0;--H){var L=D[H];if(J.call(I||L,L)!==false){K.push(L);}}return K;},each:function(I,H){for(var J in F){if(F[J]&&typeof F[J]!="function"){if(I.call(H||F[J],F[J])===false){return ;}}}}};};Ext.WindowMgr=new Ext.WindowGroup();Ext.dd.PanelProxy=function(A,B){this.panel=A;this.id=this.panel.id+"-ddproxy";Ext.apply(this,B);};Ext.dd.PanelProxy.prototype={insertProxy:true,setStatus:Ext.emptyFn,reset:Ext.emptyFn,update:Ext.emptyFn,stop:Ext.emptyFn,sync:Ext.emptyFn,getEl:function(){return this.ghost;},getGhost:function(){return this.ghost;},getProxy:function(){return this.proxy;},hide:function(){if(this.ghost){if(this.proxy){this.proxy.remove();delete this.proxy;}this.panel.el.dom.style.display="";this.ghost.remove();delete this.ghost;}},show:function(){if(!this.ghost){this.ghost=this.panel.createGhost(undefined,undefined,Ext.getBody());this.ghost.setXY(this.panel.el.getXY());if(this.insertProxy){this.proxy=this.panel.el.insertSibling({cls:"x-panel-dd-spacer"});this.proxy.setSize(this.panel.getSize());}this.panel.el.dom.style.display="none";}},repair:function(B,C,A){this.hide();if(typeof C=="function"){C.call(A||this);}},moveProxy:function(A,B){if(this.proxy){A.insertBefore(this.proxy.dom,B);}}};Ext.Panel.DD=function(B,A){this.panel=B;this.dragData={panel:B};this.proxy=new Ext.dd.PanelProxy(B,A);Ext.Panel.DD.superclass.constructor.call(this,B.el,A);this.setHandleElId(B.header.id);B.header.setStyle("cursor","move");this.scroll=false;};Ext.extend(Ext.Panel.DD,Ext.dd.DragSource,{showFrame:Ext.emptyFn,startDrag:Ext.emptyFn,b4StartDrag:function(A,B){this.proxy.show();},b4MouseDown:function(B){var A=B.getPageX();var C=B.getPageY();this.autoOffset(A,C);},onInitDrag:function(A,B){this.onStartDrag(A,B);return true;},createFrame:Ext.emptyFn,getDragEl:function(A){return this.proxy.ghost.dom;},endDrag:function(A){this.proxy.hide();this.panel.saveState();},autoOffset:function(A,B){A-=this.startPageX;B-=this.startPageY;this.setDelta(A,B);}});Ext.TabPanel=Ext.extend(Ext.Panel,{monitorResize:true,deferredRender:true,tabWidth:120,minTabWidth:30,resizeTabs:false,enableTabScroll:false,scrollIncrement:0,scrollRepeatInterval:400,scrollDuration:0.35,animScroll:true,tabPosition:"top",baseCls:"x-tab-panel",autoTabs:false,autoTabSelector:"div.x-tab",itemCls:"x-tab-item",activeTab:null,tabMargin:2,plain:false,wheelIncrement:20,elements:"body",headerAsText:false,frame:false,hideBorders:true,initComponent:function(){this.frame=false;Ext.TabPanel.superclass.initComponent.call(this);this.addEvents("beforetabchange","tabchange","contextmenu");this.setLayout(new Ext.layout.CardLayout({deferredRender:this.deferredRender}));if(this.tabPosition=="top"){this.elements+=",header";this.stripTarget="header";}else{this.elements+=",footer";this.stripTarget="footer";}if(!this.stack){this.stack=Ext.TabPanel.AccessStack();}this.initItems();},render:function(){Ext.TabPanel.superclass.render.apply(this,arguments);if(this.activeTab!==undefined){var A=this.activeTab;delete this.activeTab;this.setActiveTab(A);}},onRender:function(C,A){Ext.TabPanel.superclass.onRender.call(this,C,A);if(this.plain){var E=this.tabPosition=="top"?"header":"footer";this[E].addClass("x-tab-panel-"+E+"-plain");}var B=this[this.stripTarget];this.stripWrap=B.createChild({cls:"x-tab-strip-wrap",cn:{tag:"ul",cls:"x-tab-strip x-tab-strip-"+this.tabPosition}});this.stripSpacer=B.createChild({cls:"x-tab-strip-spacer"});this.strip=new Ext.Element(this.stripWrap.dom.firstChild);this.edge=this.strip.createChild({tag:"li",cls:"x-tab-edge"});this.strip.createChild({cls:"x-clear"});this.body.addClass("x-tab-panel-body-"+this.tabPosition);if(!this.itemTpl){var D=new Ext.Template('<li class="{cls}" id="{id}"><a class="x-tab-strip-close" onclick="return false;"></a>','<a class="x-tab-right" href="#" onclick="return false;"><em class="x-tab-left">','<span class="x-tab-strip-inner"><span class="x-tab-strip-text {iconCls}">{text}</span></span>',"</em></a></li>");D.disableFormats=true;D.compile();Ext.TabPanel.prototype.itemTpl=D;}this.items.each(this.initTab,this);},afterRender:function(){Ext.TabPanel.superclass.afterRender.call(this);if(this.autoTabs){this.readTabs(false);}},initEvents:function(){Ext.TabPanel.superclass.initEvents.call(this);this.on("add",this.onAdd,this);this.on("remove",this.onRemove,this);this.strip.on("mousedown",this.onStripMouseDown,this);this.strip.on("click",this.onStripClick,this);this.strip.on("contextmenu",this.onStripContextMenu,this);if(this.enableTabScroll){this.strip.on("mousewheel",this.onWheel,this);}},findTargets:function(C){var B=null;var A=C.getTarget("li",this.strip);if(A){B=this.getComponent(A.id.split("__")[1]);if(B.disabled){return{close:null,item:null,el:null};}}return{close:C.getTarget(".x-tab-strip-close",this.strip),item:B,el:A};},onStripMouseDown:function(B){B.preventDefault();if(B.button!=0){return ;}var A=this.findTargets(B);if(A.close){this.remove(A.item);return ;}if(A.item){this.setActiveTab(A.item);}},onStripClick:function(B){var A=this.findTargets(B);if(!A.close&&A.item&A.item!=this.activeTab){this.setActiveTab(A.item);}},onStripContextMenu:function(B){B.preventDefault();var A=this.findTargets(B);if(A.item){this.fireEvent("contextmenu",this,A.item,B);}},readTabs:function(D){if(D===true){this.items.each(function(G){this.remove(G);},this);}var C=this.el.query(this.autoTabSelector);for(var B=0,A=C.length;B<A;B++){var E=C[B];var F=E.getAttribute("title");E.removeAttribute("title");this.add({title:F,el:E});}},initTab:function(D,B){var E=this.strip.dom.childNodes[B];var A=D.closable?"x-tab-strip-closable":"";if(D.disabled){A+=" x-item-disabled";}if(D.iconCls){A+=" x-tab-with-icon";}var F={id:this.id+"__"+D.getItemId(),text:D.title,cls:A,iconCls:D.iconCls||""};var C=E?this.itemTpl.insertBefore(E,F):this.itemTpl.append(this.strip,F);Ext.fly(C).addClassOnOver("x-tab-strip-over");if(D.tabTip){Ext.fly(C).child("span.x-tab-strip-text",true).qtip=D.tabTip;}D.on("disable",this.onItemDisabled,this);D.on("enable",this.onItemEnabled,this);D.on("titlechange",this.onItemTitleChanged,this);D.on("beforeshow",this.onBeforeShowItem,this);},onAdd:function(C,B,A){this.initTab(B,A);if(this.items.getCount()==1){this.syncSize();}this.delegateUpdates();},onBeforeAdd:function(B){var A=B.events?(this.items.containsKey(B.getItemId())?B:null):this.items.get(B);if(A){this.setActiveTab(B);return false;}Ext.TabPanel.superclass.onBeforeAdd.apply(this,arguments);var C=B.elements;B.elements=C?C.replace(",header",""):C;B.border=(B.border===true);},onRemove:function(C,B){Ext.removeNode(this.getTabEl(B));this.stack.remove(B);if(B==this.activeTab){var A=this.stack.next();if(A){this.setActiveTab(A);}else{this.setActiveTab(0);}}this.delegateUpdates();},onBeforeShowItem:function(A){if(A!=this.activeTab){this.setActiveTab(A);return false;}},onItemDisabled:function(B){var A=this.getTabEl(B);if(A){Ext.fly(A).addClass("x-item-disabled");}this.stack.remove(B);},onItemEnabled:function(B){var A=this.getTabEl(B);if(A){Ext.fly(A).removeClass("x-item-disabled");}},onItemTitleChanged:function(B){var A=this.getTabEl(B);if(A){Ext.fly(A).child("span.x-tab-strip-text",true).innerHTML=B.title;}},getTabEl:function(A){return document.getElementById(this.id+"__"+A.getItemId());},onResize:function(){Ext.TabPanel.superclass.onResize.apply(this,arguments);this.delegateUpdates();},beginUpdate:function(){this.suspendUpdates=true;},endUpdate:function(){this.suspendUpdates=false;this.delegateUpdates();},hideTabStripItem:function(B){B=this.getComponent(B);var A=this.getTabEl(B);if(A){A.style.display="none";this.delegateUpdates();}},unhideTabStripItem:function(B){B=this.getComponent(B);var A=this.getTabEl(B);if(A){A.style.display="";this.delegateUpdates();}},delegateUpdates:function(){if(this.suspendUpdates){return ;}if(this.resizeTabs&&this.rendered){this.autoSizeTabs();}if(this.enableTabScroll&&this.rendered){this.autoScrollTabs();}},autoSizeTabs:function(){var G=this.items.length;var B=this.tabPosition!="bottom"?"header":"footer";var C=this[B].dom.offsetWidth;var A=this[B].dom.clientWidth;if(!this.resizeTabs||G<1||!A){return ;}var I=Math.max(Math.min(Math.floor((A-4)/G)-this.tabMargin,this.tabWidth),this.minTabWidth);this.lastTabWidth=I;var K=this.stripWrap.dom.getElementsByTagName("li");for(var E=0,H=K.length-1;E<H;E++){var J=K[E];var L=J.childNodes[1].firstChild.firstChild;var F=J.offsetWidth;var D=L.offsetWidth;L.style.width=(I-(F-D))+"px";}},adjustBodyWidth:function(A){if(this.header){this.header.setWidth(A);}if(this.footer){this.footer.setWidth(A);}return A;},setActiveTab:function(C){C=this.getComponent(C);if(!C||this.fireEvent("beforetabchange",this,C,this.activeTab)===false){return ;}if(!this.rendered){this.activeTab=C;return ;}if(this.activeTab!=C){if(this.activeTab){var A=this.getTabEl(this.activeTab);if(A){Ext.fly(A).removeClass("x-tab-strip-active");}this.activeTab.fireEvent("deactivate",this.activeTab);}var B=this.getTabEl(C);Ext.fly(B).addClass("x-tab-strip-active");this.activeTab=C;this.stack.add(C);this.layout.setActiveItem(C);if(this.layoutOnTabChange&&C.doLayout){C.doLayout();}if(this.scrolling){this.scrollToTab(C,this.animScroll);}C.fireEvent("activate",C);this.fireEvent("tabchange",this,C);}},getActiveTab:function(){return this.activeTab||null;},getItem:function(A){return this.getComponent(A);},autoScrollTabs:function(){var F=this.items.length;var D=this.header.dom.offsetWidth;var C=this.header.dom.clientWidth;var E=this.stripWrap;var B=E.dom.offsetWidth;var G=this.getScrollPos();var A=this.edge.getOffsetsTo(this.stripWrap)[0]+G;if(!this.enableTabScroll||F<1||B<20){return ;}if(A<=C){E.dom.scrollLeft=0;E.setWidth(C);if(this.scrolling){this.scrolling=false;this.header.removeClass("x-tab-scrolling");this.scrollLeft.hide();this.scrollRight.hide();}}else{if(!this.scrolling){this.header.addClass("x-tab-scrolling");}C-=E.getMargins("lr");E.setWidth(C>20?C:20);if(!this.scrolling){if(!this.scrollLeft){this.createScrollers();}else{this.scrollLeft.show();this.scrollRight.show();}}this.scrolling=true;if(G>(A-C)){E.dom.scrollLeft=A-C;}else{this.scrollToTab(this.activeTab,false);}this.updateScrollButtons();}},createScrollers:function(){var C=this.stripWrap.dom.offsetHeight;var A=this.header.insertFirst({cls:"x-tab-scroller-left"});A.setHeight(C);A.addClassOnOver("x-tab-scroller-left-over");this.leftRepeater=new Ext.util.ClickRepeater(A,{interval:this.scrollRepeatInterval,handler:this.onScrollLeft,scope:this});this.scrollLeft=A;var B=this.header.insertFirst({cls:"x-tab-scroller-right"});B.setHeight(C);B.addClassOnOver("x-tab-scroller-right-over");this.rightRepeater=new Ext.util.ClickRepeater(B,{interval:this.scrollRepeatInterval,handler:this.onScrollRight,scope:this});this.scrollRight=B;},getScrollWidth:function(){return this.edge.getOffsetsTo(this.stripWrap)[0]+this.getScrollPos();},getScrollPos:function(){return parseInt(this.stripWrap.dom.scrollLeft,10)||0;},getScrollArea:function(){return parseInt(this.stripWrap.dom.clientWidth,10)||0;},getScrollAnim:function(){return{duration:this.scrollDuration,callback:this.updateScrollButtons,scope:this};},getScrollIncrement:function(){return this.scrollIncrement||(this.resizeTabs?this.lastTabWidth+2:100);},scrollToTab:function(E,A){if(!E){return ;}var C=this.getTabEl(E);var G=this.getScrollPos(),D=this.getScrollArea();var F=Ext.fly(C).getOffsetsTo(this.stripWrap)[0]+G;var B=F+C.offsetWidth;if(F<G){this.scrollTo(F,A);}else{if(B>(G+D)){this.scrollTo(B-D,A);}}},scrollTo:function(B,A){this.stripWrap.scrollTo("left",B,A?this.getScrollAnim():false);if(!A){this.updateScrollButtons();}},onWheel:function(D){var E=D.getWheelDelta()*this.wheelIncrement*-1;D.stopEvent();var F=this.getScrollPos();var C=F+E;var A=this.getScrollWidth()-this.getScrollArea();var B=Math.max(0,Math.min(A,C));if(B!=F){this.scrollTo(B,false);}},onScrollRight:function(){var A=this.getScrollWidth()-this.getScrollArea();var C=this.getScrollPos();var B=Math.min(A,C+this.getScrollIncrement());if(B!=C){this.scrollTo(B,this.animScroll);}},onScrollLeft:function(){var B=this.getScrollPos();var A=Math.max(0,B-this.getScrollIncrement());if(A!=B){this.scrollTo(A,this.animScroll);}},updateScrollButtons:function(){var A=this.getScrollPos();this.scrollLeft[A==0?"addClass":"removeClass"]("x-tab-scroller-left-disabled");this.scrollRight[A>=(this.getScrollWidth()-this.getScrollArea())?"addClass":"removeClass"]("x-tab-scroller-right-disabled");}});Ext.reg("tabpanel",Ext.TabPanel);Ext.TabPanel.prototype.activate=Ext.TabPanel.prototype.setActiveTab;Ext.TabPanel.AccessStack=function(){var A=[];return{add:function(B){A.push(B);if(A.length>10){A.shift();}},remove:function(E){var D=[];for(var C=0,B=A.length;C<B;C++){if(A[C]!=E){D.push(A[C]);}}A=D;},next:function(){return A.pop();}};};Ext.Button=Ext.extend(Ext.Component,{hidden:false,disabled:false,pressed:false,enableToggle:false,menuAlign:"tl-bl?",type:"button",menuClassTarget:"tr",clickEvent:"click",handleMouseEvents:true,tooltipType:"qtip",buttonSelector:"button:first",initComponent:function(){Ext.Button.superclass.initComponent.call(this);this.addEvents("click","toggle","mouseover","mouseout","menushow","menuhide","menutriggerover","menutriggerout");if(this.menu){this.menu=Ext.menu.MenuMgr.get(this.menu);}if(typeof this.toggleGroup==="string"){this.enableToggle=true;}},onRender:function(C,A){if(!this.template){if(!Ext.Button.buttonTemplate){Ext.Button.buttonTemplate=new Ext.Template('<table border="0" cellpadding="0" cellspacing="0" class="x-btn-wrap"><tbody><tr>','<td class="x-btn-left"><i>&#160;</i></td><td class="x-btn-center"><em unselectable="on"><button class="x-btn-text" type="{1}">{0}</button></em></td><td class="x-btn-right"><i>&#160;</i></td>',"</tr></tbody></table>");}this.template=Ext.Button.buttonTemplate;}var B,E=[this.text||"&#160;",this.type];if(A){B=this.template.insertBefore(A,E,true);}else{B=this.template.append(C,E,true);}var D=B.child(this.buttonSelector);D.on("focus",this.onFocus,this);D.on("blur",this.onBlur,this);this.initButtonEl(B,D);if(this.menu){this.el.child(this.menuClassTarget).addClass("x-btn-with-menu");}Ext.ButtonToggleMgr.register(this);},initButtonEl:function(B,C){this.el=B;B.addClass("x-btn");if(this.icon){C.setStyle("background-image","url("+this.icon+")");}if(this.iconCls){C.addClass(this.iconCls);if(!this.cls){B.addClass(this.text?"x-btn-text-icon":"x-btn-icon");}}if(this.tabIndex!==undefined){C.dom.tabIndex=this.tabIndex;}if(this.tooltip){if(typeof this.tooltip=="object"){Ext.QuickTips.register(Ext.apply({target:C.id},this.tooltip));}else{C.dom[this.tooltipType]=this.tooltip;}}if(this.pressed){this.el.addClass("x-btn-pressed");}if(this.handleMouseEvents){B.on("mouseover",this.onMouseOver,this);B.on("mousedown",this.onMouseDown,this);}if(this.menu){this.menu.on("show",this.onMenuShow,this);this.menu.on("hide",this.onMenuHide,this);}if(this.id){this.el.dom.id=this.el.id=this.id;}if(this.repeat){var A=new Ext.util.ClickRepeater(B,typeof this.repeat=="object"?this.repeat:{});A.on("click",this.onClick,this);}B.on(this.clickEvent,this.onClick,this);},afterRender:function(){Ext.Button.superclass.afterRender.call(this);if(Ext.isIE6){this.autoWidth.defer(1,this);}else{this.autoWidth();}},setIconClass:function(A){if(this.el){this.el.child(this.buttonSelector).replaceClass(this.iconCls,A);}this.iconCls=A;},onDestroy:function(){if(this.rendered){Ext.ButtonToggleMgr.unregister(this);}},autoWidth:function(){if(this.el){this.el.setWidth("auto");if(Ext.isIE7&&Ext.isStrict){var A=this.el.child(this.buttonSelector);if(A&&A.getWidth()>20){A.clip();A.setWidth(Ext.util.TextMetrics.measure(A,this.text).width+A.getFrameWidth("lr"));}}if(this.minWidth){if(this.el.getWidth()<this.minWidth){this.el.setWidth(this.minWidth);}}}},setHandler:function(B,A){this.handler=B;this.scope=A;},setText:function(A){this.text=A;if(this.el){this.el.child("td.x-btn-center "+this.buttonSelector).update(A);}this.autoWidth();},getText:function(){return this.text;},toggle:function(A){A=A===undefined?!this.pressed:A;if(A!=this.pressed){if(A){this.el.addClass("x-btn-pressed");this.pressed=true;this.fireEvent("toggle",this,true);}else{this.el.removeClass("x-btn-pressed");this.pressed=false;this.fireEvent("toggle",this,false);}if(this.toggleHandler){this.toggleHandler.call(this.scope||this,this,A);}}},focus:function(){this.el.child(this.buttonSelector).focus();},onDisable:function(){if(this.el){if(!Ext.isIE6){this.el.addClass("x-item-disabled");}this.el.dom.disabled=true;}this.disabled=true;},onEnable:function(){if(this.el){if(!Ext.isIE6){this.el.removeClass("x-item-disabled");}this.el.dom.disabled=false;}this.disabled=false;},showMenu:function(){if(this.menu){this.menu.show(this.el,this.menuAlign);}return this;},hideMenu:function(){if(this.menu){this.menu.hide();}return this;},hasVisibleMenu:function(){return this.menu&&this.menu.isVisible();},onClick:function(A){if(A){A.preventDefault();}if(A.button!=0){return ;}if(!this.disabled){if(this.enableToggle&&(this.allowDepress!==false||!this.pressed)){this.toggle();}if(this.menu&&!this.menu.isVisible()&&!this.ignoreNextClick){this.showMenu();}this.fireEvent("click",this,A);if(this.handler){this.handler.call(this.scope||this,this,A);}}},isMenuTriggerOver:function(B,A){return this.menu&&!A;},isMenuTriggerOut:function(B,A){return this.menu&&!A;},onMouseOver:function(B){if(!this.disabled){var A=B.within(this.el,true);if(!A){this.el.addClass("x-btn-over");Ext.getDoc().on("mouseover",this.monitorMouseOver,this);this.fireEvent("mouseover",this,B);}if(this.isMenuTriggerOver(B,A)){this.fireEvent("menutriggerover",this,this.menu,B);}}},monitorMouseOver:function(A){if(A.target!=this.el.dom&&!A.within(this.el)){Ext.getDoc().un("mouseover",this.monitorMouseOver,this);this.onMouseOut(A);}},onMouseOut:function(B){var A=B.within(this.el)&&B.target!=this.el.dom;this.el.removeClass("x-btn-over");this.fireEvent("mouseout",this,B);if(this.isMenuTriggerOut(B),A){this.fireEvent("menutriggerout",this,this.menu,B);}},onFocus:function(A){if(!this.disabled){this.el.addClass("x-btn-focus");}},onBlur:function(A){this.el.removeClass("x-btn-focus");},getClickEl:function(B,A){return this.el;},onMouseDown:function(A){if(!this.disabled&&A.button==0){this.getClickEl(A).addClass("x-btn-click");Ext.getDoc().on("mouseup",this.onMouseUp,this);}},onMouseUp:function(A){if(A.button==0){this.getClickEl(A,true).removeClass("x-btn-click");Ext.getDoc().un("mouseup",this.onMouseUp,this);}},onMenuShow:function(A){this.ignoreNextClick=0;this.el.addClass("x-btn-menu-active");this.fireEvent("menushow",this,this.menu);},onMenuHide:function(A){this.el.removeClass("x-btn-menu-active");this.ignoreNextClick=this.restoreClick.defer(250,this);this.fireEvent("menuhide",this,this.menu);},restoreClick:function(){this.ignoreNextClick=0;}});Ext.reg("button",Ext.Button);Ext.ButtonToggleMgr=function(){var A={};function B(E,G){if(G){var F=A[E.toggleGroup];for(var D=0,C=F.length;D<C;D++){if(F[D]!=E){F[D].toggle(false);}}}}return{register:function(C){if(!C.toggleGroup){return ;}var D=A[C.toggleGroup];if(!D){D=A[C.toggleGroup]=[];}D.push(C);C.on("toggle",B);},unregister:function(C){if(!C.toggleGroup){return ;}var D=A[C.toggleGroup];if(D){D.remove(C);C.un("toggle",B);}}};}();Ext.Resizable=function(D,E){this.el=Ext.get(D);if(E&&E.wrap){E.resizeChild=this.el;this.el=this.el.wrap(typeof E.wrap=="object"?E.wrap:{cls:"xresizable-wrap"});this.el.id=this.el.dom.id=E.resizeChild.id+"-rzwrap";this.el.setStyle("overflow","hidden");this.el.setPositioning(E.resizeChild.getPositioning());E.resizeChild.clearPositioning();if(!E.width||!E.height){var F=E.resizeChild.getSize();this.el.setSize(F.width,F.height);}if(E.pinned&&!E.adjustments){E.adjustments="auto";}}this.proxy=this.el.createProxy({tag:"div",cls:"x-resizable-proxy",id:this.el.id+"-rzproxy"});this.proxy.unselectable();this.proxy.enableDisplayMode("block");Ext.apply(this,E);if(this.pinned){this.disableTrackOver=true;this.el.addClass("x-resizable-pinned");}var I=this.el.getStyle("position");if(I!="absolute"&&I!="fixed"){this.el.setStyle("position","relative");}if(!this.handles){this.handles="s,e,se";if(this.multiDirectional){this.handles+=",n,w";}}if(this.handles=="all"){this.handles="n s e w ne nw se sw";}var M=this.handles.split(/\s*?[,;]\s*?| /);var C=Ext.Resizable.positions;for(var H=0,J=M.length;H<J;H++){if(M[H]&&C[M[H]]){var L=C[M[H]];this[L]=new Ext.Resizable.Handle(this,L,this.disableTrackOver,this.transparent);}}this.corner=this.southeast;if(this.handles.indexOf("n")!=-1||this.handles.indexOf("w")!=-1){this.updateBox=true;}this.activeHandle=null;if(this.resizeChild){if(typeof this.resizeChild=="boolean"){this.resizeChild=Ext.get(this.el.dom.firstChild,true);}else{this.resizeChild=Ext.get(this.resizeChild,true);}}if(this.adjustments=="auto"){var B=this.resizeChild;var K=this.west,G=this.east,A=this.north,M=this.south;if(B&&(K||A)){B.position("relative");B.setLeft(K?K.el.getWidth():0);B.setTop(A?A.el.getHeight():0);}this.adjustments=[(G?-G.el.getWidth():0)+(K?-K.el.getWidth():0),(A?-A.el.getHeight():0)+(M?-M.el.getHeight():0)-1];}if(this.draggable){this.dd=this.dynamic?this.el.initDD(null):this.el.initDDProxy(null,{dragElId:this.proxy.id});this.dd.setHandleElId(this.resizeChild?this.resizeChild.id:this.el.id);}this.addEvents("beforeresize","resize");if(this.width!==null&&this.height!==null){this.resizeTo(this.width,this.height);}else{this.updateChildSize();}if(Ext.isIE){this.el.dom.style.zoom=1;}Ext.Resizable.superclass.constructor.call(this);};Ext.extend(Ext.Resizable,Ext.util.Observable,{resizeChild:false,adjustments:[0,0],minWidth:5,minHeight:5,maxWidth:10000,maxHeight:10000,enabled:true,animate:false,duration:0.35,dynamic:false,handles:false,multiDirectional:false,disableTrackOver:false,easing:"easeOutStrong",widthIncrement:0,heightIncrement:0,pinned:false,width:null,height:null,preserveRatio:false,transparent:false,minX:0,minY:0,draggable:false,resizeTo:function(B,A){this.el.setSize(B,A);this.updateChildSize();this.fireEvent("resize",this,B,A,null);},startSizing:function(C,B){this.fireEvent("beforeresize",this,C);if(this.enabled){if(!this.overlay){this.overlay=this.el.createProxy({tag:"div",cls:"x-resizable-overlay",html:"&#160;"},Ext.getBody());this.overlay.unselectable();this.overlay.enableDisplayMode("block");this.overlay.on("mousemove",this.onMouseMove,this);this.overlay.on("mouseup",this.onMouseUp,this);}this.overlay.setStyle("cursor",B.el.getStyle("cursor"));this.resizing=true;this.startBox=this.el.getBox();this.startPoint=C.getXY();this.offsets=[(this.startBox.x+this.startBox.width)-this.startPoint[0],(this.startBox.y+this.startBox.height)-this.startPoint[1]];this.overlay.setSize(Ext.lib.Dom.getViewWidth(true),Ext.lib.Dom.getViewHeight(true));this.overlay.show();if(this.constrainTo){var A=Ext.get(this.constrainTo);this.resizeRegion=A.getRegion().adjust(A.getFrameWidth("t"),A.getFrameWidth("l"),-A.getFrameWidth("b"),-A.getFrameWidth("r"));}this.proxy.setStyle("visibility","hidden");this.proxy.show();this.proxy.setBox(this.startBox);if(!this.dynamic){this.proxy.setStyle("visibility","visible");}}},onMouseDown:function(A,B){if(this.enabled){B.stopEvent();this.activeHandle=A;this.startSizing(B,A);}},onMouseUp:function(B){var A=this.resizeElement();this.resizing=false;this.handleOut();this.overlay.hide();this.proxy.hide();this.fireEvent("resize",this,A.width,A.height,B);},updateChildSize:function(){if(this.resizeChild){var C=this.el;var D=this.resizeChild;var B=this.adjustments;if(C.dom.offsetWidth){var A=C.getSize(true);D.setSize(A.width+B[0],A.height+B[1]);}if(Ext.isIE){setTimeout(function(){if(C.dom.offsetWidth){var E=C.getSize(true);D.setSize(E.width+B[0],E.height+B[1]);}},10);}}},snap:function(C,E,B){if(!E||!C){return C;}var D=C;var A=C%E;if(A>0){if(A>(E/2)){D=C+(E-A);}else{D=C-A;}}return Math.max(B,D);},resizeElement:function(){var A=this.proxy.getBox();if(this.updateBox){this.el.setBox(A,false,this.animate,this.duration,null,this.easing);}else{this.el.setSize(A.width,A.height,this.animate,this.duration,null,this.easing);}this.updateChildSize();if(!this.dynamic){this.proxy.hide();}return A;},constrain:function(B,C,A,D){if(B-C<A){C=B-A;}else{if(B-C>D){C=D-B;}}return C;},onMouseMove:function(S){if(this.enabled){try{if(this.resizeRegion&&!this.resizeRegion.contains(S.getPoint())){return ;}var Q=this.curSize||this.startBox;var I=this.startBox.x,H=this.startBox.y;var C=I,B=H;var J=Q.width,R=Q.height;var D=J,L=R;var K=this.minWidth,T=this.minHeight;var P=this.maxWidth,W=this.maxHeight;var F=this.widthIncrement;var A=this.heightIncrement;var U=S.getXY();var O=-(this.startPoint[0]-Math.max(this.minX,U[0]));var M=-(this.startPoint[1]-Math.max(this.minY,U[1]));var G=this.activeHandle.position;switch(G){case"east":J+=O;J=Math.min(Math.max(K,J),P);break;case"south":R+=M;R=Math.min(Math.max(T,R),W);break;case"southeast":J+=O;R+=M;J=Math.min(Math.max(K,J),P);R=Math.min(Math.max(T,R),W);break;case"north":M=this.constrain(R,M,T,W);H+=M;R-=M;break;case"west":O=this.constrain(J,O,K,P);I+=O;J-=O;break;case"northeast":J+=O;J=Math.min(Math.max(K,J),P);M=this.constrain(R,M,T,W);H+=M;R-=M;break;case"northwest":O=this.constrain(J,O,K,P);M=this.constrain(R,M,T,W);H+=M;R-=M;I+=O;J-=O;break;case"southwest":O=this.constrain(J,O,K,P);R+=M;R=Math.min(Math.max(T,R),W);I+=O;J-=O;break;}var N=this.snap(J,F,K);var V=this.snap(R,A,T);if(N!=J||V!=R){switch(G){case"northeast":H-=V-R;break;case"north":H-=V-R;break;case"southwest":I-=N-J;break;case"west":I-=N-J;break;case"northwest":I-=N-J;H-=V-R;break;}J=N;R=V;}if(this.preserveRatio){switch(G){case"southeast":case"east":R=L*(J/D);R=Math.min(Math.max(T,R),W);J=D*(R/L);break;case"south":J=D*(R/L);J=Math.min(Math.max(K,J),P);R=L*(J/D);break;case"northeast":J=D*(R/L);J=Math.min(Math.max(K,J),P);R=L*(J/D);break;case"north":var X=J;J=D*(R/L);J=Math.min(Math.max(K,J),P);R=L*(J/D);I+=(X-J)/2;break;case"southwest":R=L*(J/D);R=Math.min(Math.max(T,R),W);var X=J;J=D*(R/L);I+=X-J;break;case"west":var E=R;R=L*(J/D);R=Math.min(Math.max(T,R),W);H+=(E-R)/2;var X=J;J=D*(R/L);I+=X-J;break;case"northwest":var X=J;var E=R;R=L*(J/D);R=Math.min(Math.max(T,R),W);J=D*(R/L);H+=E-R;I+=X-J;break;}}this.proxy.setBounds(I,H,J,R);if(this.dynamic){this.resizeElement();}}catch(S){}}},handleOver:function(){if(this.enabled){this.el.addClass("x-resizable-over");}},handleOut:function(){if(!this.resizing){this.el.removeClass("x-resizable-over");}},getEl:function(){return this.el;},getResizeChild:function(){return this.resizeChild;},destroy:function(C){this.proxy.remove();if(this.overlay){this.overlay.removeAllListeners();this.overlay.remove();}var D=Ext.Resizable.positions;for(var A in D){if(typeof D[A]!="function"&&this[D[A]]){var B=this[D[A]];B.el.removeAllListeners();B.el.remove();}}if(C){this.el.update("");this.el.remove();}},syncHandleHeight:function(){var A=this.el.getHeight(true);if(this.west){this.west.el.setHeight(A);}if(this.east){this.east.el.setHeight(A);}}});Ext.Resizable.positions={n:"north",s:"south",e:"east",w:"west",se:"southeast",sw:"southwest",nw:"northwest",ne:"northeast"};Ext.Resizable.Handle=function(C,E,B,D){if(!this.tpl){var A=Ext.DomHelper.createTemplate({tag:"div",cls:"x-resizable-handle x-resizable-handle-{0}"});A.compile();Ext.Resizable.Handle.prototype.tpl=A;}this.position=E;this.rz=C;this.el=this.tpl.append(C.el.dom,[this.position],true);this.el.unselectable();if(D){this.el.setOpacity(0);}this.el.on("mousedown",this.onMouseDown,this);if(!B){this.el.on("mouseover",this.onMouseOver,this);this.el.on("mouseout",this.onMouseOut,this);}};Ext.Resizable.Handle.prototype={afterResize:function(A){},onMouseDown:function(A){this.rz.onMouseDown(this,A);},onMouseOver:function(A){this.rz.handleOver(this,A);},onMouseOut:function(A){this.rz.handleOut(this,A);}};Ext.MessageBox=function(){var R,B,N,Q;var G,J,P,A,K,M,H,F;var O,S,L,C="";var D=function(U){R.hide();Ext.callback(B.fn,B.scope||window,[U,S.dom.value],1);};var T=function(){if(B&&B.cls){R.el.removeClass(B.cls);}K.reset();};var E=function(W,U,V){if(B&&B.closable!==false){R.hide();}if(V){V.stopEvent();}};var I=function(U){var W=0;if(!U){O["ok"].hide();O["cancel"].hide();O["yes"].hide();O["no"].hide();return W;}R.footer.dom.style.display="";for(var V in O){if(typeof O[V]!="function"){if(U[V]){O[V].show();O[V].setText(typeof U[V]=="string"?U[V]:Ext.MessageBox.buttonText[V]);W+=O[V].el.getWidth()+15;}else{O[V].hide();}}}return W;};return{getDialog:function(U){if(!R){R=new Ext.Window({autoCreate:true,title:U,resizable:false,constrain:true,constrainHeader:true,minimizable:false,maximizable:false,stateful:false,modal:true,shim:true,buttonAlign:"center",width:400,height:100,minHeight:80,plain:true,footer:true,closable:true,close:function(){if(B&&B.buttons&&B.buttons.no&&!B.buttons.cancel){D("no");}else{D("cancel");}}});O={};var V=this.buttonText;O["ok"]=R.addButton(V["ok"],D.createCallback("ok"));O["yes"]=R.addButton(V["yes"],D.createCallback("yes"));O["no"]=R.addButton(V["no"],D.createCallback("no"));O["cancel"]=R.addButton(V["cancel"],D.createCallback("cancel"));O["ok"].hideMode=O["yes"].hideMode=O["no"].hideMode=O["cancel"].hideMode="offsets";R.render(document.body);R.getEl().addClass("x-window-dlg");N=R.mask;G=R.body.createChild({html:'<div class="ext-mb-icon"></div><div class="ext-mb-content"><span class="ext-mb-text"></span><br /><input type="text" class="ext-mb-input" /><textarea class="ext-mb-textarea"></textarea></div>'});H=Ext.get(G.dom.firstChild);var W=G.dom.childNodes[1];J=Ext.get(W.firstChild);P=Ext.get(W.childNodes[2]);P.enableDisplayMode();P.addKeyListener([10,13],function(){if(R.isVisible()&&B&&B.buttons){if(B.buttons.ok){D("ok");}else{if(B.buttons.yes){D("yes");}}}});A=Ext.get(W.childNodes[3]);A.enableDisplayMode();K=new Ext.ProgressBar({renderTo:G});G.createChild({cls:"x-clear"});}return R;},updateText:function(X){if(!R.isVisible()&&!B.width){R.setSize(this.maxWidth,100);}J.update(X||"&#160;");var V=C!=""?(H.getWidth()+H.getMargins("lr")):0;var Z=J.getWidth()+J.getMargins("lr");var W=R.getFrameWidth("lr");var Y=R.body.getFrameWidth("lr");if(Ext.isIE&&V>0){V+=3;}var U=Math.max(Math.min(B.width||V+Z+W+Y,this.maxWidth),Math.max(B.minWidth||this.minWidth,L||0));if(B.prompt===true){S.setWidth(U-V-W-Y);}if(B.progress===true||B.wait===true){K.setSize(U-V-W-Y);}R.setSize(U,"auto").center();return this;},updateProgress:function(V,U,W){K.updateProgress(V,U);if(W){this.updateText(W);}return this;},isVisible:function(){return R&&R.isVisible();},hide:function(){if(this.isVisible()){R.hide();T();}return this;},show:function(X){if(this.isVisible()){this.hide();}B=X;var Y=this.getDialog(B.title||"&#160;");Y.setTitle(B.title||"&#160;");var U=(B.closable!==false&&B.progress!==true&&B.wait!==true);Y.tools.close.setDisplayed(U);S=P;B.prompt=B.prompt||(B.multiline?true:false);if(B.prompt){if(B.multiline){P.hide();A.show();A.setHeight(typeof B.multiline=="number"?B.multiline:this.defaultTextHeight);S=A;}else{P.show();A.hide();}}else{P.hide();A.hide();}S.dom.value=B.value||"";if(B.prompt){Y.focusEl=S;}else{var W=B.buttons;var V=null;if(W&&W.ok){V=O["ok"];}else{if(W&&W.yes){V=O["yes"];}}if(V){Y.focusEl=V;}}this.setIcon(B.icon);L=I(B.buttons);K.setVisible(B.progress===true||B.wait===true);this.updateProgress(0,B.progressText);this.updateText(B.msg);if(B.cls){Y.el.addClass(B.cls);}Y.proxyDrag=B.proxyDrag===true;Y.modal=B.modal!==false;Y.mask=B.modal!==false?N:false;if(!Y.isVisible()){document.body.appendChild(R.el.dom);Y.setAnimateTarget(B.animEl);Y.show(B.animEl);}Y.on("show",function(){if(U===true){Y.keyMap.enable();}else{Y.keyMap.disable();}});if(B.wait===true){K.wait(B.waitConfig);}return this;},setIcon:function(U){if(U&&U!=""){H.removeClass("x-hidden");H.replaceClass(C,U);C=U;}else{H.replaceClass(C,"x-hidden");C="";}return this;},progress:function(W,V,U){this.show({title:W,msg:V,buttons:false,progress:true,closable:false,minWidth:this.minProgressWidth,progressText:U});return this;},wait:function(W,V,U){this.show({title:V,msg:W,buttons:false,closable:false,wait:true,modal:true,minWidth:this.minProgressWidth,waitConfig:U});return this;},alert:function(X,W,V,U){this.show({title:X,msg:W,buttons:this.OK,fn:V,scope:U});return this;},confirm:function(X,W,V,U){this.show({title:X,msg:W,buttons:this.YESNO,fn:V,scope:U,icon:this.QUESTION});return this;},prompt:function(Y,X,W,V,U){this.show({title:Y,msg:X,buttons:this.OKCANCEL,fn:W,minWidth:250,scope:V,prompt:true,multiline:U});return this;},OK:{ok:true},CANCEL:{cancel:true},OKCANCEL:{ok:true,cancel:true},YESNO:{yes:true,no:true},YESNOCANCEL:{yes:true,no:true,cancel:true},INFO:"ext-mb-info",WARNING:"ext-mb-warning",QUESTION:"ext-mb-question",ERROR:"ext-mb-error",defaultTextHeight:75,maxWidth:600,minWidth:100,minProgressWidth:250,buttonText:{ok:"OK",cancel:"Cancel",yes:"Yes",no:"No"}};}();Ext.Msg=Ext.MessageBox;Ext.LoadMask=function(C,B){this.el=Ext.get(C);Ext.apply(this,B);if(this.store){this.store.on("beforeload",this.onBeforeLoad,this);this.store.on("load",this.onLoad,this);this.store.on("loadexception",this.onLoad,this);this.removeMask=Ext.value(this.removeMask,false);}else{var A=this.el.getUpdater();A.showLoadIndicator=false;A.on("beforeupdate",this.onBeforeLoad,this);A.on("update",this.onLoad,this);A.on("failure",this.onLoad,this);this.removeMask=Ext.value(this.removeMask,true);}};Ext.LoadMask.prototype={msg:"Loading...",msgCls:"x-mask-loading",disabled:false,disable:function(){this.disabled=true;},enable:function(){this.disabled=false;},onLoad:function(){this.el.unmask(this.removeMask);},onBeforeLoad:function(){if(!this.disabled){this.el.mask(this.msg,this.msgCls);}},show:function(){this.onBeforeLoad();},hide:function(){this.onLoad();},destroy:function(){if(this.store){this.store.un("beforeload",this.onBeforeLoad,this);this.store.un("load",this.onLoad,this);this.store.un("loadexception",this.onLoad,this);}else{var A=this.el.getUpdater();A.un("beforeupdate",this.onBeforeLoad,this);A.un("update",this.onLoad,this);A.un("failure",this.onLoad,this);}}};Ext.ProgressBar=Ext.extend(Ext.BoxComponent,{baseCls:"x-progress",waitTimer:null,initComponent:function(){Ext.ProgressBar.superclass.initComponent.call(this);this.addEvents({"update":true});},onRender:function(D,A){Ext.ProgressBar.superclass.onRender.call(this,D,A);var C=new Ext.Template('<div class="{cls}-wrap">','<div class="{cls}-inner">','<div class="{cls}-bar">','<div class="{cls}-text">',"<div>&#160;</div>","</div>","</div>",'<div class="{cls}-text {cls}-text-back">',"<div>&#160;</div>","</div>","</div>","</div>");if(A){this.el=C.insertBefore(A,{cls:this.baseCls},true);}else{this.el=C.append(D,{cls:this.baseCls},true);}if(this.id){this.el.dom.id=this.id;}var B=this.el.dom.firstChild;this.progressBar=Ext.get(B.firstChild);if(this.textEl){this.textEl=Ext.get(this.textEl);delete this.textTopEl;}else{this.textTopEl=Ext.get(this.progressBar.dom.firstChild);var E=Ext.get(B.childNodes[1]);this.textTopEl.setStyle("z-index",99).addClass("x-hidden");this.textEl=new Ext.CompositeElement([this.textTopEl.dom.firstChild,E.dom.firstChild]);this.textEl.setWidth(B.offsetWidth);}if(this.value){this.updateProgress(this.value,this.text);}else{this.updateText(this.text);}this.setSize(this.width||"auto","auto");this.progressBar.setHeight(B.offsetHeight);},updateProgress:function(B,C){this.value=B||0;if(C){this.updateText(C);}var A=Math.floor(B*this.el.dom.firstChild.offsetWidth);this.progressBar.setWidth(A);if(this.textTopEl){this.textTopEl.removeClass("x-hidden").setWidth(A);}this.fireEvent("update",this,B,C);return this;},wait:function(B){if(!this.waitTimer){var A=this;B=B||{};this.waitTimer=Ext.TaskMgr.start({run:function(C){var D=B.increment||10;this.updateProgress(((((C+D)%D)+1)*(100/D))*0.01);},interval:B.interval||1000,duration:B.duration,onStop:function(){if(B.fn){B.fn.apply(B.scope||this);}this.reset();},scope:A});}return this;},isWaiting:function(){return this.waitTimer!=null;},updateText:function(A){this.text=A||"&#160;";this.textEl.update(this.text);return this;},setSize:function(A,C){Ext.ProgressBar.superclass.setSize.call(this,A,C);if(this.textTopEl){var B=this.el.dom.firstChild;this.textEl.setSize(B.offsetWidth,B.offsetHeight);}return this;},reset:function(A){this.updateProgress(0);if(this.textTopEl){this.textTopEl.addClass("x-hidden");}if(this.waitTimer){this.waitTimer.onStop=null;Ext.TaskMgr.stop(this.waitTimer);this.waitTimer=null;}if(A===true){this.hide();}return this;}});Ext.reg("progress",Ext.ProgressBar);