// Developed by Robert Nyman, code/licensing: http://code.google.com/p/domassistant/, documentation: http://www.robertnyman.com/domassistant
var DOMAssistant=function(){var A=function(D){};var B=document.all&&!/Opera/i.test(navigator.userAgent);var C=[];return{publicMethods:["elmsByClass","elmsByAttribute","elmsByTag"],initCore:function(){this.applyMethod.call(window,"$",this.$);this.applyMethod.call(window,"$$",this.$$);window.DOMAssistant=this;if(B){A=Array;}A.prototype=[];A.prototype.each=function(F){for(var E=0,D=this.length;E<D;E++){F.call(this[E]);}return this;};A.prototype.end=function(){return this.previousSet;};this.attach(this);},addMethods:function(D,E){C.push([D,E]);this.addHTMLArrayPrototype(D,E);},addMethodsToElm:function(F){for(var E=0,D=C.length;E<D;E++){this.applyMethod.call(F,C[E][0],C[E][1]);}},applyMethod:function(E,D){if(typeof this[E]!=="function"){this[E]=D;}},attach:function(H){var D=H.publicMethods;if(typeof D==="undefined"){var F;for(var J in H){if(typeof H[J]!=="undefined"){this.addMethods(J,H[J]);}}}else{if(D.constructor===Array){for(var G=0,E=D.length,I;G<E;G++){I=D[G];this.addMethods(I,H[I]);}}}if(typeof H.init==="function"){H.init();}},createHTMLArray:function(){return new A();},addHTMLArrayPrototype:function(D,E){A.prototype[D]=function(){var J=new A();J.previousSet=this;var K;for(var I=0,F=this.length;I<F;I++){K=E.apply(this[I],arguments);if(K!==null&&K.constructor===Array){for(var G=0,H=K.length;G<H;G++){J.push(K[G]);}}else{J.push(K);}}return J;};},$:function(){var H=new A();if(document.getElementById){var D=arguments[0];if(typeof D==="string"){D=D.replace(/^[^#]*(#)/,"$1");if(/^#[\w\-\_]+$/.test(D)){var G=DOMAssistant.$$(D.substr(1),false);if(G){H.push(G);}}else{H=DOMAssistant.cssSelection(D);}}else{if(typeof D==="object"){if(arguments.length===1){H=DOMAssistant.$$(D);}else{for(var E=0,F=arguments.length;E<F;E++){H.push(arguments[E]);}}}}}return H;},$$:function(J,G){var I=(typeof J==="object")?J:document.getElementById(J);var H=G||true;if(typeof J==="string"&&I&&I.id!==J){I=null;for(var E=0,D=document.all.length,F;E<D;E++){F=document.all[E];if(F.id===J){I=F;break;}}}if(I&&H){DOMAssistant.addMethodsToElm(I);}return I;},cssSelection:function(D){if(document.querySelectorAll){DOMAssistant.cssSelection=function(H){var I=new A();var G=document.querySelectorAll(H);for(var F=0,E=G.length;F<E;F++){I.push(G[F]);}return I;};}else{if(document.evaluate){DOMAssistant.cssSelection=function(X){var N=X.replace(/\s*(,)\s*/g,"$1").split(",");var L=new A();var a,H,e,V,J,K,O,b;var F=/^(\w+)?(#[\w\-_]+|\*)?((\.[\w\-_]+)*)?((\[\w+(\^|\$|\*)?=?[\w\-\_]+\]+)*)?(((:\w+[\w\-]*)(\((odd|even|\d+n?((\+|\-)\d+)?|\w+|((\w*\.[\w\-_]+)*)?|(\[#?\w+(\^|\$|\*)?=?[\w\-\_]+\]+))\))?)*)?(>|\+|~)?/;for(var Y=0,P=N.length;Y<P;Y++){a=N[Y];if(Y>0){H=false;for(var Q=0,S=Y;Q<S;Q++){if(N[Y]===N[Q]){H=true;break;}}if(H){continue;}}e=a.split(" ");V=".";for(var W=0,Z=e.length;W<Z;W++){J=F.exec(e[W]);K={tag:(!J[1]||J[2]==="*")?"*":J[1],id:(J[2]!=="*")?J[2]:null,allClasses:J[3],allAttr:J[5],pseudoClass:J[10],pseudoValue:J[12],tagRelation:J[19]};if(K.tagRelation){switch(K.tagRelation){case">":V+="/child::";break;case"+":V+="/following-sibling::*[1]/self::";break;case"~":V+="/following-sibling::";break;}}else{V+=(W>0&&/(>|\+|~)/.test(e[W-1]))?K.tag:("//"+K.tag);}if(K.id){V+="[@id = '"+K.id.replace(/^#/,"")+"']";}if(K.allClasses){V+=K.allClasses.replace(/\.([\w\-_]+)/g,"[contains(concat(' ', @class, ' '), ' $1 ')]");}if(K.allAttr){V+=K.allAttr.replace(/(\w+)(\^|\$|\*)?=?([\w\-_]+)?/g,function(f,k,j,i,h){var g=f;switch(j){case"^":g="starts-with(@"+k+", '"+i+"')";break;case"$":g="substring(@"+k+", (string-length(@"+k+") - "+(i.length-1)+"), 6) = '"+i+"'";break;case"*":g="contains(concat(' ', @"+k+", ' '), '"+i+"')";break;default:g="@"+k+((i)?"='"+i+"'":"");}return g;});}if(K.pseudoClass){var I=K.pseudoValue;switch(K.pseudoClass.replace(/^:/,"")){case"first-child":V+="[count(preceding-sibling::*) = 0]";break;case"first-of-type":V+="[count(preceding-sibling::"+K.tag+") = 0]";break;case"last-child":V+="[count(following-sibling::*) = 0]";break;case"last-of-type":V+="[count(following-sibling::"+K.tag+") = 0]";break;case"only-child":V+="[count(preceding-sibling::*) = 0 and count(following-sibling::*) = 0]";break;case"only-of-type":V+="[count(preceding-sibling::"+K.tag+") = 0 and count(following-sibling::"+K.tag+") = 0]";break;case"nth-of-type":V+="["+I+"]";break;case"empty":V+="[count(child::*) = 0 and string-length(text()) = 0]";break;case"contains":V+="[contains(., '"+I+"')]";break;case"enabled":V+="[not(@disabled)]";break;case"disabled":V+="[@disabled]";break;case"checked":V+="[@checked='checked']";break;case"nth-child":var E="[";if(/^\d+$/.test(I)){E+="position() = "+I;}else{if(/^n$/.test(I)){E="";}else{if(/^odd$/.test(I)){I="2n+1";}else{if(/^even$/.test(I)){I="2n+0";}}var d=/^(\d+)n((\+|\-)(\d+))?$/.exec(I);var M=parseInt(d[1],10);var c=0;if(d[3]&&d[4]){c=parseInt((d[3]+d[4]),10);if(c<0){c=M+c;}}E+="(count(./preceding-sibling::*) + 1)";if(M<c){var R=((c-M)%2===0)?0:1;E+=" mod "+M+" = "+R+" and position() > "+c;}else{if(c===M){E+=" mod "+M+" = 0";}else{E+=" mod "+M+" = "+c;}}}}if(!/^n$/.test(I)){E+="]";}V+=E;break;case"not":I=I.replace(/^\[#([\w\-\_]+)\]$/,"[id=$1]");var G=I.replace(/^(\w+)/,"self::$1");G=G.replace(/\.([\w\-_]+)/g,"contains(concat(' ', @class, ' '), ' $1 ')");G=G.replace(/\[(\w+)(\^|\$|\*)?=?([\w\-_]+)?\]/g,function(f,k,j,i,h){var g=f;switch(j){case"^":g="starts-with(@"+k+", '"+i+"')";break;case"$":g="substring(@"+k+", (string-length(@"+k+") - "+(i.length-1)+"), 6) = '"+i+"'";break;case"*":g="contains(concat(' ', @"+k+", ' '), '"+i+"')";break;default:g="@"+k+((i)?"='"+i+"'":"");}return g;});V+="[not("+G+")]";break;}}}var U=document.evaluate(V,document,null,0,null);var T=U.iterateNext();while(T){L.push(T);T=U.iterateNext();}}return L;};}else{DOMAssistant.cssSelection=function(E){var Be=E.replace(/\s*(,)\s*/g,"$1").split(",");var BR=new A();var A9=new A();var Bd=new A();var Bu,AA,Ai,Z,AR,BG,I,Q,A4,Ag,Bs,Aq,S,AF,BC,BQ,g,d,AJ,BJ,Az;var BZ=/^(>|\+|~)$/;var AD=/^(\w+)?(#[\w\-_]+|\*)?((\.[\w\-_]+)*)?((\[\w+(\^|\$|\*)?=?[\w\-\_]+\]+)*)?(((:\w+[\w\-]*)(\((odd|even|\d*n?((\+|\-)\d+)?|\w+|((\w*\.[\w\-_]+)*)?|(\[#?\w+(\^|\$|\*)?=?[\w\-\_]+\]+))\))?)*)?/;var G;function Bn(){for(var b=0,a=A9.length;b<a;b++){A9[b].added=false;}}function Y(){for(var b=0,a=Bu.length;b<a;b++){Bu[b].childElms=null;}}function c(b,a){if(B){switch(a){case"id":return b.id;case"for":return b.htmlFor;case"class":return b.className;}}return b.getAttribute(a,2);}for(var Aw=0,BK=Be.length;Aw<BK;Aw++){AA=Be[Aw];if(Aw>0){Ai=false;for(var Av=0,A0=Aw;Av<A0;Av++){if(Be[Aw]===Be[Av]){Ai=true;break;}}if(Ai){continue;}}Z=AA.split(" ");A9=[];A9.push(document);for(var Ar=0,AU=Z.length;Ar<AU;Ar++){var f=Z[Ar];Bd=[];if(Ar>0&&BZ.test(f)){AR=BZ.exec(f);if(AR){BG=/^\w+/.exec(Z[Ar+1]);if(BG){I=new RegExp("(^|\\s)"+BG+"(\\s|$)","i");Q=AR[0];if(Q===">"){for(var Ap=0,e=A9.length,BV;Ap<e;Ap++){BV=A9[Ap].childNodes;for(var Am=0,M=BV.length;Am<M;Am++){if(I.test(BV[Am].nodeName)){Bd.push(BV[Am]);}}}}else{if(Q==="+"){for(var Al=0,Bl=A9.length;Al<Bl;Al++){Ag=A9[Al].nextSibling;while(Ag&&Ag.nodeType!==1){Ag=Ag.nextSibling;}if(Ag){if(I.test(Ag.nodeName)){Bd.push(Ag);}}}}else{if(Q==="~"){for(var Ah=0,BS=A9.length;Ah<BS;Ah++){Ag=A9[Ah].nextSibling;while(Ag&&Ag.nodeType!==1){Ag=Ag.nextSibling;}while(Ag){if(!Ag.added&&I.test(Ag.nodeName)){Ag.added=true;Bd.push(Ag);}Ag=Ag.nextSibling;}}Bn();}}}}}A9=Bd;Ar=Ar+1;}else{var BF=AD.exec(f);var BX={tag:(!BF[1]||BF[2]==="*")?"*":BF[1],id:(BF[2]!=="*")?BF[2]:null,allClasses:BF[3],allAttr:BF[5],pseudoClass:BF[10],pseudoValue:BF[12]};if(BX.id){Bd.push(document.getElementById(BX.id.replace(/#/,"")));A9=Bd;}else{if(BX.tag){var BP;for(var Af=0,A5=A9.length;Af<A5;Af++){BP=A9[Af].getElementsByTagName(BX.tag);for(var Ac=0,Ad=BP.length;Ac<Ad;Ac++){if(!BP[Ac].added){BP[Ac].added=true;Bd.push(BP[Ac]);}}}A9=Bd;Bn();}}if(BX.allClasses){BX.allClasses=BX.allClasses.replace(/^\./,"").split(".");var Aj=[];for(var Aa=0,h=Bd.length,BN;Aa<h;Aa++){Aq=Bd[Aa];if(!Aq.added){BC=false;BN=Aq.className;for(var AZ=0,P=BX.allClasses.length,AB,At;AZ<P;AZ++){AB=new RegExp("(^|\\s)"+BX.allClasses[AZ].replace(/\./,"")+"(\\s|$)");BC=AB.test(BN);if(!BC){break;}}}if(BC){Aq.added=true;Aj.push(Aq);}}Bn();Bd=Aj;A9=Bd;}if(BX.allAttr){BX.allAttr=BX.allAttr.replace(/(\])(\[)/,"$1 $2").split(" ");var Ak=[];var H=/(\w+)(\^|\$|\*)?=?([\w\-_]+)?/;for(var AY=0,Bp=Bd.length,Au,L;AY<Bp;AY++){Aq=Bd[AY];if(!Aq.added){for(var AW=0,BW=BX.allAttr.length,AX,AM,Bm,N,BB;AW<BW;AW++){BC=false;AX=H.exec(BX.allAttr[AW]);L=AX[3]||null;Bm=(L)?("^"+L+"$"):null;BB=AX[2]||null;if(typeof BB==="string"){switch(BB){case"^":Bm=("^"+L);break;case"$":Bm=(L+"$");break;case"*":Bm=(L);break;}}var BO=(Bm)?new RegExp(Bm):null;Au=c(Aq,AX[1]);if(typeof Au==="string"&&Au.length>0){if(!BO||typeof BO==="undefined"||(BO&&BO.test(Au))){BC=true;}}if(!BC){continue;}}if(BC){Ak.push(Aq);}}}Bn();Bd=Ak;A9=Bd;}if(BX.pseudoClass){var AH=BX.pseudoClass;var Bi=BX.pseudoValue;var BU=Bd;Bd=[];Bu=[];if(/^:not$/.test(AH)){Bi=Bi.replace(/^\[#([\w\-\_]+)\]$/,"[id=$1]");var AI=/^(\w+)/.exec(Bi);var A1=/\.([\w\-_]+)/.exec(Bi);var Ay=/\[(\w+)(\^|\$|\*)?=?([\w\-_]+)?\]/.exec(Bi);var Bj=new RegExp("(^|\\s)"+((AI)?AI[1]:(A1)?A1[1]:"")+"(\\s|$)","i");if(Ay){var Bh=Ay[3];var Bb="^"+Ay[3]+"$";var AE=Ay[2];if(typeof AE==="string"){switch(AE){case"^":Bb=("^"+Bh);break;case"$":Bb=(Bh+"$");break;case"*":Bb=(Bh);break;}}Bj=new RegExp(Bb,"i");}for(var AT=0,A8=BU.length,F;AT<A8;AT++){F=BU[AT];BC=null;if(AI&&!Bj.test(F.nodeName)){BC=F;}else{if(A1&&!Bj.test(F.className)){BC=F;}else{if(Ay){if(!c(F,Ay[1])||!Bj.test(c(F,Ay[1]))){BC=F;}}}}if(BC&&!BC.added){BC.added=true;Bd.push(BC);}}A9=Bd;}else{if(/first-child/.test(AH)){for(var AS=0,Ao=BU.length;AS<Ao;AS++){S=BU[AS];AF=S.parentNode;BQ=AF.firstChild;while(BQ.nodeType!==1&&BQ.nextSibling){BQ=BQ.nextSibling;}if(BQ===S){Bd.push(S);}}A9=Bd;}else{if(/last-child/.test(AH)){for(var AQ=0,AC=BU.length;AQ<AC;AQ++){S=BU[AQ];AF=S.parentNode;g=AF.lastChild;while(g.nodeType!==1&&g.previousSibling){g=g.previousSibling;}if(g===S){Bd.push(S);}}A9=Bd;}else{if(/only-child/.test(AH)){for(var AP=0,T=BU.length;AP<T;AP++){S=BU[AP];AF=S.parentNode;BQ=AF.firstChild;while(BQ.nodeType!==1&&BQ.nextSibling){BQ=BQ.nextSibling;}g=AF.lastChild;while(g.nodeType!==1&&g.previousSibling){g=g.previousSibling;}if(BQ===S&&g===S){Bd.push(S);}}A9=Bd;}else{if(/nth-child/.test(AH)){if(/^\d+$/.test(Bi)){var BA=parseInt(Bi,10);for(var AO=0,Br=BU.length,V;AO<Br;AO++){V=0;S=BU[AO];AF=S.parentNode;AJ=AF.firstChild;if(AJ.nodeType===1){V=V+1;}while(V<BA&&AJ.nextSibling){AJ=AJ.nextSibling;if(AJ.nodeType===1){V=V+1;}}if(V===BA&&AJ&&!AJ.added&&(AJ.nodeName===S.nodeName)){AJ.added=true;Bd.push(S);}}Bn();}else{if(/^n$/.test(Bi)){for(var AL=0,BY=BU.length;AL<BY;AL++){Bd.push(BU[AL]);}}else{var Bc=/^(odd|even)|(\d+)n((\+|\-)(\d+))?$/.exec(Bi);var A2=parseInt(Bc[2],10);var X=(Bc[1]==="even")?1:0;var Ab=2;if(A2>0){Ab=A2;var R=(Bc[4])?parseInt((Bc[4]+Bc[5]),10):0;X=R-1;}for(var AK=0,BD=BU.length;AK<BD;AK++){S=BU[AK];AF=S.parentNode;if(!AF.childElms){BJ=AF.childNodes;Az=[];var K=AF.firstChild;if(K.nodeType===1){Az.push(K);}while(K&&K.nextSibling){K=K.nextSibling;if(K.nodeType===1){Az.push(K);}}AF.childElms=Az;Bu.push(AF);}else{Az=AF.childElms;}for(var A3=X,Ba=Az.length;A3<Ba;A3=A3+Ab){if(A3<0){continue;}Aq=Az[A3];if(!Aq.added&&Aq.nodeName===S.nodeName){Aq.added=true;Bd.push(S);}}}Bn();Y();}}A9=Bd;}else{if(/first-of-type/.test(AH)){for(var BT=0,Ax=BU.length;BT<Ax;BT++){S=BU[BT];AF=S.parentNode;d=AF.getElementsByTagName(S.nodeName);BQ=d[0];if(BQ===S){Bd.push(S);}}A9=Bd;}else{if(/last-of-type/.test(AH)){for(var BI=0,Ae=BU.length,BE;BI<Ae;BI++){S=BU[BI];if(!S.added){AF=S.parentNode;d=AF.getElementsByTagName(S.nodeName);g=d[d.length-1];while(g.parentNode!==AF){g=g.parentNode;}if(g===S){S.added=true;Bd.push(S);}}}Bn();A9=Bd;}else{if(/only-of-type/.test(AH)){for(var As=0,A7=BU.length;As<A7;As++){S=BU[As];AF=S.parentNode;d=AF.getElementsByTagName(S.nodeName);if(d.length===1){Bd.push(S);}}A9=Bd;}else{if(/nth-of-type/.test(AH)){var Bg=parseInt(Bi,10);for(var AN=0,U=BU.length;AN<U;AN++){S=BU[AN];AF=S.parentNode;Az=[];d=AF.childNodes;if(d.length>=Bg){for(var Bk=0,Bf=d.length,J;Bk<Bf;Bk++){if(Bk===Bg){break;}J=d[Bk];if(J.nodeName===S.nodeName){Az.push(J);}}Aq=Az[Az.length-1];if(Aq&&Aq===S){Bd.push(S);}}}A9=Bd;}else{if(/empty/.test(AH)){for(var Bo=0,BL=BU.length;Bo<BL;Bo++){S=BU[Bo];AF=S.parentNode;BJ=AF.childNodes;if(BJ.length===0){Bd.push(S);}}A9=Bd;}else{if(/enabled/.test(AH)){for(var BM=0,AV=BU.length;BM<AV;BM++){S=BU[BM];if(!S.disabled){Bd.push(S);}}A9=Bd;}else{if(/disabled/.test(AH)){for(var O=0,A6=BU.length;O<A6;O++){S=BU[O];if(S.disabled){Bd.push(S);}}A9=Bd;}else{if(/checked/.test(AH)){for(var An=0,Bq=BU.length;An<Bq;An++){S=BU[An];if(S.checked){Bd.push(S);}}A9=Bd;}else{if(/contains/.test(AH)){for(var BH=0,W=BU.length;BH<W;BH++){S=BU[BH];if(!S.added){if(new RegExp("(^|\\s)"+Bi+"(\\s|$)").test(S.innerHTML)){S.added=true;Bd.push(S);}}}Bn();A9=Bd;}}}}}}}}}}}}}}}}}for(var AG=0,Bt=A9.length;AG<Bt;AG++){BR.push(A9[AG]);}}return BR;};}}return DOMAssistant.cssSelection.call(this,D);},elmsByClass:function(E,D){if(document.evaluate){DOMAssistant.elmsByClass=function(K,F){var H=new A();if(this.getElementsByClassName&&!F){var J=this.getElementsByClassName(K);for(var I=0,G=J.length;I<G;I++){H.push(J[I]);}}else{var M=document.evaluate(".//"+((typeof F==="string")?F:"*")+"[contains(concat(' ', @class, ' '), ' "+K+" ')]",this,null,0,null);var L=M.iterateNext();while(L){H.push(L);L=M.iterateNext();}}return H;};}else{DOMAssistant.elmsByClass=function(L,F){var I=new A();var K;if(F&&typeof F==="object"){K=(F.constructor===Array)?F:[F];}else{K=this.getElementsByTagName(F||"*");}var H=new RegExp("(^|\\s)"+L+"(\\s|$)");for(var J=0,M,G=K.length;J<G;J++){M=K[J];if(H.test(M.className)){I.push(M);}}return I;};}return DOMAssistant.elmsByClass.call(this,E,D);},elmsByAttribute:function(E,F,D,G){if(document.evaluate){DOMAssistant.elmsByAttribute=function(I,J,H,L){var K=new A();var N="@"+I+((typeof J==="undefined"||J==="*")?"":" = '"+J+"'");if(typeof L==="string"){switch(L){case"^":N="starts-with(@"+I+", '"+J+"')";break;case"$":N="substring(@"+I+", (string-length(@"+I+") - "+(J.length-1)+"), 6) = '"+J+"'";break;case"*":N="contains(concat(' ', @"+I+", ' '), '"+J+"')";break;}}var O=document.evaluate(".//"+((typeof H==="string")?H:"*")+"["+N+"]",this,null,0,null);var M=O.iterateNext();while(M){K.push(M);M=O.iterateNext();}return K;};}else{DOMAssistant.elmsByAttribute=function(P,O,S,K){var H=new A();if(window.ActiveXObject&&document.all){P=P.replace(/class/,"className");}var I=(typeof O==="undefined")?null:("(^|\\s)"+O+"(\\s|$)");if(typeof K==="string"){switch(K){case"^":I=("^"+O);break;case"$":I=(O+"$");break;case"*":I=(O);break;}}var R=new RegExp(I);var J;if(S&&typeof S==="object"){J=(S.constructor===Array)?S:[S];}else{J=this.getElementsByTagName(S||"*");}for(var L=0,Q=J.length,N,M;L<Q;L++){N=J[L];M=N.getAttribute(P,2);if(typeof M==="string"&&M.length>0){if(!R||typeof R==="undefined"||(R&&R.test(M))){H.push(N);}}}return H;};}return DOMAssistant.elmsByAttribute.call(this,E,F,D,G);},elmsByTag:function(D){if(document.evaluate){DOMAssistant.elmsByTag=function(E){var F=new A();var H=document.evaluate(".//"+((typeof E==="string")?E:"*"),this,null,0,null);var G=H.iterateNext();while(G){F.push(G);G=H.iterateNext();}return F;};}else{DOMAssistant.elmsByTag=function(E){var G=new A();var I=this.getElementsByTagName(E);for(var H=0,F=I.length;H<F;H++){G.push(I[H]);}return G;};}return DOMAssistant.elmsByTag.call(this,D);}};}();DOMAssistant.initCore();DOMAssistant.AJAX=function(){var D=null;var A=0;var B=-1;var C="";return{publicMethods:["get","post","load","replaceWithAJAXContent"],initRequest:function(){var E=null;if(typeof XMLHttpRequest!=="undefined"){E=new XMLHttpRequest();}else{if(typeof window.ActiveXObject!=="undefined"){try{E=new window.ActiveXObject("Msxml2.XMLHTTP.4.0");}catch(H){try{E=new window.ActiveXObject("MSXML2.XMLHTTP");}catch(G){try{E=new window.ActiveXObject("Microsoft.XMLHTTP");}catch(F){E=null;}}}}}return E;},get:function(F,G,E){return DOMAssistant.AJAX.makeCall.call(this,F,G,"GET",E);},post:function(E,F){return DOMAssistant.AJAX.makeCall.call(this,E,F,"POST");},load:function(E,F){DOMAssistant.AJAX.get.call(this,E,DOMAssistant.AJAX.replaceWithAJAXContent,(F||false));},makeCall:function(G,H,J,F){var E=DOMAssistant.AJAX.initRequest();if(E){D=E;var I=function(P){var O=G.split("?");var L=(J==="POST")?O[0]:G;E.open(J,L,true);E.setRequestHeader("AJAX","true");var N=null;if(J==="POST"){var M=O[1];var K=(M)?M.length:0;N=M;E.setRequestHeader("Content-type","application/x-www-form-urlencoded");E.setRequestHeader("Content-length",K);E.setRequestHeader("Connection","close");}if(typeof H==="function"){E.onreadystatechange=function(){if(E.readyState===4){H.call(P,E.responseText,F);A=4;B=E.status;C=E.statusText;D=null;E=null;}};}E.send(N);}(this);}return this;},replaceWithAJAXContent:function(I,M){if(M){this.innerHTML+=I;}else{var E=this.elmsByTag("*");for(var H=0,L=E.length,K,J;H<L;H++){K=E[H];J=K.attributes;if(J){for(var F=0,G=J.length;F<G;F++){if(typeof K[J[F].name]==="function"){K[J[F].name]=null;}}}}this.innerHTML=I;}},getReadyState:function(){return(D&&typeof D.readyState!=="undefined")?D.readyState:A;},getStatus:function(){return B;},getStatusText:function(){return C;}};}();DOMAssistant.attach(DOMAssistant.AJAX);DOMAssistant.CSS=function(){return{addClass:function(B){var A=this.className;if(!new RegExp(("(^|\\s)"+B+"(\\s|$)"),"i").test(A)){this.className=A+((A.length>0)?" ":"")+B;}return this;},removeClass:function(B){var A=new RegExp(("(^|\\s)"+B+"(\\s|$)"),"i");this.className=this.className.replace(A,function(C){var D="";if(new RegExp("^\\s+.*\\s+$").test(C)){D=C.replace(/(\s+).+/,"$1");}return D;}).replace(/^\s+|\s+$/g,"");return this;},replaceClass:function(B,C){var A=new RegExp(("(^|\\s)"+B+"(\\s|$)"),"i");this.className=this.className.replace(A,function(D,G,F){var E=G+C+F;if(new RegExp("^\\s+.*\\s+$").test(D)){E=D.replace(/(\s+).+/,"$1");}return E;}).replace(/^\s+|\s+$/g,"");return this;},hasClass:function(A){return new RegExp(("(^|\\s)"+A+"(\\s|$)"),"i").test(this.className);},getStyle:function(B){var A="";if(document.defaultView&&document.defaultView.getComputedStyle){A=document.defaultView.getComputedStyle(this,"").getPropertyValue(B);}else{if(this.currentStyle){A=B.replace(/\-(\w)/g,function(C,D){return D.toUpperCase();});A=this.currentStyle[A];}}return A;}};}();DOMAssistant.attach(DOMAssistant.CSS);DOMAssistant.Content=function(){return{prev:function(){var A=this.previousSibling;while(A&&A.nodeType!==1){A=A.previousSibling;}return A;},next:function(){var A=this.nextSibling;while(A&&A.nodeType!==1){A=A.nextSibling;}return A;},create:function(C,B,A,D){var E=DOMAssistant.$(document.createElement(C));if(B){E.setAttributes(B);}if(typeof D!=="undefined"){E.addContent(D);}if(A){DOMAssistant.Content.addContent.call(this,E);}return E;},setAttributes:function(A){for(var B in A){if(/class/i.test(B)){this.className=A[B];}else{this.setAttribute(B,A[B]);}}return this;},addContent:function(A){var B=this;if(typeof A==="string"){this.innerHTML+=A;}else{B=this.appendChild(A);}return B;},replaceContent:function(B){for(var E=(this.childNodes.length-1),F,A;E>=0;E--){F=this.childNodes[E];A=F.attributes;if(A){for(var C=0,D=A.length;C<D;C++){if(typeof F[A[C].name]==="function"){F[A[C].name]=null;}}}F.parentNode.removeChild(F);}DOMAssistant.$(this).addContent(B);return this;},remove:function(){this.parentNode.removeChild(this);return null;}};}();DOMAssistant.attach(DOMAssistant.Content);DOMAssistant.Events=function(){return{publicMethods:["addEvent","removeEvent","preventDefault","cancelBubble"],init:function(){window.addEvent=this.addEvent;window.removeEvent=this.removeEvent;DOMAssistant.preventDefault=this.preventDefault;DOMAssistant.cancelBubble=this.cancelBubble;},addEvent:function(B,C){var A=(/^DOM/.test(B));if(A){if(this.addEventListener){this.addEventListener(B,C,false);}}else{if(!this.events){this.events={};}if(!this.events[B]){this.events[B]=[];}this.events[B].push(C);this["on"+B]=DOMAssistant.Events.handleEvent;if(typeof this.window==="object"){this.window["on"+B]=DOMAssistant.Events.handleEvent;}}return this;},handleEvent:function(A){var G=A||event;var H=G.target||G.srcElement||document;while(H.nodeType!==1&&H.parentNode){H=H.parentNode;}G.eventTarget=H;var E=G.type;var B=this.events[E];var F=B.length;var D;for(var C=0;C<F;C++){D=B[C].call(this,G);if(C===(F-1)){return D;}}},removeEvent:function(A,D){var B=this.events[A];for(var C=0;C<B.length;C++){if(B[C]===D){delete B[C];B.splice(C,1);}}return this;},preventDefault:function(A){if(A&&A.preventDefault){DOMAssistant.Events.preventDefault=function(B){B.preventDefault();};}else{DOMAssistant.Events.preventDefault=function(B){event.returnValue=false;};}return DOMAssistant.Events.preventDefault(A);},cancelBubble:function(A){if(A&&A.stopPropagation){DOMAssistant.Events.cancelBubble=function(B){B.stopPropagation();};}else{DOMAssistant.Events.cancelBubble=function(B){event.cancelBubble=true;};}return DOMAssistant.Events.cancelBubble(A);}};}();DOMAssistant.attach(DOMAssistant.Events);DOMAssistant.DOMLoad=function(){var DOMLoaded=false;var DOMLoadTimer=null;var functionsToCall=[];var addedStrings={};var errorHandling=null;var execFunctions=function(){for(var i=0,il=functionsToCall.length;i<il;i++){try{functionsToCall[i]();}catch(e){if(errorHandling&&typeof errorHandling==="function"){errorHandling(e);}}}functionsToCall=[];};var DOMHasLoaded=function(){if(DOMLoaded){return ;}DOMLoaded=true;execFunctions();};/*@cc_on @*//*@if (@_win32 || @_win64)
		if (document.getElementById) {
			document.write("<script id=\"ieScriptLoad\" defer src=\"//:\"><\/script>");
		    document.getElementById("ieScriptLoad").onreadystatechange = function() {
		        if (this.readyState === "complete") {
		            DOMHasLoaded();
		        }
		    };
		}
	/*@end @*/if(document.addEventListener){document.addEventListener("DOMContentLoaded",DOMHasLoaded,false);}if(/KHTML|WebKit|iCab/i.test(navigator.userAgent)){DOMLoadTimer=setInterval(function(){if(/loaded|complete/i.test(document.readyState)){DOMHasLoaded();clearInterval(DOMLoadTimer);}},10);}window.onload=DOMHasLoaded;return{DOMReady:function(){for(var i=0,il=arguments.length,funcRef;i<il;i++){funcRef=arguments[i];if(!funcRef.DOMReady&&!addedStrings[funcRef]){if(typeof funcRef==="string"){addedStrings[funcRef]=true;funcRef=new Function(funcRef);}funcRef.DOMReady=true;functionsToCall.push(funcRef);}}if(DOMLoaded){execFunctions();}},setErrorHandling:function(funcRef){errorHandling=funcRef;}};}();DOMAssistant.DOMReady=DOMAssistant.DOMLoad.DOMReady;
