var ajax=new Object();ajax.READY_STATE_UNINITIALIZED=0;ajax.READY_STATE_LOADING=1;ajax.READY_STATE_LOADED=2;ajax.READY_STATE_INTERACTIVE=3;ajax.READY_STATE_COMPLETE=4;ajax.METHOD_DELETE="DELETE";ajax.METHOD_GET="GET";ajax.METHOD_POST="POST";ajax.METHOD_PUT="PUT";ajax.GET_PARAMETER_MARKER="?";ajax.PARAMETER_DELIMITER="&";ajax.MIME_APPLICATION_URLENCODED="application/x-www-form-urlencoded; charset=utf-8";ajax.MIME_CONTENT_TYPE="Content-type";ajax.MIME_CONTENT_LENGTH="Content-length";ajax.CONNECTION="Connection";ajax.CONNECTION_CLOSE="'close'";ajax.MICROSOFT_XML="Microsoft.XMLHTTP";ajax.MICROSOFT_XML2="Msxml2.XMLHTTP";ajax.activeRequests=new Array();ajax.Request=function(F,D,E){this.component=F;this.url=D;this.method=E;};ajax.Request.prototype={getXmlHttpRequest:function(){var D;if(window.XMLHttpRequest){D=new XMLHttpRequest();}else{if(window.ActiveXObject){try{D=new ActiveXObject(ajax.MICROSOFT_XML2);}catch(C){D=new ActiveXObject(ajax.MICROSOFT_XML);}}}return D;},formatParameters:function(F){var E="";if(F&&F.length>0){for(var D=0;D<F.length;D++){E+=F[D][0]+"="+encodeURIComponent(F[D][1])+ajax.PARAMETER_DELIMITER;}}return E.substring(0,E.length-1);},sendRequest:function(){ajax.MIME_APPLICATION_URLENCODED="application/x-www-form-urlencoded; charset=utf-8";if(this.isActiveRequest(this.url)==false){this.addActiveRequest(this.url);var F="";if(arguments.length>0){F=this.formatParameters(arguments[0]);}var D=this.url;if(this.method==ajax.METHOD_GET&&F.length>0){D=D+ajax.GET_PARAMETER_MARKER+F;F="";}var E=this.getXmlHttpRequest();E.open(this.method,D,true);if(this.method!=ajax.METHOD_GET){E.setRequestHeader(ajax.MIME_CONTENT_TYPE,ajax.MIME_APPLICATION_URLENCODED);E.setRequestHeader(ajax.MIME_CONTENT_LENGTH,F.length);E.setRequestHeader(ajax.CONNECTION,ajax.CONNECTION_CLOSE);}E.onreadystatechange=this.handleResponse.bind(this,E);E.send(F);}},sendRequestJSON:function(){ajax.MIME_APPLICATION_URLENCODED="application/json";while(this.isActiveRequest(this.url)==true){continue;}if(this.isActiveRequest(this.url)==false){this.addActiveRequest(this.url);var F="";if(arguments.length>0){F=arguments[0];}var D=this.url;if(this.method==ajax.METHOD_GET&&F.length>0){D=D+ajax.GET_PARAMETER_MARKER+F;F="";}var E=this.getXmlHttpRequest();E.open(this.method,D,true);if(this.method!=ajax.METHOD_GET){E.setRequestHeader(ajax.MIME_CONTENT_TYPE,ajax.MIME_APPLICATION_URLENCODED);E.setRequestHeader(ajax.MIME_CONTENT_LENGTH,F.length);E.setRequestHeader(ajax.CONNECTION,ajax.CONNECTION_CLOSE);}E.onreadystatechange=this.handleResponse.bind(this,E);E.send(F);}},isSuccess:function(D){var C=D.status==0||(D.status>=200&&D.status<300);return C;},handleResponse:function(B){if(B.readyState==ajax.READY_STATE_COMPLETE){this.removeActiveRequest(this.url);if(this.isSuccess(B)){this.component.handleSuccess(B);}else{this.component.handleError(B);}}},addActiveRequest:function(B){ajax.activeRequests.push(B);},removeActiveRequest:function(C){for(var D=0;D<ajax.activeRequests.length;D++){if(ajax.activeRequests[D]==C){ajax.activeRequests.splice(D,1);return true;}}return false;},isActiveRequest:function(C){for(var D=0;D<ajax.activeRequests.length;D++){if(ajax.activeRequests[D]==C){return true;}}return false;}};if(typeof deconcept=="undefined"){var deconcept=new Object();}if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}deconcept.SWFObject=function(Z,O,S,Y,W,T,U,R,X,Q,N){if(!document.getElementById){return ;}this.DETECT_KEY=N?N:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(Z){this.setAttribute("swf",Z);}if(O){this.setAttribute("id",O);}if(S){this.setAttribute("width",S);}if(Y){this.setAttribute("height",Y);}if(W){this.setAttribute("version",new deconcept.PlayerVersion(W.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(T){this.addParam("bgcolor",T);}var P=R?R:"high";this.addParam("quality",P);this.setAttribute("useExpressInstall",U);this.setAttribute("doExpressInstall",false);var V=(X)?X:window.location;this.setAttribute("xiRedirectUrl",V);this.setAttribute("redirectUrl","");if(Q){this.setAttribute("redirectUrl",Q);}};deconcept.SWFObject.prototype={setAttribute:function(C,D){this.attributes[C]=D;},getAttribute:function(B){return this.attributes[B];},addParam:function(C,D){this.params[C]=D;},getParams:function(){return this.params;},addVariable:function(C,D){this.variables[C]=D;},getVariable:function(B){return this.variables[B];},getVariables:function(){return this.variables;},getVariablePairs:function(){var D=new Array();var F;var E=this.getVariables();for(F in E){D.push(F+"="+E[F]);}return D;},getSWFHTML:function(){var F="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");}F='<embed type="application/x-shockwave-flash" src="'+this.getAttribute("swf")+'" width="'+this.getAttribute("width")+'" height="'+this.getAttribute("height")+'"';F+=' id="'+this.getAttribute("id")+'" name="'+this.getAttribute("id")+'" ';var G=this.getParams();for(var E in G){F+=[E]+'="'+G[E]+'" ';}var H=this.getVariablePairs().join("&");if(H.length>0){F+='flashvars="'+H+'"';}F+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");}F='<object id="'+this.getAttribute("id")+'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+this.getAttribute("width")+'" height="'+this.getAttribute("height")+'">';F+='<param name="movie" value="'+this.getAttribute("swf")+'" />';var G=this.getParams();for(var E in G){F+='<param name="'+E+'" value="'+G[E]+'" />';}var H=this.getVariablePairs().join("&");if(H.length>0){F+='<param name="flashvars" value="'+H+'" />';}F+="</object>";}return F;},write:function(D){if(this.getAttribute("useExpressInstall")){var F=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(F)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var E=(typeof D=="string")?document.getElementById(D):D;E.innerHTML=this.getSWFHTML();return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var H=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var E=navigator.plugins["Shockwave Flash"];if(E&&E.description){H=new deconcept.PlayerVersion(E.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{try{var G=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(F){try{var G=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");H=new deconcept.PlayerVersion([6,0,21]);G.AllowScriptAccess="always";}catch(F){if(H.major==6){return H;}}try{G=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(F){}}if(G!=null){H=new deconcept.PlayerVersion(G.GetVariable("$version").split(" ")[1].split(","));}}return H;};deconcept.PlayerVersion=function(B){this.major=B[0]!=null?parseInt(B[0]):0;this.minor=B[1]!=null?parseInt(B[1]):0;this.rev=B[2]!=null?parseInt(B[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(B){if(this.major<B.major){return false;}if(this.major>B.major){return true;}if(this.minor<B.minor){return false;}if(this.minor>B.minor){return true;}if(this.rev<B.rev){return false;}return true;};deconcept.util={getRequestParameter:function(F){var G=document.location.search||document.location.hash;if(G){var H=G.substring(1).split("&");for(var E=0;
E<H.length;E++){if(H[E].substring(0,H[E].indexOf("="))==F){return H[E].substring((H[E].indexOf("=")+1));}}}return"";}};deconcept.SWFObjectUtil.cleanupSWFs=function(){if(window.opera||!document.all){return ;}var E=document.getElementsByTagName("OBJECT");for(var F=0;F<E.length;F++){E[F].style.display="none";for(var D in E[F]){if(typeof E[F][D]=="function"){E[F][D]=function(){};}}}};deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};if(typeof window.onunload=="function"){var B=window.onunload;window.onunload=function(){deconcept.SWFObjectUtil.cleanupSWFs();B();};}else{window.onunload=deconcept.SWFObjectUtil.cleanupSWFs;}};if(typeof window.onbeforeunload=="function"){var oldBeforeUnload=window.onbeforeunload;window.onbeforeunload=function(){deconcept.SWFObjectUtil.prepUnload();oldBeforeUnload();};}else{window.onbeforeunload=deconcept.SWFObjectUtil.prepUnload;}if(Array.prototype.push==null){Array.prototype.push=function(B){this[this.length]=B;return this.length;};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject;String.prototype.trim=function(){return this.replace(/^\s*|\s*$/g,"");};var macg=new Object();macg.credit_keywords=new Array("gameid","persona","website");macg.credit_keylengths=new Array(30,16,-1);macg.mIncludedScripts=new Array();macg.require=function(B){if(!macg.scriptIncluded(B)){macg.include(B);}};macg.scriptIncluded=function(E){var F=false;for(var D=0;!F&&D<macg.mIncludedScripts.length;D++){F=macg.mIncludedScripts[D]==E;}return F;};macg.include=function(E){var D=document.getElementsByTagName("head").item(0);var F=document.createElement("script");F.setAttribute("language","javascript");F.setAttribute("type","text/javascript");F.setAttribute("src",E);D.appendChild(F);macg.mIncludedScripts.push(E);};macg.handleOptionalParameter=function(F,D){var E=F;if(typeof E=="undefined"){E=D;}return E;};macg.limitText=function(){var I=this.getAttribute("displayMessageId");var J=this.getAttribute("displayParsedMessageId");var G=this.getAttribute("maxlength");var F=this.getAttribute("id");if(I!=null){if(this.value.length>this.getAttribute("maxlength")){this.value=this.value.substring(0,this.getAttribute("maxlength"));}macg.displayCharacterLeft(I,G,F);}else{if(J!=null){var H=macg.getTextAreaCount(this.value);if(H>this.getAttribute("maxlength")){this.value=this.value.substring(0,(this.value.length-1));}macg.displayParsedCharacterLeft(J,G,F);}}};macg.limitTextArea=function(B){B.onblur=macg.limitText;B.onkeydown=macg.limitText;B.onkeyup=macg.limitText;};macg.displayCharacterLeft=function(N,I,L){var J=document.getElementById(L);var M=I;var O=0;var K=J.value;K=fixnewlines_textarea(K);if(K.length>M){J.value=K.substring(0,M);}else{O=M-K.length;}var P=document.getElementById(N);if(P.type==undefined){P.innerHTML=O+" characters left";}else{P.value=O+" characters left";}};macg.displayParsedCharacterLeft=function(L,H,I){var K=document.getElementById(I);var J=H;var M=0;totalLen=macg.getTextAreaCount(K.value);if(totalLen>J){K.value=K.value.substring(0,J);}else{M=J-totalLen;}var N=document.getElementById(L);if(N.type==undefined){N.innerHTML=M+" characters left";}else{N.value=M+" characters left";}};macg.getTextAreaCount=function(R){var U=0;var S=/\]{2,2}/;if(S.exec(R)==null){U=R.length;}else{var V=R.split(S);for(i=0;i<V.length;i++){if(V[i]!=""){noKwLen=V[i].length;if((V.length>1&&V[V.length-1]!=""&&i!=V.length-1)||(R.length>2&&R.substring(R.length-2)=="]]")){noKwLen+=2;}var M=V[i].indexOf("[[");if(M==-1){U+=noKwLen;}else{var N=V[i].indexOf("|",M);if(M==-1||N==-1){U+=noKwLen;}else{if(!(R.length>2&&R.substring(R.length-2)=="]]")&&i==V.length-1){U+=noKwLen;break;}var P=V[i].substring(0,M);var Q=V[i].substring(M+2,N).trim();var T=macg.getKeywordLength(Q);if(T==0){U+=noKwLen;}else{if(T==-1){var O=V[i].substring(N).split("|");if(O.length==3){U+=P.length;var L=O[1].trim();U+=L.length;}}else{U+=P.length;U+=T;}}}}}}}return U;};macg.getKeywordLength=function(B){for(j=0;j<macg.credit_keywords.length;j++){if(B==macg.credit_keywords[j]){return macg.credit_keylengths[j];}}return 0;};macg.removeChildren=function(B){while(B.childNodes[0]){B.removeChild(B.childNodes[0]);}};macg.insertAfter=function(E,D){var F=D.parentNode;if(F.lastchild==D){F.appendChild(E);}else{F.insertBefore(E,D.nextSibling);}};function hideElementInline(D){if(document.getElementById){var C=document.getElementById(D);if(C){C.style.display="none";}}}function showElementInline(D){if(document.getElementById){var C=document.getElementById(D);if(C){C.style.display="inline";}}}function toggleElementBlock(D){if(document.getElementById){var C=document.getElementById(D);if(C){currentDispStyle=C.style.display;C.style.display=(currentDispStyle=="none")?"block":"none";}}}function hideElementBlock(D){if(document.getElementById){var C=document.getElementById(D);if(C){C.style.display="none";}}}function showElementBlock(D){if(document.getElementById){var C=document.getElementById(D);if(C){C.style.display="block";}}}function disableFormElements(F){var E=document.forms[F];if(E&&E.elements){for(var D=0;D<E.elements.length;D++){E.elements[D].readonly=true;}}}function goPrint(){var B=window.open("","","scrollbars=yes,width=300,height=300");B.document.open("text/html");B.document.write("<html><head>");B.document.write(document.getElementById("print").innerHTML);B.document.write("</body></html>");B.document.close();B.print();B.close();}function focusText(D,C){macg.commentTyped=true;if(D.innerHTML==C){D.innerHTML="";}D.className="";}function submitComment(){if(macg.commentTyped==true){document.bottomCommentForm.submit();}else{$("topCommentMessageContainer").innerHTML="You must enter a comment";$("topCommentMessageContainer").addClassName("error");}}function enableSubmitComment(D,C){focusText(D,C);initializeCommentActions();}function updateCookie(C,D){document.cookie=C+"="+escape(D)+(";path=/");}function toggleHighScorePanel(J,G,L){var I=document.getElementById(J);var H=document.getElementById(G);var K=document.getElementById(L);if(I.style.display=="none"){I.style.display="block";H.style.display="none";K.style.display="inline";}else{if(I.style.display=="block"){I.style.display="none";H.style.display="inline";K.style.display="none";}}}function fixnewlines_textarea(B){if(B.indexOf("\r\n")!=-1){}else{if(B.indexOf("\r")!=-1){B=B.replace(/\r/g,"\r\n");}else{if(B.indexOf("\n")!=-1){B=B.replace(/\n/g,"\r\n");}else{}}}return B;}macg.forms=new Object();macg.forms.Form=function(B){this.form=B;this.validators=new Array();};macg.forms.Form.prototype={registerValidator:function(F,E){E=macg.handleOptionalParameter(E,null);var D=new macg.forms.Validator(F,E);this.validators.push(D);},registerSubmit:function(B){this.form.onsubmit=B;},validate:function(){var D=true;for(var C=0;C<this.validators.length;C++){if(this.validators[C].fieldName==null){this.validators[C].validate(this.form,this.validators[C]);}else{this.validators[C].validate(this.form[this.validators[C].fieldName],this.validators[C]);}D=D&&this.validators[C].success;}return D;},getFailedValidators:function(){var C=new Array();for(var D=0;D<this.validators.length;D++){if(!this.validators[D].success){C.push(this.validators[D]);}}return C;},generateParameterMap:function(){var E=new Array();for(var F=0;F<this.form.elements.length;F++){var D=this.form.elements[F];if(typeof D.name==null){continue;}switch(D.type){case"text":case"hidden":case"password":case"textarea":E.push(new Array(D.name,D.value));break;case"checkbox":case"radio":if(D.checked){E.push(new Array(D.name,D.value));}break;case"select-one":E.push(new Array(D.name,D.options[D.selectedIndex].value));break;}}return E;},disable:function(){for(var B=0;B<this.form.elements.length;B++){this.form.elements[B].disabled=true;}},reset:function(){this.form.reset();}};macg.forms.Validator=function(C,D){this.fieldName=D;this.validate=C;this.reset();};macg.forms.Validator.prototype={reset:function(){this.message=null;
this.success=false;}};macg.messages=new Object();macg.messages.STATUS_OK="ok";macg.messages.STATUS_ERROR="error";macg.messages.SERVER_ERROR_MESSAGE="An error occurred";macg.messages.BANNED_USER="bannedUser";macg.messages.SESSION_TIMEDOUT="signInURL";macg.messages.Model=function(D,F,E){this.status=D;this.message=F;this.errors=macg.handleOptionalParameter(E,new Object());};macg.messages.generateServerErrorResponse=function(){return new macg.messages.Model(macg.messages.STATUS_ERROR,macg.messages.SERVER_ERROR_MESSAGE);};macg.messages.Parser=function(B){this.customParser=macg.handleOptionalParameter(B,null);};macg.messages.Parser.prototype={ELEMENT_STATUS:"status",ATTRIBUTE_STATUS_VALUE:"value",ATTRIBUTE_STATUS_MESSAGE:"message",ELEMENT_FIELD:"formfield",ATTRIBUTE_FIELD_NAME:"name",ATTRIBUTE_FIELD_MESSAGE:"errorMessage",parseResponse:function(I){var J=null;var G=I.getElementsByTagName(this.ELEMENT_STATUS);if(null==G||G.length!=1){J=macg.messages.generateServerErrorResponse();return J;}var F=G[0].getAttribute(this.ATTRIBUTE_STATUS_VALUE);var H=G[0].getAttribute(this.ATTRIBUTE_STATUS_MESSAGE);if(F==macg.messages.STATUS_OK){J=new macg.messages.Model(F,H);if(null!=this.customParser){this.customParser.parseResponse(I,J);}}else{J=new macg.messages.Model(F,H,this.parseErrors(I));}return J;},parseErrors:function(E){var G=E.getElementsByTagName(this.ELEMENT_FIELD);var F=new Object();for(var H=0;H<G.length;H++){F[G[H].getAttribute(this.ATTRIBUTE_FIELD_NAME)]=G[H].getAttribute(this.ATTRIBUTE_FIELD_MESSAGE);}return F;}};var Prototype={Version:"1.5.1_rc4",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},BrowserFeatures:{XPath:!!document.evaluate,ElementExtensions:!!window.HTMLElement,SpecificElementExtensions:(document.createElement("div").__proto__!==document.createElement("form").__proto__)},ScriptFragment:"<script[^>]*>([\u0001-\uFFFF]*?)<\/script>",JSONFilter:/^\/\*-secure-\s*(.*)\s*\*\/\s*$/,emptyFunction:function(){},K:function(B){return B;}};var Class={create:function(){return function(){this.initialize.apply(this,arguments);};}};var Abstract=new Object();Object.extend=function(D,E){for(var F in E){D[F]=E[F];}return D;};Object.extend(Object,{inspect:function(C){try{if(C===undefined){return"undefined";}if(C===null){return"null";}return C.inspect?C.inspect():C.toString();}catch(D){if(D instanceof RangeError){return"...";}throw D;}},toJSON:function(F){var I=typeof F;switch(I){case"undefined":case"function":case"unknown":return ;case"boolean":return F.toString();}if(F===null){return"null";}if(F.toJSON){return F.toJSON();}if(F.ownerDocument===document){return ;}var J=[];for(var G in F){var H=Object.toJSON(F[G]);if(H!==undefined){J.push(G.toJSON()+": "+H);}}return"{"+J.join(", ")+"}";},keys:function(D){var F=[];for(var E in D){F.push(E);}return F;},values:function(F){var D=[];for(var E in F){D.push(F[E]);}return D;},clone:function(B){return Object.extend({},B);}});Function.prototype.bind=function(){var D=this,E=$A(arguments),F=E.shift();return function(){return D.apply(F,E.concat($A(arguments)));};};Function.prototype.bindAsEventListener=function(E){var D=this,F=$A(arguments),E=F.shift();return function(A){return D.apply(E,[(A||window.event)].concat(F).concat($A(arguments)));};};Object.extend(Number.prototype,{toColorPart:function(){return this.toPaddedString(2,16);},succ:function(){return this+1;},times:function(B){$R(0,this,true).each(B);return this;},toPaddedString:function(E,F){var D=this.toString(F||10);return"0".times(E-D.length)+D;},toJSON:function(){return isFinite(this)?this.toString():"null";}});Date.prototype.toJSON=function(){return'"'+this.getFullYear()+"-"+(this.getMonth()+1).toPaddedString(2)+"-"+this.getDate().toPaddedString(2)+"T"+this.getHours().toPaddedString(2)+":"+this.getMinutes().toPaddedString(2)+":"+this.getSeconds().toPaddedString(2)+'"';};var Try={these:function(){var I;for(var J=0,H=arguments.length;J<H;J++){var F=arguments[J];try{I=F();break;}catch(G){}}return I;}};var PeriodicalExecuter=Class.create();PeriodicalExecuter.prototype={initialize:function(D,C){this.callback=D;this.frequency=C;this.currentlyExecuting=false;this.registerCallback();},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},stop:function(){if(!this.timer){return ;}clearInterval(this.timer);this.timer=null;},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.callback(this);}finally{this.currentlyExecuting=false;}}}};Object.extend(String,{interpret:function(B){return B==null?"":String(B);},specialChar:{"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","\\":"\\\\"}});Object.extend(String.prototype,{gsub:function(G,I){var F="",H=this,J;I=arguments.callee.prepareReplacement(I);while(H.length>0){if(J=H.match(G)){F+=H.slice(0,J.index);F+=String.interpret(I(J));H=H.slice(J.index+J[0].length);}else{F+=H,H="";}}return F;},sub:function(E,D,F){D=this.gsub.prepareReplacement(D);F=F===undefined?1:F;return this.gsub(E,function(A){if(--F<0){return A[0];}return D(A);});},scan:function(D,C){this.gsub(D,C);return this;},truncate:function(D,C){D=D||30;C=C===undefined?"...":C;return this.length>D?this.slice(0,D-C.length)+C: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 D=new RegExp(Prototype.ScriptFragment,"img");var C=new RegExp(Prototype.ScriptFragment,"im");return(this.match(D)||[]).map(function(A){return(A.match(C)||["",""])[1];});},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script);});},escapeHTML:function(){var B=arguments.callee;B.text.data=this;return B.div.innerHTML;},unescapeHTML:function(){var B=document.createElement("div");B.innerHTML=this.stripTags();return B.childNodes[0]?(B.childNodes.length>1?$A(B.childNodes).inject("",function(D,A){return D+A.nodeValue;}):B.childNodes[0].nodeValue):"";},toQueryParams:function(D){var C=this.strip().match(/([^?#]*)(#.*)?$/);if(!C){return{};}return C[1].split(D||"&").inject({},function(B,A){if((A=A.split("="))[0]){var H=decodeURIComponent(A.shift());var G=A.length>1?A.join("="):A[0];if(G!=undefined){G=decodeURIComponent(G);}if(H in B){if(B[H].constructor!=Array){B[H]=[B[H]];}B[H].push(G);}else{B[H]=G;}}return B;});},toArray:function(){return this.split("");},succ:function(){return this.slice(0,this.length-1)+String.fromCharCode(this.charCodeAt(this.length-1)+1);},times:function(E){var D="";for(var F=0;F<E;F++){D+=this;}return D;},camelize:function(){var F=this.split("-"),E=F.length;if(E==1){return F[0];}var G=this.charAt(0)=="-"?F[0].charAt(0).toUpperCase()+F[0].substring(1):F[0];for(var H=1;H<E;H++){G+=F[H].charAt(0).toUpperCase()+F[H].substring(1);}return G;},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(D){var C=this.gsub(/[\x00-\x1f\\]/,function(B){var A=String.specialChar[B[0]];return A?A:"\\u00"+B[0].charCodeAt().toPaddedString(2,16);});if(D){return'"'+C.replace(/"/g,'\\"')+'"';}return"'"+C.replace(/'/g,"\\'")+"'";},toJSON:function(){return this.inspect(true);},unfilterJSON:function(B){return this.sub(B||Prototype.JSONFilter,"#{1}");},evalJSON:function(sanitize){var json=this.unfilterJSON();try{if(!sanitize||(/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(json))){return eval("("+json+")");}}catch(e){}throw new SyntaxError("Badly formed JSON string: "+this.inspect());},include:function(B){return this.indexOf(B)>-1;},startsWith:function(B){return this.indexOf(B)===0;
},endsWith:function(C){var D=this.length-C.length;return D>=0&&this.lastIndexOf(C)===D;},empty:function(){return this=="";},blank:function(){return/^\s*$/.test(this);}});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(D){if(typeof D=="function"){return D;}var C=new Template(D);return function(A){return C.evaluate(A);};};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();Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;Template.prototype={initialize:function(C,D){this.template=C.toString();this.pattern=D||Template.Pattern;},evaluate:function(B){return this.template.gsub(this.pattern,function(D){var A=D[1];if(A=="\\"){return D[2];}return A+String.interpret(B[D[3]]);});}};var $break={},$continue=new Error('"throw $continue" is deprecated, use "return" instead');var Enumerable={each:function(F){var D=0;try{this._each(function(A){F(A,D++);});}catch(E){if(E!=$break){throw E;}}return this;},eachSlice:function(I,J){var F=-I,H=[],G=this.toArray();while((F+=I)<G.length){H.push(G.slice(F,F+I));}return H.map(J);},all:function(D){var C=true;this.each(function(A,B){C=C&&!!(D||Prototype.K)(A,B);if(!C){throw $break;}});return C;},any:function(D){var C=false;this.each(function(A,B){if(C=!!(D||Prototype.K)(A,B)){throw $break;}});return C;},collect:function(D){var C=[];this.each(function(A,B){C.push((D||Prototype.K)(A,B));});return C;},detect:function(D){var C;this.each(function(A,B){if(D(A,B)){C=A;throw $break;}});return C;},findAll:function(D){var C=[];this.each(function(A,B){if(D(A,B)){C.push(A);}});return C;},grep:function(E,F){var D=[];this.each(function(A,B){var C=A.toString();if(C.match(E)){D.push((F||Prototype.K)(A,B));}});return D;},include:function(C){var D=false;this.each(function(A){if(A==C){D=true;throw $break;}});return D;},inGroupsOf:function(D,C){C=C===undefined?null:C;return this.eachSlice(D,function(A){while(A.length<D){A.push(C);}return A;});},inject:function(C,D){this.each(function(A,B){C=D(C,A,B);});return C;},invoke:function(D){var C=$A(arguments).slice(1);return this.map(function(A){return A[D].apply(A,C);});},max:function(D){var C;this.each(function(A,B){A=(D||Prototype.K)(A,B);if(C==undefined||A>=C){C=A;}});return C;},min:function(D){var C;this.each(function(A,B){A=(D||Prototype.K)(A,B);if(C==undefined||A<C){C=A;}});return C;},partition:function(E){var F=[],D=[];this.each(function(A,B){((E||Prototype.K)(A,B)?F:D).push(A);});return[F,D];},pluck:function(D){var C=[];this.each(function(A,B){C.push(A[D]);});return C;},reject:function(D){var C=[];this.each(function(A,B){if(!D(A,B)){C.push(A);}});return C;},sortBy:function(B){return this.map(function(A,D){return{value:A,criteria:B(A,D)};}).sort(function(A,F){var G=A.criteria,H=F.criteria;return G<H?-1:G>H?1:0;}).pluck("value");},toArray:function(){return this.map();},zip:function(){var F=Prototype.K,D=$A(arguments);if(typeof D.last()=="function"){F=D.pop();}var E=[this].concat(D).map($A);return this.map(function(A,B){return F(E.pluck(B));});},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,member:Enumerable.include,entries:Enumerable.toArray});var $A=Array.from=function(F){if(!F){return[];}if(F.toArray){return F.toArray();}else{var H=[];for(var E=0,G=F.length;E<G;E++){H.push(F[E]);}return H;}};if(Prototype.Browser.WebKit){$A=Array.from=function(F){if(!F){return[];}if(!(typeof F=="function"&&F=="[object NodeList]")&&F.toArray){return F.toArray();}else{var H=[];for(var E=0,G=F.length;E<G;E++){H.push(F[E]);}return H;}};}Object.extend(Array.prototype,Enumerable);if(!Array.prototype._reverse){Array.prototype._reverse=Array.prototype.reverse;}Object.extend(Array.prototype,{_each:function(F){for(var D=0,E=this.length;D<E;D++){F(this[D]);}},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(B){return B!=null;});},flatten:function(){return this.inject([],function(D,C){return D.concat(C&&C.constructor==Array?C.flatten():[C]);});},without:function(){var B=$A(arguments);return this.select(function(A){return !B.include(A);});},indexOf:function(D){for(var F=0,E=this.length;F<E;F++){if(this[F]==D){return F;}}return -1;},reverse:function(B){return(B!==false?this:this.toArray())._reverse();},reduce:function(){return this.length>1?this:this[0];},uniq:function(B){return this.inject([],function(A,E,F){if(0==F||(B?A.last()!=E:!A.include(E))){A.push(E);}return A;});},clone:function(){return[].concat(this);},size:function(){return this.length;},inspect:function(){return"["+this.map(Object.inspect).join(", ")+"]";},toJSON:function(){var B=[];this.each(function(D){var A=Object.toJSON(D);if(A!==undefined){B.push(A);}});return"["+B.join(", ")+"]";}});Array.prototype.toArray=Array.prototype.clone;function $w(B){B=B.strip();return B?B.split(/\s+/):[];}if(Prototype.Browser.Opera){Array.prototype.concat=function(){var G=[];for(var J=0,I=this.length;J<I;J++){G.push(this[J]);}for(var J=0,I=arguments.length;J<I;J++){if(arguments[J].constructor==Array){for(var F=0,H=arguments[J].length;F<H;F++){G.push(arguments[J][F]);}}else{G.push(arguments[J]);}}return G;};}var Hash=function(B){if(B instanceof Hash){this.merge(B);}else{Object.extend(this,B||{});}};Object.extend(Hash,{toQueryString:function(D){var C=[];C.add=arguments.callee.addPair;this.prototype._each.call(D,function(A){if(!A.key){return ;}var B=A.value;if(B&&typeof B=="object"){if(B.constructor==Array){B.each(function(F){C.add(A.key,F);});}return ;}C.add(A.key,B);});return C.join("&");},toJSON:function(C){var D=[];this.prototype._each.call(C,function(A){var B=Object.toJSON(A.value);if(B!==undefined){D.push(A.key.toJSON()+": "+B);}});return"{"+D.join(", ")+"}";}});Hash.toQueryString.addPair=function(D,E,F){D=encodeURIComponent(D);if(E===undefined){this.push(D);}else{this.push(D+"="+(E==null?"":encodeURIComponent(E)));}};Object.extend(Hash.prototype,Enumerable);Object.extend(Hash.prototype,{_each:function(H){for(var E in this){var G=this[E];if(G&&G==Hash.prototype[E]){continue;}var F=[E,G];F.key=E;F.value=G;H(F);}},keys:function(){return this.pluck("key");},values:function(){return this.pluck("value");},merge:function(B){return $H(B).inject(this,function(D,A){D[A.key]=A.value;return D;});},remove:function(){var E;for(var H=0,G=arguments.length;H<G;H++){var F=this[arguments[H]];if(F!==undefined){if(E===undefined){E=F;}else{if(E.constructor!=Array){E=[E];}E.push(F);}}delete this[arguments[H]];}return E;},toQueryString:function(){return Hash.toQueryString(this);},inspect:function(){return"#<Hash:{"+this.map(function(B){return B.map(Object.inspect).join(": ");}).join(", ")+"}>";},toJSON:function(){return Hash.toJSON(this);}});function $H(B){if(B instanceof Hash){return B;}return new Hash(B);}if(function(){var D=0,E=function(A){this.key=A;};E.prototype.key="foo";for(var F in new E("bar")){D++;}return D>1;}()){Hash.prototype._each=function(I){var F=[];for(var J in this){var H=this[J];if((H&&H==Hash.prototype[J])||F.include(J)){continue;}F.push(J);var G=[J,H];G.key=J;G.value=H;I(G);}};}ObjectRange=Class.create();Object.extend(ObjectRange.prototype,Enumerable);Object.extend(ObjectRange.prototype,{initialize:function(E,D,F){this.start=E;this.end=D;this.exclusive=F;},_each:function(C){var D=this.start;while(this.include(D)){C(D);D=D.succ();}},include:function(B){if(B<this.start){return false;}if(this.exclusive){return B<this.end;
}return B<=this.end;}});var $R=function(E,D,F){return new ObjectRange(E,D,F);};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(B){this.responders._each(B);},register:function(B){if(!this.include(B)){this.responders.push(B);}},unregister:function(B){this.responders=this.responders.without(B);},dispatch:function(F,H,G,E){this.each(function(B){if(typeof B[F]=="function"){try{B[F].apply(B,[H,G,E]);}catch(A){}}});}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++;},onComplete:function(){Ajax.activeRequestCount--;}});Ajax.Base=function(){};Ajax.Base.prototype={setOptions:function(B){this.options={method:"post",asynchronous:true,contentType:"application/x-www-form-urlencoded",encoding:"UTF-8",parameters:""};Object.extend(this.options,B||{});this.options.method=this.options.method.toLowerCase();if(typeof this.options.parameters=="string"){this.options.parameters=this.options.parameters.toQueryParams();}}};Ajax.Request=Class.create();Ajax.Request.Events=["Uninitialized","Loading","Loaded","Interactive","Complete"];Ajax.Request.prototype=Object.extend(new Ajax.Base(),{_complete:false,initialize:function(D,C){this.transport=Ajax.getTransport();this.setOptions(C);this.request(D);},request:function(D){this.url=D;this.method=this.options.method;var E=Object.clone(this.options.parameters);if(!["get","post"].include(this.method)){E["_method"]=this.method;this.method="post";}this.parameters=E;if(E=Hash.toQueryString(E)){if(this.method=="get"){this.url+=(this.url.include("?")?"&":"?")+E;}else{if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){E+="&_=";}}}try{if(this.options.onCreate){this.options.onCreate(this.transport);}Ajax.Responders.dispatch("onCreate",this,this.transport);this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);if(this.options.asynchronous){setTimeout(function(){this.respondToReadyState(1);}.bind(this),10);}this.transport.onreadystatechange=this.onStateChange.bind(this);this.setRequestHeaders();this.body=this.method=="post"?(this.options.postBody||E):null;this.transport.send(this.body);if(!this.options.asynchronous&&this.transport.overrideMimeType){this.onStateChange();}}catch(F){this.dispatchException(F);}},onStateChange:function(){var B=this.transport.readyState;if(B>1&&!((B==4)&&this._complete)){this.respondToReadyState(this.transport.readyState);}},setRequestHeaders:function(){var G={"X-Requested-With":"XMLHttpRequest","X-Prototype-Version":Prototype.Version,"Accept":"text/javascript, text/html, application/xml, text/xml, */*"};if(this.method=="post"){G["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){G["Connection"]="close";}}if(typeof this.options.requestHeaders=="object"){var I=this.options.requestHeaders;if(typeof I.push=="function"){for(var J=0,H=I.length;J<H;J+=2){G[I[J]]=I[J+1];}}else{$H(I).each(function(A){G[A.key]=A.value;});}}for(var F in G){this.transport.setRequestHeader(F,G[F]);}},success:function(){return !this.transport.status||(this.transport.status>=200&&this.transport.status<300);},respondToReadyState:function(G){var K=Ajax.Request.Events[G];var H=this.transport,L=this.evalJSON();if(K=="Complete"){try{this._complete=true;(this.options["on"+this.transport.status]||this.options["on"+(this.success()?"Success":"Failure")]||Prototype.emptyFunction)(H,L);}catch(J){this.dispatchException(J);}var I=this.getHeader("Content-type");if(I&&I.strip().match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i)){this.evalResponse();}}try{(this.options["on"+K]||Prototype.emptyFunction)(H,L);Ajax.Responders.dispatch("on"+K,this,H,L);}catch(J){this.dispatchException(J);}if(K=="Complete"){this.transport.onreadystatechange=Prototype.emptyFunction;}},getHeader:function(C){try{return this.transport.getResponseHeader(C);}catch(D){return null;}},evalJSON:function(){try{var C=this.getHeader("X-JSON");return C?C.evalJSON():null;}catch(D){return null;}},evalResponse:function(){try{return eval((this.transport.responseText||"").unfilterJSON());}catch(e){this.dispatchException(e);}},dispatchException:function(B){(this.options.onException||Prototype.emptyFunction)(this,B);Ajax.Responders.dispatch("onException",this,B);}});Ajax.Updater=Class.create();Object.extend(Object.extend(Ajax.Updater.prototype,Ajax.Request.prototype),{initialize:function(E,G,H){this.container={success:(E.success||E),failure:(E.failure||(E.success?null:E))};this.transport=Ajax.getTransport();this.setOptions(H);var F=this.options.onComplete||Prototype.emptyFunction;this.options.onComplete=(function(A,B){this.updateContent();F(A,B);}).bind(this);this.request(G);},updateContent:function(){var D=this.container[this.success()?"success":"failure"];var C=this.transport.responseText;if(!this.options.evalScripts){C=C.stripScripts();}if(D=$(D)){if(this.options.insertion){new this.options.insertion(D,C);}else{D.update(C);}}if(this.success()){if(this.onComplete){setTimeout(this.onComplete.bind(this),10);}}}});Ajax.PeriodicalUpdater=Class.create();Ajax.PeriodicalUpdater.prototype=Object.extend(new Ajax.Base(),{initialize:function(D,E,F){this.setOptions(F);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=D;this.url=E;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(B){if(this.options.decay){this.decay=(B.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=B.responseText;}this.timer=setTimeout(this.onTimerEvent.bind(this),this.decay*this.frequency*1000);},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options);}});function $(H){if(arguments.length>1){for(var E=0,F=[],G=arguments.length;E<G;E++){F.push($(arguments[E]));}return F;}if(typeof H=="string"){H=document.getElementById(H);}return Element.extend(H);}if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(H,G){var K=[];var I=document.evaluate(H,$(G)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var L=0,J=I.snapshotLength;L<J;L++){K.push(I.snapshotItem(L));}return K;};document.getElementsByClassName=function(F,D){var E=".//*[contains(concat(' ', @class, ' '), ' "+F+" ')]";return document._getElementsByXPath(E,D);};}else{document.getElementsByClassName=function(L,H){var M=($(H)||document.body).getElementsByTagName("*");var J=[],I;for(var N=0,K=M.length;N<K;N++){I=M[N];if(Element.hasClassName(I,L)){J.push(Element.extend(I));}}return J;};}if(!window.Element){var Element={};}Element.extend=function(M){var L=Prototype.BrowserFeatures;if(!M||!M.tagName||M.nodeType==3||M._extended||L.SpecificElementExtensions||M==window){return M;}var P={},N=M.tagName,F=Element.extend.cache,O=Element.Methods.ByTag;if(!L.ElementExtensions){Object.extend(P,Element.Methods),Object.extend(P,Element.Methods.Simulated);}if(O[N]){Object.extend(P,O[N]);}for(var J in P){var K=P[J];if(typeof K=="function"&&!(J in M)){M[J]=F.findOrStore(K);}}M._extended=Prototype.emptyFunction;return M;};Element.extend.cache={findOrStore:function(B){return this[B]=this[B]||function(){return B.apply(null,[this].concat($A(arguments)));};}};Element.Methods={visible:function(B){return $(B).style.display!="none";},toggle:function(B){B=$(B);Element[Element.visible(B)?"hide":"show"](B);return B;},hide:function(B){$(B).style.display="none";return B;},show:function(B){$(B).style.display="";return B;},remove:function(B){B=$(B);
B.parentNode.removeChild(B);return B;},update:function(D,C){C=typeof C=="undefined"?"":C.toString();$(D).innerHTML=C.stripScripts();setTimeout(function(){C.evalScripts();},10);return D;},replace:function(E,F){E=$(E);F=typeof F=="undefined"?"":F.toString();if(E.outerHTML){E.outerHTML=F.stripScripts();}else{var D=E.ownerDocument.createRange();D.selectNodeContents(E);E.parentNode.replaceChild(D.createContextualFragment(F.stripScripts()),E);}setTimeout(function(){F.evalScripts();},10);return E;},inspect:function(D){D=$(D);var C="<"+D.tagName.toLowerCase();$H({"id":"id","className":"class"}).each(function(A){var B=A.first(),H=A.last();var G=(D[B]||"").toString();if(G){C+=" "+H+"="+G.inspect(true);}});return C+">";},recursivelyCollect:function(D,E){D=$(D);var F=[];while(D=D[E]){if(D.nodeType==1){F.push(Element.extend(D));}}return F;},ancestors:function(B){return $(B).recursivelyCollect("parentNode");},descendants:function(B){return $A($(B).getElementsByTagName("*")).each(Element.extend);},firstDescendant:function(B){B=$(B).firstChild;while(B&&B.nodeType!=1){B=B.nextSibling;}return $(B);},immediateDescendants:function(B){if(!(B=$(B).firstChild)){return[];}while(B&&B.nodeType!=1){B=B.nextSibling;}if(B){return[B].concat($(B).nextSiblings());}return[];},previousSiblings:function(B){return $(B).recursivelyCollect("previousSibling");},nextSiblings:function(B){return $(B).recursivelyCollect("nextSibling");},siblings:function(B){B=$(B);return B.previousSiblings().reverse().concat(B.nextSiblings());},match:function(D,C){if(typeof C=="string"){C=new Selector(C);}return C.match($(D));},up:function(H,F,E){H=$(H);if(arguments.length==1){return $(H.parentNode);}var G=H.ancestors();return F?Selector.findElement(G,F,E):G[E||0];},down:function(H,G,E){H=$(H);if(arguments.length==1){return H.firstDescendant();}var F=H.descendants();return G?Selector.findElement(F,G,E):F[E||0];},previous:function(H,F,E){H=$(H);if(arguments.length==1){return $(Selector.handlers.previousElementSibling(H));}var G=H.previousSiblings();return F?Selector.findElement(G,F,E):G[E||0];},next:function(G,F,H){G=$(G);if(arguments.length==1){return $(Selector.handlers.nextElementSibling(G));}var E=G.nextSiblings();return F?Selector.findElement(E,F,H):E[H||0];},getElementsBySelector:function(){var C=$A(arguments),D=$(C.shift());return Selector.findChildElements(D,C);},getElementsByClassName:function(C,D){return document.getElementsByClassName(D,C);},readAttribute:function(G,E){G=$(G);if(Prototype.Browser.IE){if(!G.attributes){return null;}var H=Element._attributeTranslations;if(H.values[E]){return H.values[E](G,E);}if(H.names[E]){E=H.names[E];}var F=G.attributes[E];return F?F.nodeValue:null;}return G.getAttribute(E);},getHeight:function(B){return $(B).getDimensions().height;},getWidth:function(B){return $(B).getDimensions().width;},classNames:function(B){return new Element.ClassNames(B);},hasClassName:function(D,F){if(!(D=$(D))){return ;}var E=D.className;if(E.length==0){return false;}if(E==F||E.match(new RegExp("(^|\\s)"+F+"(\\s|$)"))){return true;}return false;},addClassName:function(C,D){if(!(C=$(C))){return ;}Element.classNames(C).add(D);return C;},removeClassName:function(C,D){if(!(C=$(C))){return ;}Element.classNames(C).remove(D);return C;},toggleClassName:function(C,D){if(!(C=$(C))){return ;}Element.classNames(C)[C.hasClassName(D)?"remove":"add"](D);return C;},observe:function(){Event.observe.apply(Event,arguments);return $A(arguments).first();},stopObserving:function(){Event.stopObserving.apply(Event,arguments);return $A(arguments).first();},cleanWhitespace:function(F){F=$(F);var E=F.firstChild;while(E){var D=E.nextSibling;if(E.nodeType==3&&!/\S/.test(E.nodeValue)){F.removeChild(E);}E=D;}return F;},empty:function(B){return $(B).innerHTML.blank();},descendantOf:function(D,C){D=$(D),C=$(C);while(D=D.parentNode){if(D==C){return true;}}return false;},scrollTo:function(C){C=$(C);var D=Position.cumulativeOffset(C);window.scrollTo(D[0],D[1]);return C;},getStyle:function(H,G){H=$(H);G=G=="float"?"cssFloat":G.camelize();var F=H.style[G];if(!F){var E=document.defaultView.getComputedStyle(H,null);F=E?E[G]:null;}if(G=="opacity"){return F?parseFloat(F):1;}return F=="auto"?null:F;},getOpacity:function(B){return $(B).getStyle("opacity");},setStyle:function(F,I,J){F=$(F);var G=F.style;for(var H in I){if(H=="opacity"){F.setOpacity(I[H]);}else{G[(H=="float"||H=="cssFloat")?(G.styleFloat===undefined?"cssFloat":"styleFloat"):(J?H:H.camelize())]=I[H];}}return F;},setOpacity:function(C,D){C=$(C);C.style.opacity=(D==1||D==="")?"":(D<0.00001)?0:D;return C;},getDimensions:function(O){O=$(O);var K=$(O).getStyle("display");if(K!="none"&&K!=null){return{width:O.offsetWidth,height:O.offsetHeight};}var P=O.style;var L=P.visibility;var N=P.position;var I=P.display;P.visibility="hidden";P.position="absolute";P.display="block";var J=O.clientWidth;var M=O.clientHeight;P.display=I;P.position=N;P.visibility=L;return{width:J,height:M};},makePositioned:function(C){C=$(C);var D=Element.getStyle(C,"position");if(D=="static"||!D){C._madePositioned=true;C.style.position="relative";if(window.opera){C.style.top=0;C.style.left=0;}}return C;},undoPositioned:function(B){B=$(B);if(B._madePositioned){B._madePositioned=undefined;B.style.position=B.style.top=B.style.left=B.style.bottom=B.style.right="";}return B;},makeClipping:function(B){B=$(B);if(B._overflow){return B;}B._overflow=B.style.overflow||"auto";if((Element.getStyle(B,"overflow")||"visible")!="hidden"){B.style.overflow="hidden";}return B;},undoClipping:function(B){B=$(B);if(!B._overflow){return B;}B.style.overflow=B._overflow=="auto"?"":B._overflow;B._overflow=null;return B;}};Object.extend(Element.Methods,{childOf:Element.Methods.descendantOf,childElements:Element.Methods.immediateDescendants});if(Prototype.Browser.Opera){Element.Methods._getStyle=Element.Methods.getStyle;Element.Methods.getStyle=function(C,D){switch(D){case"left":case"top":case"right":case"bottom":if(Element._getStyle(C,"position")=="static"){return null;}default:return Element._getStyle(C,D);}};}else{if(Prototype.Browser.IE){Element.Methods.getStyle=function(D,F){D=$(D);F=(F=="float"||F=="cssFloat")?"styleFloat":F.camelize();var E=D.style[F];if(!E&&D.currentStyle){E=D.currentStyle[F];}if(F=="opacity"){if(E=(D.getStyle("filter")||"").match(/alpha\(opacity=(.*)\)/)){if(E[1]){return parseFloat(E[1])/100;}}return 1;}if(E=="auto"){if((F=="width"||F=="height")&&(D.getStyle("display")!="none")){return D["offset"+F.capitalize()]+"px";}return null;}return E;};Element.Methods.setOpacity=function(E,F){E=$(E);var G=E.getStyle("filter"),H=E.style;if(F==1||F===""){H.filter=G.replace(/alpha\([^\)]*\)/gi,"");return E;}else{if(F<0.00001){F=0;}}H.filter=G.replace(/alpha\([^\)]*\)/gi,"")+"alpha(opacity="+(F*100)+")";return E;};Element.Methods.update=function(G,H){G=$(G);H=typeof H=="undefined"?"":H.toString();var E=G.tagName.toUpperCase();if(["THEAD","TBODY","TR","TD"].include(E)){var F=document.createElement("div");switch(E){case"THEAD":case"TBODY":F.innerHTML="<table><tbody>"+H.stripScripts()+"</tbody></table>";depth=2;break;case"TR":F.innerHTML="<table><tbody><tr>"+H.stripScripts()+"</tr></tbody></table>";depth=3;break;case"TD":F.innerHTML="<table><tbody><tr><td>"+H.stripScripts()+"</td></tr></tbody></table>";depth=4;}$A(G.childNodes).each(function(A){G.removeChild(A);});depth.times(function(){F=F.firstChild;});$A(F.childNodes).each(function(A){G.appendChild(A);});}else{G.innerHTML=H.stripScripts();}setTimeout(function(){H.evalScripts();},10);return G;};}else{if(Prototype.Browser.Gecko){Element.Methods.setOpacity=function(C,D){C=$(C);C.style.opacity=(D==1)?0.999999:(D==="")?"":(D<0.00001)?0:D;return C;};}}}Element._attributeTranslations={names:{colspan:"colSpan",rowspan:"rowSpan",valign:"vAlign",datetime:"dateTime",accesskey:"accessKey",tabindex:"tabIndex",enctype:"encType",maxlength:"maxLength",readonly:"readOnly",longdesc:"longDesc"},values:{_getAttr:function(C,D){return C.getAttribute(D,2);},_flag:function(C,D){return $(C).hasAttribute(D)?D:null;
},style:function(B){return B.style.cssText.toLowerCase();},title:function(C){var D=C.getAttributeNode("title");return D.specified?D.nodeValue:null;}}};(function(){Object.extend(this,{href:this._getAttr,src:this._getAttr,type:this._getAttr,disabled:this._flag,checked:this._flag,readonly:this._flag,multiple:this._flag});}).call(Element._attributeTranslations.values);Element.Methods.Simulated={hasAttribute:function(H,F){var E=Element._attributeTranslations,G;F=E.names[F]||F;G=$(H).getAttributeNode(F);return G&&G.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.hasAttribute=function(C,D){if(C.hasAttribute){return C.hasAttribute(D);}return Element.Methods.Simulated.hasAttribute(C,D);};Element.addMethods=function(K){var O=Prototype.BrowserFeatures,F=Element.Methods.ByTag;if(!K){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 L=K;K=arguments[1];}if(!L){Object.extend(Element.Methods,K||{});}else{if(L.constructor==Array){L.each(P);}else{P(L);}}function P(A){A=A.toUpperCase();if(!Element.Methods.ByTag[A]){Element.Methods.ByTag[A]={};}Object.extend(Element.Methods.ByTag[A],K);}function M(G,B,C){C=C||false;var A=Element.extend.cache;for(var D in G){var E=G[D];if(!C||!(D in B)){B[D]=A.findOrStore(E);}}}function R(A){var C;var B={"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(B[A]){C="HTML"+B[A]+"Element";}if(window[C]){return window[C];}C="HTML"+A+"Element";if(window[C]){return window[C];}C="HTML"+A.capitalize()+"Element";if(window[C]){return window[C];}window[C]={};window[C].prototype=document.createElement(A).__proto__;return window[C];}if(O.ElementExtensions){M(Element.Methods,HTMLElement.prototype);M(Element.Methods.Simulated,HTMLElement.prototype,true);}if(O.SpecificElementExtensions){for(var N in Element.Methods.ByTag){var Q=R(N);if(typeof Q=="undefined"){continue;}M(F[N],Q.prototype);}}Object.extend(Element,Element.Methods);delete Element.ByTag;};var Toggle={display:Element.toggle};Abstract.Insertion=function(B){this.adjacency=B;};Abstract.Insertion.prototype={initialize:function(H,G){this.element=$(H);this.content=G.stripScripts();if(this.adjacency&&this.element.insertAdjacentHTML){try{this.element.insertAdjacentHTML(this.adjacency,this.content);}catch(F){var E=this.element.tagName.toUpperCase();if(["TBODY","TR"].include(E)){this.insertContent(this.contentFromAnonymousTable());}else{throw F;}}}else{this.range=this.element.ownerDocument.createRange();if(this.initializeRange){this.initializeRange();}this.insertContent([this.range.createContextualFragment(this.content)]);}setTimeout(function(){G.evalScripts();},10);},contentFromAnonymousTable:function(){var B=document.createElement("div");B.innerHTML="<table><tbody>"+this.content+"</tbody></table>";return $A(B.childNodes[0].childNodes[0].childNodes);}};var Insertion=new Object();Insertion.Before=Class.create();Insertion.Before.prototype=Object.extend(new Abstract.Insertion("beforeBegin"),{initializeRange:function(){this.range.setStartBefore(this.element);},insertContent:function(B){B.each((function(A){this.element.parentNode.insertBefore(A,this.element);}).bind(this));}});Insertion.Top=Class.create();Insertion.Top.prototype=Object.extend(new Abstract.Insertion("afterBegin"),{initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(true);},insertContent:function(B){B.reverse(false).each((function(A){this.element.insertBefore(A,this.element.firstChild);}).bind(this));}});Insertion.Bottom=Class.create();Insertion.Bottom.prototype=Object.extend(new Abstract.Insertion("beforeEnd"),{initializeRange:function(){this.range.selectNodeContents(this.element);this.range.collapse(this.element);},insertContent:function(B){B.each((function(A){this.element.appendChild(A);}).bind(this));}});Insertion.After=Class.create();Insertion.After.prototype=Object.extend(new Abstract.Insertion("afterEnd"),{initializeRange:function(){this.range.setStartAfter(this.element);},insertContent:function(B){B.each((function(A){this.element.parentNode.insertBefore(A,this.element.nextSibling);}).bind(this));}});Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(B){this.element=$(B);},_each:function(B){this.element.className.split(/\s+/).select(function(A){return A.length>0;})._each(B);},set:function(B){this.element.className=B;},add:function(B){if(this.include(B)){return ;}this.set($A(this).concat(B).join(" "));},remove:function(B){if(!this.include(B)){return ;}this.set($A(this).without(B).join(" "));},toString:function(){return $A(this).join(" ");}};Object.extend(Element.ClassNames.prototype,Enumerable);var Selector=Class.create();Selector.prototype={initialize:function(B){this.expression=B.strip();this.compileMatcher();},compileMatcher:function(){if(Prototype.BrowserFeatures.XPath&&!(/\[[\w-]*?:/).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(typeof c[i]=="function"?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 I=this.expression,H=Selector.patterns,L=Selector.xpath,J,G;if(Selector._cache[I]){this.xpath=Selector._cache[I];return ;}this.matcher=[".//*"];while(I&&J!=I&&(/\S/).test(I)){J=I;for(var K in H){if(G=I.match(H[K])){this.matcher.push(typeof L[K]=="function"?L[K](G):new Template(L[K]).evaluate(G));I=I.replace(G[0],"");break;}}}this.xpath=this.matcher.join("");Selector._cache[this.expression]=this.xpath;},findElements:function(B){B=B||document;if(this.xpath){return document._getElementsByXPath(this.xpath,B);}return this.matcher(B);},match:function(B){return this.findElements(document).include(B);},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(B){if(B[1]=="*"){return"";}return"[local-name()='"+B[1].toLowerCase()+"' or local-name()='"+B[1].toUpperCase()+"']";},className:"[contains(concat(' ', @class, ' '), ' #{1} ')]",id:"[@id='#{1}']",attrPresence:"[@#{1}]",attr:function(B){B[3]=B[5]||B[6];return new Template(Selector.xpath.operators[B[2]]).evaluate(B);},pseudo:function(C){var D=Selector.xpath.pseudos[C[1]];if(!D){return"";}if(typeof D==="function"){return D(C);}return new Template(Selector.xpath.pseudos[C[1]]).evaluate(C);},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(P){var J=P[6],K=Selector.patterns,I=Selector.xpath,M,P,O;
var L=[];while(J&&M!=J&&(/\S/).test(J)){M=J;for(var N in K){if(P=J.match(K[N])){O=typeof I[N]=="function"?I[N](P):new Template(I[N]).evaluate(P);L.push("("+O.substring(1,O.length-1)+")");J=J.replace(P[0],"");break;}}}return"[not("+L.join(" and ")+")]";},"nth-child":function(B){return Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ",B);},"nth-last-child":function(B){return Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ",B);},"nth-of-type":function(B){return Selector.xpath.pseudos.nth("position() ",B);},"nth-last-of-type":function(B){return Selector.xpath.pseudos.nth("(last() + 1 - position()) ",B);},"first-of-type":function(B){B[6]="1";return Selector.xpath.pseudos["nth-of-type"](B);},"last-of-type":function(B){B[6]="1";return Selector.xpath.pseudos["nth-last-of-type"](B);},"only-of-type":function(C){var D=Selector.xpath.pseudos;return D["first-of-type"](C)+D["last-of-type"](C);},nth:function(K,M){var J,I=M[6],N;if(I=="even"){I="2n+0";}if(I=="odd"){I="2n+1";}if(J=I.match(/^(\d+)$/)){return"["+K+"= "+J[1]+"]";}if(J=I.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(J[1]=="-"){J[1]=-1;}var L=J[1]?Number(J[1]):1;var H=J[2]?Number(J[2]):0;N="[((#{fragment} - #{b}) mod #{a} = 0) and "+"((#{fragment} - #{b}) div #{a} >= 0)]";return new Template(N).evaluate({fragment:K,a:L,b:H});}}}},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(B){B[3]=(B[5]||B[6]);return new Template('n = h.attr(n, r, "#{1}", "#{3}", "#{2}"); c = false;').evaluate(B);},pseudo:function(B){if(B[6]){B[6]=B[6].replace(/"/g,'\\"');}return new Template('n = h.pseudo(n, "#{1}", "#{6}", r, c); c = false;').evaluate(B);},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|([^'"][^\]]*?)))?\]/},handlers:{concat:function(H,E){for(var G=0,F;F=E[G];G++){H.push(F);}return H;},mark:function(D){for(var F=0,E;E=D[F];F++){E._counted=true;}return D;},unmark:function(D){for(var F=0,E;E=D[F];F++){E._counted=undefined;}return D;},index:function(G,J,H){G._counted=true;if(J){for(var L=G.childNodes,I=L.length-1,K=1;I>=0;I--){node=L[I];if(node.nodeType==1&&(!H||node._counted)){node.nodeIndex=K++;}}}else{for(var I=0,K=1,L=G.childNodes;node=L[I];I++){if(node.nodeType==1&&(!H||node._counted)){node.nodeIndex=K++;}}}},unique:function(J){if(J.length==0){return J;}var H=[],G;for(var I=0,F=J.length;I<F;I++){if(!(G=J[I])._counted){G._counted=true;H.push(Element.extend(G));}}return Selector.handlers.unmark(H);},descendant:function(F){var H=Selector.handlers;for(var I=0,J=[],G;G=F[I];I++){H.concat(J,G.getElementsByTagName("*"));}return J;},child:function(I){var L=Selector.handlers;for(var M=0,N=[],K;K=I[M];M++){for(var P=0,O=[],J;J=K.childNodes[P];P++){if(J.nodeType==1&&J.tagName!="!"){N.push(J);}}}return N;},adjacent:function(F){for(var I=0,J=[],G;G=F[I];I++){var H=this.nextElementSibling(G);if(H){J.push(H);}}return J;},laterSibling:function(F){var H=Selector.handlers;for(var I=0,J=[],G;G=F[I];I++){H.concat(J,Element.nextSiblings(G));}return J;},nextElementSibling:function(B){while(B=B.nextSibling){if(B.nodeType==1){return B;}}return null;},previousElementSibling:function(B){while(B=B.previousSibling){if(B.nodeType==1){return B;}}return null;},tagName:function(P,I,M,J){M=M.toUpperCase();var N=[],L=Selector.handlers;if(P){if(J){if(J=="descendant"){for(var O=0,K;K=P[O];O++){L.concat(N,K.getElementsByTagName(M));}return N;}else{P=this[J](P);}if(M=="*"){return P;}}for(var O=0,K;K=P[O];O++){if(K.tagName.toUpperCase()==M){N.push(K);}}return N;}else{return I.getElementsByTagName(M);}},id:function(P,I,J,L){var K=$(J),N=Selector.handlers;if(!P&&I==document){return K?[K]:[];}if(P){if(L){if(L=="child"){for(var O=0,M;M=P[O];O++){if(K.parentNode==M){return[K];}}}else{if(L=="descendant"){for(var O=0,M;M=P[O];O++){if(Element.descendantOf(K,M)){return[K];}}}else{if(L=="adjacent"){for(var O=0,M;M=P[O];O++){if(Selector.handlers.previousElementSibling(K)==M){return[K];}}}else{P=N[L](P);}}}}for(var O=0,M;M=P[O];O++){if(M==K){return[K];}}return[];}return(K&&Element.descendantOf(K,I))?[K]:[];},className:function(H,E,G,F){if(H&&F){H=this[F](H);}return Selector.handlers.byClassName(H,E,G);},byClassName:function(O,P,L){if(!O){O=Selector.handlers.descendant([P]);}var J=" "+L+" ";for(var M=0,N=[],K,I;K=O[M];M++){I=K.className;if(I.length==0){continue;}if(I==L||(" "+I+" ").include(J)){N.push(K);}}return N;},attrPresence:function(K,L,G){var I=[];for(var J=0,H;H=K[J];J++){if(Element.hasAttribute(H,G)){I.push(H);}}return I;},attr:function(N,Q,R,P,M){if(!N){N=Q.getElementsByTagName("*");}var O=Selector.operators[M],K=[];for(var T=0,L;L=N[T];T++){var S=Element.readAttribute(L,R);if(S===null){continue;}if(O(S,P)){K.push(L);}}return K;},pseudo:function(J,I,G,F,H){if(J&&H){J=this[H](J);}if(!J){J=F.getElementsByTagName("*");}return Selector.pseudos[I](J,G,F);}},pseudos:{"first-child":function(L,H,G){for(var J=0,K=[],I;I=L[J];J++){if(Selector.handlers.previousElementSibling(I)){continue;}K.push(I);}return K;},"last-child":function(L,H,G){for(var J=0,K=[],I;I=L[J];J++){if(Selector.handlers.nextElementSibling(I)){continue;}K.push(I);}return K;},"only-child":function(N,I,H){var K=Selector.handlers;for(var L=0,M=[],J;J=N[L];L++){if(!K.previousElementSibling(J)&&!K.nextElementSibling(J)){M.push(J);}}return M;},"nth-child":function(F,E,D){return Selector.pseudos.nth(F,E,D);},"nth-last-child":function(F,E,D){return Selector.pseudos.nth(F,E,D,true);},"nth-of-type":function(F,E,D){return Selector.pseudos.nth(F,E,D,false,true);},"nth-last-of-type":function(F,E,D){return Selector.pseudos.nth(F,E,D,true,true);},"first-of-type":function(F,E,D){return Selector.pseudos.nth(F,"1",D,false,true);},"last-of-type":function(F,E,D){return Selector.pseudos.nth(F,"1",D,true,true);},"only-of-type":function(H,F,E){var G=Selector.pseudos;return G["last-of-type"](G["first-of-type"](H,F,E),F,E);},getIndices:function(F,D,E){if(F==0){return D>0?[D]:[];}return $R(1,E).inject([],function(B,A){if(0==(A-D)%F&&(A-D)/F>=0){B.push(A);}return B;});},nth:function(T,Y,W,Z,R){if(T.length==0){return[];}if(Y=="even"){Y="2n+0";}if(Y=="odd"){Y="2n+1";}var a=Selector.handlers,b=[],S=[],f;a.mark(T);for(var c=0,Q;Q=T[c];c++){if(!Q.parentNode._counted){a.index(Q.parentNode,Z,R);S.push(Q.parentNode);}}if(Y.match(/^\d+$/)){Y=Number(Y);for(var c=0,Q;Q=T[c];c++){if(Q.nodeIndex==Y){b.push(Q);}}}else{if(f=Y.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(f[1]=="-"){f[1]=-1;}var V=f[1]?Number(f[1]):1;var X=f[2]?Number(f[2]):0;var U=Selector.pseudos.getIndices(V,X,T.length);for(var c=0,Q,e=U.length;Q=T[c];c++){for(var d=0;d<e;d++){if(Q.nodeIndex==U[d]){b.push(Q);}}}}}a.unmark(T);a.unmark(S);return b;},"empty":function(L,H,G){for(var J=0,K=[],I;I=L[J];J++){if(I.tagName=="!"||(I.firstChild&&!I.innerHTML.match(/^\s*$/))){continue;}K.push(I);}return K;},"not":function(N,K,P){var R=Selector.handlers,O,L;var Q=new Selector(K).findElements(P);R.mark(Q);for(var S=0,T=[],M;M=N[S];S++){if(!M._counted){T.push(M);}}R.unmark(Q);return T;},"enabled":function(L,H,G){for(var J=0,K=[],I;I=L[J];J++){if(!I.disabled){K.push(I);}}return K;},"disabled":function(L,H,G){for(var J=0,K=[],I;I=L[J];J++){if(I.disabled){K.push(I);}}return K;},"checked":function(L,H,G){for(var J=0,K=[],I;I=L[J];J++){if(I.checked){K.push(I);}}return K;}},operators:{"=":function(D,C){return D==C;},"!=":function(D,C){return D!=C;},"^=":function(D,C){return D.startsWith(C);},"$=":function(D,C){return D.endsWith(C);
},"*=":function(D,C){return D.include(C);},"~=":function(D,C){return(" "+D+" ").include(" "+C+" ");},"|=":function(D,C){return("-"+D.toUpperCase()+"-").include("-"+C.toUpperCase()+"-");}},matchElements:function(J,I){var K=new Selector(I).findElements(),L=Selector.handlers;L.mark(K);for(var M=0,N=[],H;H=J[M];M++){if(H._counted){N.push(H);}}L.unmark(K);return N;},findElement:function(F,E,D){if(typeof E=="number"){D=E;E=false;}return Selector.matchElements(F,E||"*")[D||0];},findChildElements:function(M,K){var J=K.join(","),K=[];J.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/,function(A){K.push(A[1].strip());});var N=[],L=Selector.handlers;for(var O=0,P=K.length,I;O<P;O++){I=new Selector(K[O].strip());L.concat(N,I.findElements(M));}return(P>1)?L.unique(N):N;}});function $$(){return Selector.findChildElements(document,$A(arguments));}var Form={reset:function(B){$(B).reset();return B;},serializeElements:function(E,D){var F=E.inject({},function(H,B){if(!B.disabled&&B.name){var C=B.name,A=$(B).getValue();if(A!=null){if(C in H){if(H[C].constructor!=Array){H[C]=[H[C]];}H[C].push(A);}else{H[C]=A;}}}return H;});return D?F:Hash.toQueryString(F);}};Form.Methods={serialize:function(D,C){return Form.serializeElements(Form.getElements(D),C);},getElements:function(B){return $A($(B).getElementsByTagName("*")).inject([],function(D,A){if(Form.Element.Serializers[A.tagName.toLowerCase()]){D.push(Element.extend(A));}return D;});},getInputs:function(K,O,N){K=$(K);var I=K.getElementsByTagName("input");if(!O&&!N){return $A(I).map(Element.extend);}for(var M=0,J=[],L=I.length;M<L;M++){var P=I[M];if((O&&P.type!=O)||(N&&P.name!=N)){continue;}J.push(Element.extend(P));}return J;},disable:function(B){B=$(B);Form.getElements(B).invoke("disable");return B;},enable:function(B){B=$(B);Form.getElements(B).invoke("enable");return B;},findFirstElement:function(B){return $(B).getElements().find(function(A){return A.type!="hidden"&&!A.disabled&&["input","select","textarea"].include(A.tagName.toLowerCase());});},focusFirstElement:function(B){B=$(B);B.findFirstElement().activate();return B;},request:function(F,D){F=$(F),D=Object.clone(D||{});var E=D.parameters;D.parameters=F.serialize(true);if(E){if(typeof E=="string"){E=E.toQueryParams();}Object.extend(D.parameters,E);}if(F.hasAttribute("method")&&!D.method){D.method=F.method;}return new Ajax.Request(F.readAttribute("action"),D);}};Form.Element={focus:function(B){$(B).focus();return B;},select:function(B){$(B).select();return B;}};Form.Element.Methods={serialize:function(D){D=$(D);if(!D.disabled&&D.name){var F=D.getValue();if(F!=undefined){var E={};E[D.name]=F;return Hash.toQueryString(E);}}return"";},getValue:function(C){C=$(C);var D=C.tagName.toLowerCase();return Form.Element.Serializers[D](C);},clear:function(B){$(B).value="";return B;},present:function(B){return $(B).value!="";},activate:function(C){C=$(C);try{C.focus();if(C.select&&(C.tagName.toLowerCase()!="input"||!["button","reset","submit"].include(C.type))){C.select();}}catch(D){}return C;},disable:function(B){B=$(B);B.blur();B.disabled=true;return B;},enable:function(B){B=$(B);B.disabled=false;return B;}};var Field=Form.Element;var $F=Form.Element.Methods.getValue;Form.Element.Serializers={input:function(B){switch(B.type.toLowerCase()){case"checkbox":case"radio":return Form.Element.Serializers.inputSelector(B);default:return Form.Element.Serializers.textarea(B);}},inputSelector:function(B){return B.checked?B.value:null;},textarea:function(B){return B.value;},select:function(B){return this[B.type=="select-one"?"selectOne":"selectMany"](B);},selectOne:function(D){var C=D.selectedIndex;return C>=0?this.optionValue(D.options[C]):null;},selectMany:function(H){var F,G=H.length;if(!G){return null;}for(var I=0,F=[];I<G;I++){var J=H.options[I];if(J.selected){F.push(this.optionValue(J));}}return F;},optionValue:function(B){return Element.extend(B).hasAttribute("value")?B.value:B.text;}};Abstract.TimedObserver=function(){};Abstract.TimedObserver.prototype={initialize:function(D,F,E){this.frequency=F;this.element=$(D);this.callback=E;this.lastValue=this.getValue();this.registerCallback();},registerCallback:function(){setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},onTimerEvent:function(){var C=this.getValue();var D=("string"==typeof this.lastValue&&"string"==typeof C?this.lastValue!=C:String(this.lastValue)!=String(C));if(D){this.callback(this.element,C);this.lastValue=C;}}};Form.Element.Observer=Class.create();Form.Element.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.Element.getValue(this.element);}});Form.Observer=Class.create();Form.Observer.prototype=Object.extend(new Abstract.TimedObserver(),{getValue:function(){return Form.serialize(this.element);}});Abstract.EventObserver=function(){};Abstract.EventObserver.prototype={initialize:function(C,D){this.element=$(C);this.callback=D;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=="form"){this.registerFormCallbacks();}else{this.registerCallback(this.element);}},onElementEvent:function(){var B=this.getValue();if(this.lastValue!=B){this.callback(this.element,B);this.lastValue=B;}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback.bind(this));},registerCallback:function(B){if(B.type){switch(B.type.toLowerCase()){case"checkbox":case"radio":Event.observe(B,"click",this.onElementEvent.bind(this));break;default:Event.observe(B,"change",this.onElementEvent.bind(this));break;}}}};Form.Element.EventObserver=Class.create();Form.Element.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.Element.getValue(this.element);}});Form.EventObserver=Class.create();Form.EventObserver.prototype=Object.extend(new Abstract.EventObserver(),{getValue:function(){return Form.serialize(this.element);}});if(!window.Event){var Event=new Object();}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,element:function(B){return $(B.target||B.srcElement);},isLeftClick:function(B){return(((B.which)&&(B.which==1))||((B.button)&&(B.button==1)));},pointerX:function(B){return B.pageX||(B.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft));},pointerY:function(B){return B.pageY||(B.clientY+(document.documentElement.scrollTop||document.body.scrollTop));},stop:function(B){if(B.preventDefault){B.preventDefault();B.stopPropagation();}else{B.returnValue=false;B.cancelBubble=true;}},findElement:function(E,F){var D=Event.element(E);while(D.parentNode&&(!D.tagName||(D.tagName.toUpperCase()!=F.toUpperCase()))){D=D.parentNode;}return D;},observers:false,_observeAndCache:function(F,G,H,E){if(!this.observers){this.observers=[];}if(F.addEventListener){this.observers.push([F,G,H,E]);F.addEventListener(G,H,E);}else{if(F.attachEvent){this.observers.push([F,G,H,E]);F.attachEvent("on"+G,H);}}},unloadCache:function(){if(!Event.observers){return ;}for(var C=0,D=Event.observers.length;C<D;C++){Event.stopObserving.apply(this,Event.observers[C]);Event.observers[C][0]=null;}Event.observers=false;},observe:function(F,G,H,E){F=$(F);E=E||false;if(G=="keypress"&&(Prototype.Browser.WebKit||F.attachEvent)){G="keydown";}Event._observeAndCache(F,G,H,E);},stopObserving:function(H,I,J,F){H=$(H);F=F||false;if(I=="keypress"&&(Prototype.Browser.WebKit||H.attachEvent)){I="keydown";}if(H.removeEventListener){H.removeEventListener(I,J,F);}else{if(H.detachEvent){try{H.detachEvent("on"+I,J);}catch(G){}}}}});if(Prototype.Browser.IE){Event.observe(window,"unload",Event.unloadCache,false);}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;},realOffset:function(F){var D=0,E=0;do{D+=F.scrollTop||0;E+=F.scrollLeft||0;
F=F.parentNode;}while(F);return[E,D];},cumulativeOffset:function(F){var D=0,E=0;do{D+=F.offsetTop||0;E+=F.offsetLeft||0;F=F.offsetParent;}while(F);return[E,D];},positionedOffset:function(H){var E=0,F=0;do{E+=H.offsetTop||0;F+=H.offsetLeft||0;H=H.offsetParent;if(H){if(H.tagName=="BODY"){break;}var G=Element.getStyle(H,"position");if(G=="relative"||G=="absolute"){break;}}}while(H);return[F,E];},offsetParent:function(B){if(B.offsetParent){return B.offsetParent;}if(B==document.body){return B;}while((B=B.parentNode)&&B!=document.body){if(Element.getStyle(B,"position")!="static"){return B;}}return document.body;},within:function(F,D,E){if(this.includeScrollOffsets){return this.withinIncludingScrolloffsets(F,D,E);}this.xcomp=D;this.ycomp=E;this.offset=this.cumulativeOffset(F);return(E>=this.offset[1]&&E<this.offset[1]+F.offsetHeight&&D>=this.offset[0]&&D<this.offset[0]+F.offsetWidth);},withinIncludingScrolloffsets:function(H,E,F){var G=this.realOffset(H);this.xcomp=E+G[0]-this.deltaX;this.ycomp=F+G[1]-this.deltaY;this.offset=this.cumulativeOffset(H);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+H.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+H.offsetWidth);},overlap:function(D,C){if(!D){return 0;}if(D=="vertical"){return((this.offset[1]+C.offsetHeight)-this.ycomp)/C.offsetHeight;}if(D=="horizontal"){return((this.offset[0]+C.offsetWidth)-this.xcomp)/C.offsetWidth;}},page:function(F){var E=0,G=0;var H=F;do{E+=H.offsetTop||0;G+=H.offsetLeft||0;if(H.offsetParent==document.body){if(Element.getStyle(H,"position")=="absolute"){break;}}}while(H=H.offsetParent);H=F;do{if(!window.opera||H.tagName=="BODY"){E-=H.scrollTop||0;G-=H.scrollLeft||0;}}while(H=H.parentNode);return[G,E];},clone:function(K,I){var G=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});K=$(K);var J=Position.page(K);I=$(I);var H=[0,0];var L=null;if(Element.getStyle(I,"position")=="absolute"){L=Position.offsetParent(I);H=Position.page(L);}if(L==document.body){H[0]-=document.body.offsetLeft;H[1]-=document.body.offsetTop;}if(G.setLeft){I.style.left=(J[0]-H[0]+G.offsetLeft)+"px";}if(G.setTop){I.style.top=(J[1]-H[1]+G.offsetTop)+"px";}if(G.setWidth){I.style.width=K.offsetWidth+"px";}if(G.setHeight){I.style.height=K.offsetHeight+"px";}},absolutize:function(L){L=$(L);if(L.style.position=="absolute"){return ;}Position.prepare();var J=Position.positionedOffset(L);var H=J[1];var I=J[0];var K=L.clientWidth;var G=L.clientHeight;L._originalLeft=I-parseFloat(L.style.left||0);L._originalTop=H-parseFloat(L.style.top||0);L._originalWidth=L.style.width;L._originalHeight=L.style.height;L.style.position="absolute";L.style.top=H+"px";L.style.left=I+"px";L.style.width=K+"px";L.style.height=G+"px";},relativize:function(D){D=$(D);if(D.style.position=="relative"){return ;}Position.prepare();D.style.position="relative";var E=parseFloat(D.style.top||0)-(D._originalTop||0);var F=parseFloat(D.style.left||0)-(D._originalLeft||0);D.style.top=E+"px";D.style.left=F+"px";D.style.height=D._originalHeight;D.style.width=D._originalWidth;}};if(Prototype.Browser.WebKit){Position.cumulativeOffset=function(F){var D=0,E=0;do{D+=F.offsetTop||0;E+=F.offsetLeft||0;if(F.offsetParent==document.body){if(Element.getStyle(F,"position")=="absolute"){break;}}F=F.offsetParent;}while(F);return[E,D];};}Element.addMethods();macg.games=new Object();macg.games.ShareGameView=function(E,F){var D=document.getElementById(E);macg.limitTextArea(D[this.FIELD_RECIPIENT_LIST]);macg.limitTextArea(D[this.FIELD_RECIPIENT_MESSAGE]);this.form=new macg.forms.Form(D);this.messageContainer=document.getElementById(F);this.emailSubmitEnable=document.getElementById("emailSubmitEnable");this.disabledShareGameButton=document.getElementById("disabledShareGameButton");};macg.games.ShareGameView.prototype={FIELD_RECIPIENT_LIST:"recipients",FIELD_RECIPIENT_NAME:"userFirstName",FIELD_RECIPIENT_MESSAGE:"personalMessage",setController:function(B){this.form.registerValidator(B.validateRecipientList,this.FIELD_RECIPIENT_LIST);this.form.registerSubmit(B.shareGame.bind(B));},render:function(B){if(B.status==macg.messages.STATUS_OK){this.renderSuccess(B);}else{this.renderError(B);}},renderSuccess:function(C){this.form.disable();macg.removeChildren(this.messageContainer);var D=document.createTextNode(C.message);this.messageContainer.appendChild(D);this.messageContainer.className="success";this.messageContainer.visible=true;this.disabledShareGameButton.style.display="inline";this.emailSubmitEnable.style.display="none";},renderError:function(E){macg.removeChildren(this.messageContainer);var G=document.createTextNode(E.message);var F=document.createElement("ul");for(member in E.errors){var H=document.createElement("li");H.appendChild(document.createTextNode(E.errors[member]));F.appendChild(H);}this.messageContainer.appendChild(G);this.messageContainer.appendChild(F);this.messageContainer.className="error";this.messageContainer.visible=true;}};macg.games.ShareGameController=function(D,C){this.url=D;this.view=C;this.view.setController(this);this.parser=new macg.messages.Parser();};macg.games.ShareGameController.prototype={validateRecipientList:function(J,N){N.success=true;if(J.value.length==0){N.success=false;N.message="No email addresses supplied!";}else{var K=new RegExp("^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*(\\.[_A-Za-z0-9-]+)");var I="";var H=J.value.split(",");var L=false;for(var M=0;M<H.length;M++){if(H[M].blank()){continue;}else{if(!(K.test(H[M].trim()))){I=I+H[M]+",";}else{L=true;}}}if(L==false&&I.blank()){N.message="No email addresses supplied!";N.success=false;return false;}if(I.length>0){if(I.startsWith(",")){I=I.substring(1);}if(I.endsWith(",")){I=I.substring(0,I.length-1);}I="The following email addresses are invalid: "+I;N.success=false;N.message=I.substring(0,I.length);}}return N.success;},shareGame:function(){if(!this.view.form.validate()){var I=new Object();var N=macg.messages.STATUS_ERROR;var J="Please fix all errors";var H=this.view.form.getFailedValidators();for(var L=0;L<H.length;L++){if(H[L].fieldName!=null){I[H[L]]=H[L].message;}else{J=H[L].message;}}var M=new macg.messages.Model(N,J,I);this.view.render(M);}else{var K=new ajax.Request(this,this.url,ajax.METHOD_POST);K.sendRequest(this.view.form.generateParameterMap());}return false;},handleSuccess:function(D){linkCode(this,"Send to a Friend");if(D.responseXML==null){this.handleError();}else{var C=this.parser.parseResponse(D.responseXML);this.view.render(C);}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.view.render(C);}};macg.games.ratings=new Object();macg.games.ratings.ViewManager=function(B){this.yourRating=document.getElementById(B);this.setRating(this.yourRating,this.yourRating.getAttribute(this.RATING_ATTRIBUTE));};macg.games.ratings.ViewManager.prototype={RATING_ATTRIBUTE:"rating",RATED_ONE:"rated-one-stars",RATED_TWO:"rated-two-stars",RATED_THREE:"rated-three-stars",RATED_FOUR:"rated-four-stars",RATED_FIVE:"rated-five-stars",STYLE_SUCCESS:"success",STYLE_ERROR:"error",setController:function(D){if(!this.yourRating){return ;}var E=this.yourRating.getElementsByTagName("DIV");for(var F=0;F<E.length;F++){E[F].onclick=D.newSelectAction(E[F]);}},setRating:function(F,E){if(E==null){document.getElementById("loveitBtn").className="loveit-unrated";document.getElementById("notformeBtn").className="notforme-unrated";}if(E==0){if(F.getAttribute(this.RATING_ATTRIBUTE)==5&&document.getElementById("loveitBtn").className=="loveit-rated"){document.getElementById("loveitBtn").className="loveit-unrated";}if(F.getAttribute(this.RATING_ATTRIBUTE)==5&&document.getElementById("loveitBtn").className=="loveit-rated-on"){document.getElementById("loveitBtn").className="loveit-unrated";}if(F.getAttribute(this.RATING_ATTRIBUTE)==1&&document.getElementById("notformeBtn").className=="notforme-rated"){document.getElementById("notformeBtn").className="notforme-unrated";}if(F.getAttribute(this.RATING_ATTRIBUTE)==1&&document.getElementById("notformeBtn").className=="notforme-rated-on"){document.getElementById("notformeBtn").className="notforme-unrated";
}}if(E==1){if(document.getElementById("notformeBtn").className=="notforme-unrated"){document.getElementById("notformeBtn").className="notforme-rated";}if(document.getElementById("notformeBtn").className=="notforme-unrated-on"){document.getElementById("notformeBtn").className="notforme-rated";}if(F.getAttribute(this.RATING_ATTRIBUTE)==5&&document.getElementById("loveitBtn").className=="loveit-rated"){document.getElementById("loveitBtn").className="loveit-unrated";}if(F.getAttribute(this.RATING_ATTRIBUTE)==5&&document.getElementById("loveitBtn").className=="loveit-rated-on"){document.getElementById("loveitBtn").className="loveit-unrated";}}if(E==5){if(document.getElementById("loveitBtn").className=="loveit-unrated-on"){document.getElementById("loveitBtn").className="loveit-rated";}if(document.getElementById("loveitBtn").className=="loveit-unrated"){document.getElementById("loveitBtn").className="loveit-rated";}if(F.getAttribute(this.RATING_ATTRIBUTE)==1&&document.getElementById("notformeBtn").className=="notforme-rated-on"){document.getElementById("notformeBtn").className="notforme-unrated";}if(F.getAttribute(this.RATING_ATTRIBUTE)==1&&document.getElementById("notformeBtn").className=="notforme-rated"){document.getElementById("notformeBtn").className="notforme-unrated";}}if(gameType!="FLASHGAME"){try{document.getElementById("gameplayer")["SetRating"](E);}catch(D){}}},getRating:function(C){var D=null;if(C.className=="loveit-unrated"||C.className=="loveit-unrated-on"){D=5;}if(C.className=="loveit-rated"||C.className=="loveit-rated-on"){D=0;}if(C.className=="notforme-unrated"||C.className=="notforme-unrated-on"){D=1;}if(C.className=="notforme-rated"||C.className=="notforme-rated-on"){D=0;}return D;},render:function(B){if(B.status==macg.messages.BANNED_USER){this.renderBannedView();}else{if(B.status==macg.messages.STATUS_OK){this.renderSuccess(B);}else{this.renderError(B);}}},renderSuccess:function(B){this.setRating(this.yourRating,B.yourRating);this.yourRating.setAttribute(this.RATING_ATTRIBUTE,B.yourRating);linkCode(this,"Game Rated");},createMessage:function(C){var D=document.createElement("div");D.innerHTML=C.message;return D;},renderError:function(B){},renderBannedView:function(D){var C=document.getElementById("bannedUserURL").value;window.location=C;}};macg.games.ratings.RatingsManager=function(D,C){this.url=D;this.view=C;C.setController(this);this.parser=new macg.messages.Parser(this);};macg.games.ratings.RatingsManager.prototype={RATING_PARAMETER_NAME:"ratingData",ELEMENT_RATING:"rating",ATTRIBUTE_FIELD_YOURS:"yours",newSelectAction:function(B){return this.postRating.bind(this,B);},postRating:function(D){var F=new ajax.Request(this,this.url,ajax.METHOD_POST);var E=new Array(this.RATING_PARAMETER_NAME,this.view.getRating(D));F.sendRequest(new Array(E));},handleSuccess:function(D){if(D.responseXML==null){this.handleError();}else{var C=this.parser.parseResponse(D.responseXML);this.view.render(C);}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.view.render(C);},parseResponse:function(D,C){elements=D.getElementsByTagName(this.ELEMENT_RATING);if(elements.length>0){C.yourRating=elements[0].getAttribute("yours");}return C;}};macg.comments=new Object();macg.comments.CommentView=function(J,G,I){this.commentsCount=document.getElementById(I);this.commentBox=document.getElementById(J+"Box");var F=document.getElementById(J+"Form");if(this.commentBox!=null&&F!=null){macg.limitTextArea(F[this.FIELD_COMMENT_TEXT]);this.form=new macg.forms.Form(F);this.topSubmitEnable=document.getElementById(J+"SubmitEnable");this.messageContainer=document.getElementById(J+"MessageContainer");this.postAnchor=document.getElementById(J+"Anchor");if(this.postAnchor!=null){this.postAnchor.view=this;this.postAnchor.onclick=this.showCommentBox;}}this.bottomCommentBox=document.getElementById(G+"Box");var H=document.getElementById(G+"Form");if(this.bottomCommentBox!=null&&H!=null){macg.limitTextArea(H[this.FIELD_COMMENT_TEXT]);this.bottomForm=new macg.forms.Form(H);this.bottomSubmitEnable=document.getElementById(G+"SubmitEnable");this.bottomMessageContainer=document.getElementById(G+"MessageContainer");}};macg.comments.CommentView.prototype={FIELD_COMMENT_TEXT:"commentText",setController:function(B){if(this.bottomForm!=null){this.bottomForm.registerValidator(B.validateCommentText,this.FIELD_COMMENT_TEXT);this.bottomSubmitEnable.onclick=B.postBottomComment.bind(B);}if(this.form!=null){this.form.registerValidator(B.validateCommentText,this.FIELD_COMMENT_TEXT);this.topSubmitEnable.onclick=B.postComment.bind(B);}},setTextAreaLimits:function(B){B[this.FIELD_COMMENT_TEXT].onkeydown=macg.limitText;B[this.FIELD_COMMENT_TEXT].onkeyup=macg.limitText;},render:function(B){if(B.status==macg.messages.BANNED_USER){this.renderBannedView();}else{if(B.status==macg.messages.STATUS_OK){this.renderSuccess(B);}else{this.renderError(B);}}},renderSuccess:function(B){if(this.form!=null){this.form.disable();this.commentBox.style.display="none";this.form.reset();this.postAnchor.innerHTML="Post a comment";this.postAnchor.onclick=this.showCommentBox;}this.bottomForm.form.commentText.value="";this.bottomForm.form.commentText.focus();macg.displayParsedCharacterLeft("descCommentId","250","commentTextTopId");macg.displayParsedCharacterLeft("descCommentBottomId","250","commentTextBottomId");linkCode(this,"Comment Posted");},renderError:function(E){if(this.form!=null){this.resetMessageContainer();var G=document.createTextNode(E.message);var F=document.createElement("ul");for(member in E.errors){var H=document.createElement("li");H.appendChild(document.createTextNode(E.errors[member]));F.appendChild(H);}if(G!=""){this.messageContainer.appendChild(G);}this.messageContainer.appendChild(F);this.messageContainer.className="error";this.messageContainer.visible=true;}else{macg.removeChildren(this.bottomMessageContainer);var G=document.createTextNode(E.message);var F=document.createElement("ul");for(member in E.errors){var H=document.createElement("li");H.appendChild(document.createTextNode(E.errors[member]));F.appendChild(H);}if(G!=""){this.bottomMessageContainer.appendChild(G);}this.bottomMessageContainer.appendChild(F);this.bottomMessageContainer.className="error";this.bottomMessageContainer.visible=true;}},resetMessageContainer:function(){macg.removeChildren(this.messageContainer);this.messageContainer.style.display="block";},showCommentBox:function(){macg.removeChildren(this.view.messageContainer);this.view.messageContainer.className="";var B=this.view.commentBox.getElementsByTagName("textarea")[0];B.value="";B.disabled=false;this.view.commentBox.style.display="block";B.focus();this.innerHTML="Cancel comment";this.onclick=this.view.hideCommentBox;},hideCommentBox:function(){this.view.commentBox.style.display="none";this.view.form.reset();this.innerHTML="Post a comment";this.onclick=this.view.showCommentBox;this.view.messageContainer.style.display="none";},renderBannedView:function(D){var C=document.getElementById("bannedUserURL").value;window.location=C;}};macg.comments.CommentController=function(F,D,E){this.url=F;this.view=D;this.view.setController(this);this.paginator=E;this.parser=new macg.messages.Parser();};macg.comments.CommentController.prototype={validateCommentText:function(D,C){C.success=true;if(D.value.length==0){C.success=false;C.message="You must enter a comment";}return C.success;},postComment:function(){if(!this.view.form.validate()){var I=new Object();var N=macg.messages.STATUS_ERROR;var J="";var H=this.view.form.getFailedValidators();for(var L=0;L<H.length;L++){if(H[L].fieldName!=null){I[H[L].fieldName]=H[L].message;}else{J=H[L].message;}}var M=new macg.messages.Model(N,J,I);this.view.render(M);}else{var K=new ajax.Request(this,this.url,ajax.METHOD_POST);K.sendRequest(this.view.form.generateParameterMap());}return false;},postBottomComment:function(){if(!this.view.bottomForm.validate()){var I=new Object();var N=macg.messages.STATUS_ERROR;var J="";var H=this.view.bottomForm.getFailedValidators();
for(var L=0;L<H.length;L++){if(H[L].fieldName!=null){I[H[L].fieldName]=H[L].message;}else{J=H[L].message;}}var M=new macg.messages.Model(N,J,I);this.view.render(M);}else{var K=new ajax.Request(this,this.url,ajax.METHOD_POST);K.sendRequest(this.view.bottomForm.generateParameterMap());}return false;},handleSuccess:function(G){if(G.responseXML==null){this.handleError();}else{var F=this.parser.parseResponse(G.responseXML);if(F.status==macg.messages.STATUS_OK){this.view.commentsCount.innerHTML=parseInt(this.view.commentsCount.innerHTML)+1;}macg.removeChildren(this.view.messageContainer);macg.removeChildren(this.view.bottomMessageContainer);this.view.messageContainer.style.display="none";this.view.bottomMessageContainer.style.display="none";this.view.render(F);macg.removeChildren(this.paginator.commentSection);var J=document.getElementById("isAllPage");var H="&isAllPage="+J.value;var I=new ajax.Request(this.paginator,(this.paginator.firstPageUrl+H),ajax.METHOD_GET);I.sendRequest();}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.view.render(C);}};macg.comments.CommentPaginator=function(G,I,J,H,F){this.firstPageUrl=G;this.commentListController=J;this.paginationHeader=F;this.pagination=this.getNameElements(document,this.paginationHeader);this.commentSection=document.getElementById(H);this.headerDiv=document.getElementById("topComment");if($("commentContainer")){$("commentContainer").show();}if(this.pagination.length>0){this.setNavActions(this.pagination[0]);this.setNavActions(this.pagination[1]);}this.referenceNode=document.getElementById(I+"Reference");this.parser=new macg.messages.Parser(this);};macg.comments.CommentPaginator.prototype={ELEMENT_COMMENTS_INFO:"commentWidgetData",ATTRIBUTE_COMMENTS_INFO_INDEX:"selectedIndex",ELEMENT_COMMENT:"comment",ATTRIBUTE_COMMENT_ID:"id",ATTRIBUTE_COMMENT_POSTED_DATE:"postedDate",ATTRIBUTE_COMMENT_TEXT:"text",ELEMENT_COMMENT_POSTER:"userInfo",ATTRIBUTE_COMMENT_POSTER_URL:"url",ATTRIBUTE_COMMENT_POSTER_NAME:"name",ATTRIBUTE_COMMENT_POSTER_IMAGE_URL:"imgSrc",setNavActions:function(F){var E=F.getElementsByTagName("a");for(var D=0;D<E.length;D++){this.setOnClick(E[D]);}},setOnClick:function(B){B.onclick=function(){var D=B.getAttribute("index");var A=new ajax.Request(this.controller,this.href,ajax.METHOD_GET);A.sendRequest();return false;};B.controller=this;},displayComments:function(D){macg.removeChildren(this.commentSection);if(this.headerDiv.style.display="none"){this.headerDiv.style.display="block";}var E=document.createElement("div");E.innerHTML=D;E.innerHTML.evalScripts();var F=this.getNameElements(E,this.paginationHeader);if(F.length>0){this.setNavActions(F[0]);this.setNavActions(F[1]);}if(this.commentListController!=null){this.commentListController.view.commentDeleteReportElements=this.getClassNameElements(E,"commentDeleteReportClass");this.commentListController.view.commentReportElements=this.getClassNameElements(E,"commentReportClass");this.commentListController.view.setController(this.commentListController);}if(this.commentSection.style.display=="none"){this.commentSection.style.display="block";}this.commentSection.appendChild(E);},getClassNameElements:function(H,I){var G=[];var J=H.getElementsByTagName("div");for(var K=0;K<J.length;K++){var L=J[K].className;if(I==L){G.push(J[K]);}}return G;},getNameElements:function(H,L){var G=[];var J=H.getElementsByTagName("div");for(var K=0;K<J.length;K++){var I=J[K].getAttribute("name");if(L==I){G.push(J[K]);}}return G;},handleSuccess:function(D){var C=D.responseXML;content=this.getNodeValue(D.responseXML,"html_content");this.displayComments(content);},getNodeValue:function(D,C){node=D.getElementsByTagName(C);if(node!=null&&node.length>0){return node[0].firstChild.nodeValue;}else{return null;}},handleError:function(B){alert("Try again later!");}};macg.comments.CommentListView=function(C,D){this.commentDeleteReportElements=document.getElementsByClassName("commentDeleteReportClass",document);this.commentReportElements=document.getElementsByClassName("commentReportClass",document);this.messageContainerPrefix=D;this.commentDivPrefix=C;};macg.comments.CommentListView.prototype={COMMENT_DELETE_ACTION:"DELETE",COMMENT_REPORT_ACTION:"REPORT",COMMENT_DELETE_REPORT_ACTION:"DELETE_REPORT",setController:function(E){if(this.commentDeleteReportElements.length!=0){for(var G=0;G<this.commentDeleteReportElements.length;G++){var F=this.commentDeleteReportElements[G].getElementsByTagName("a");var H=this.commentDeleteReportElements[G].id.substring(this.commentDeleteReportElements[G].id.lastIndexOf("_")+1,this.commentDeleteReportElements[G].id.length);F[0].onclick=E.deleteComment.bind(E,H);F[1].onclick=E.deleteAndReportComment.bind(E,H);}}if(this.commentReportElements.length!=0){for(var G=0;G<this.commentReportElements.length;G++){var F=this.commentReportElements[G].getElementsByTagName("a");var H=this.commentReportElements[G].id.substring(this.commentReportElements[G].id.lastIndexOf("_")+1,this.commentReportElements[G].id.length);F[0].onclick=E.reportComment.bind(E,H);}}},render:function(B){if(B.status==macg.messages.BANNED_USER){this.renderBannedView();}else{if(B.status==macg.messages.STATUS_OK){this.renderSuccess(B);}else{this.renderError(B);}}},create_node:function(E,D){var F=document.createElement("SPAN");F.style.color=D;F.appendChild(E);return F;},clearConfirmMsg:function(D){var C=document.getElementById("confirmDeleteDiv_"+D);if(C!=null){C.style.display="none";}var C=document.getElementById("confirmDeleteReportDiv_"+D);if(C!=null){C.style.display="none";}},renderSuccess:function(E){this.messageContainer=document.getElementById(this.messageContainerPrefix+"_comment_id_"+E.comment_id);this.resetMessageContainer();this.currentCommentDiv=document.getElementById(this.commentDivPrefix+E.comment_id);if(E.action==this.COMMENT_REPORT_ACTION){for(var H=0;H<this.commentReportElements.length;H++){if(this.commentReportElements[H].id.substring(this.commentReportElements[H].id.lastIndexOf("_")+1,this.commentReportElements[H].id.length)==E.comment_id){var F=document.createTextNode("Reported");F=this.create_node(F,"#ff0000");macg.removeChildren(this.commentReportElements[H]);this.commentReportElements[H].appendChild(F);break;}}}else{var F=document.createTextNode(E.message);this.messageContainer.appendChild(F);this.messageContainer.className="success";this.messageContainer.visible=true;if(this.currentCommentDiv){var G=this.currentCommentDiv.getElementsByTagName("div");G[0].style.display="none";G[3].style.display="none";G[15].style.display="none";G[16].style.display="none";}}},renderError:function(F){this.messageContainer=document.getElementById(this.messageContainerPrefix+"_comment_id_"+F.comment_id);this.resetMessageContainer();var H=document.createTextNode(F.message);var G=document.createElement("ul");for(var J=0;F.errors!=null&&J<F.errors.length;J++){var I=document.createElement("li");I.appendChild(document.createTextNode(F.errors[J]));G.appendChild(I);}this.messageContainer.appendChild(H);this.messageContainer.appendChild(G);this.messageContainer.className="error";this.messageContainer.visible=true;},resetMessageContainer:function(){macg.removeChildren(this.messageContainer);this.messageContainer.style.display="block";},renderBannedView:function(D){var C=document.getElementById("bannedUserURL").value;window.location=C;}};macg.comments.CommentListController=function(D,C){this.url=D;this.view=C;this.view.setController(this);this.parser=new macg.messages.Parser(this);this.delArr=new Array();if(!Array.prototype.contains){Array.prototype.contains=function(A){var F=this.length;for(var B=0;B<F;B++){if(this[B]==A){return true;}}return false;};}};macg.comments.CommentListController.prototype={COMMENT_ID_PARAM_NAME:"comment_id",COMMENT_ACTION_PARAM_NAME:"comment_action",ELEMENT_CURRENT_ACTION:"current_action",isResponseReceived:true,deleteComment:function(C){if(!this.delArr.contains(C)){var D=new ajax.Request(this,this.url,ajax.METHOD_POST);D.sendRequest(this.prepareCommentParmMap(C,this.view.COMMENT_DELETE_ACTION));
this.delArr.push(C);}this.view.clearConfirmMsg(C);$("topCommentMessageContainer").innerHTML="";$("topCommentMessageContainer").removeClassName("error");$("topCommentMessageContainer").removeClassName("success");return false;},deleteAndReportComment:function(C){if(!this.delArr.contains(C)){var D=new ajax.Request(this,this.url,ajax.METHOD_POST);D.sendRequest(this.prepareCommentParmMap(C,this.view.COMMENT_DELETE_REPORT_ACTION));this.delArr.push(C);}this.view.clearConfirmMsg(C);return false;},reportComment:function(C){if(this.isResponseReceived){var D=new ajax.Request(this,this.url,ajax.METHOD_POST);D.sendRequest(this.prepareCommentParmMap(C,this.view.COMMENT_REPORT_ACTION));this.isResponseReceived=false;return false;}},handleSuccess:function(D){if(D.responseXML==null){this.handleError();}else{this.isResponseReceived=true;var C=this.parser.parseResponse(D.responseXML);if(C.status==macg.messages.STATUS_ERROR){this.parseResponse(D.responseXML,C);}$("noOfComments").innerHTML=""+parseInt($("noOfComments").innerHTML,10)-1;this.view.render(C);}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.isResponseReceived=true;this.view.render(C);},prepareCommentParmMap:function(D,E){var F=new Array();F.push(new Array(this.COMMENT_ID_PARAM_NAME,D));F.push(new Array(this.COMMENT_ACTION_PARAM_NAME,E));return F;},parseResponse:function(D,C){elements=D.getElementsByTagName(this.ELEMENT_CURRENT_ACTION);if(elements.length>0){C.action=elements[0].getAttribute("type");C.comment_id=elements[0].getAttribute("comment_id");}return C;}};macg.GameBrowseWidget=new Object();macg.GameBrowseWidget.GameBrowseWidgetView=function(B){this.messageContainer=document.getElementById(B+"MessageContainer");this.displayDiv=document.getElementById(B+"Box");this.tabDiv=document.getElementById(B+"TabDiv");this.headerDiv=document.getElementById(B+"Header");this.infoReferenceNode=document.getElementById(B+"InfoReference");};macg.GameBrowseWidget.GameBrowseWidgetView.prototype={setController:function(B){this.tabDiv.onclick=B.retrieveSequences();},render:function(B){if(B.status==macg.messages.STATUS_OK){this.renderSuccess(B);}else{this.renderError(B);}},renderSuccess:function(B){this.resetMessageContainer();},renderError:function(F){this.resetMessageContainer();var H=document.createTextNode(F.message);var G=document.createElement("ul");for(var J=0;F.errors!=null&&J<F.errors.length;J++){var I=document.createElement("li");I.appendChild(document.createTextNode(F.errors[J]));G.appendChild(I);}this.messageContainer.appendChild(H);this.messageContainer.appendChild(G);this.messageContainer.className="error";this.messageContainer.visible=true;this.messageContainer.style.display="block";},resetMessageContainer:function(){macg.removeChildren(this.messageContainer);this.messageContainer.style.display="none";}};macg.GameBrowseWidget.GameBrowseWidgetController=function(D,C){this.url=D;this.view=C;this.view.setController(this);this.parser=new macg.messages.Parser(this);};macg.GameBrowseWidget.GameBrowseWidgetController.prototype={isWidgetLoaded:false,retrieveSequences:function(B){return this.fetchGameBrowseWidget.bind(this);},fetchGameBrowseWidget:function(){if(this.isWidgetLoaded==false){this.showMessage("Loading...");var B=new ajax.Request(this,this.url,ajax.METHOD_GET);B.sendRequest();}return false;},showCallToAction:function(D){this.view.resetMessageContainer();var C=document.createElement("img");C.src=D;this.view.messageContainer.appendChild(C);this.view.messageContainer.style.display="block";},showMessage:function(C){this.view.resetMessageContainer();var D=document.createTextNode(C);this.view.messageContainer.appendChild(D);this.view.messageContainer.style.display="block";},handleSuccess:function(F){this.view.resetMessageContainer();if(F.responseXML==null){this.handleError();}else{var D=this.parser.parseResponse(F.responseXML);if(D.status=="ok"){this.view.resetMessageContainer();var E=document.createElement("div");E.innerHTML=this.getNodeValue(F.responseXML,"html_content");macg.insertAfter(E,this.view.displayDiv);E.innerHTML.evalScripts();this.isWidgetLoaded=true;}else{this.view.render(D);}}},getNodeValue:function(D,C){node=D.getElementsByTagName(C);if(node!=null&&node.length>0){return node[0].firstChild.nodeValue;}else{return null;}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.view.render(C);},parseResponse:function(F,D){var E=F.getElementsByTagName("status");D.status=E[0].getAttribute("value");if(D.status=="error"){D.status="error";}return D;}};macg.NewGameBrowseWidget=new Object();macg.NewGameBrowseWidget.NewGameBrowseWidgetView=function(B){this.displayDiv=document.getElementById(B);this.displayContents=document.createElement("div");};macg.NewGameBrowseWidget.NewGameBrowseWidgetView.prototype={setController:function(B){},render:function(B){if(B.status==macg.messages.STATUS_OK){this.renderSuccess(B);}else{this.renderError(B);}},renderSuccess:function(B){this.resetBrowseResultsContainer();},renderError:function(F){this.resetBrowseResultsContainer();var H=document.createTextNode(F.message);var G=document.createElement("ul");for(var J=0;F.errors!=null&&J<F.errors.length;J++){var I=document.createElement("li");I.appendChild(document.createTextNode(F.errors[J]));G.appendChild(I);}},resetBrowseResultsContainer:function(){while(this.displayDiv.childNodes[0]){this.displayDiv.removeChild(this.displayDiv.childNodes[0]);}this.displayDiv.appendChild(this.displayContents);}};macg.NewGameBrowseWidget.NewGameBrowseWidgetController=function(D,C){this.url=D;this.view=C;this.view.setController(this);this.parser=new macg.messages.Parser(this);this.tabDiv=null;};macg.NewGameBrowseWidget.NewGameBrowseWidgetController.prototype={isWidgetLoaded:false,retrieveSequences:function(B){return this.fetchGameBrowseWidget.bind(this);},fetchGameBrowseWidget:function(){if(this.isWidgetLoaded==false){var B=new ajax.Request(this,this.url,ajax.METHOD_GET);B.sendRequest();}else{this.updateView(this.tabDiv);}return false;},showCallToAction:function(D){this.view.resetBrowseResultsContainer();var C=document.createElement("img");C.src=D;},showMessage:function(C){this.view.resetMessageContainer();var D=document.createTextNode(C);},handleSuccess:function(F){this.view.resetBrowseResultsContainer();if(F.responseXML==null){this.handleError();}else{var D=this.parser.parseResponse(F.responseXML);if(D.status=="ok"){this.view.resetBrowseResultsContainer();var E=document.createElement("div");E.innerHTML=this.getNodeValue(F.responseXML,"html_content");E.style.display="block";this.updateView(E);E.innerHTML.evalScripts();this.isWidgetLoaded=true;this.tabDiv=E;}else{this.view.render(D);}}},updateView:function(B){this.view.resetBrowseResultsContainer();macg.insertAfter(B,this.view.displayContents);},getNodeValue:function(D,C){node=D.getElementsByTagName(C);if(node!=null&&node.length>0){return node[0].firstChild.nodeValue;}else{return null;}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.view.render(C);},parseResponse:function(F,D){var E=F.getElementsByTagName("status");D.status=E[0].getAttribute("value");if(D.status=="error"){D.status="error";}return D;}};macg.favgame=new Object();macg.favgame.FavGameView=function(E,F,D){this.addToFavTabDiv=document.getElementById(E);this.favoriteId=F;this.errorMsgDiv=document.getElementById(D);};macg.favgame.FavGameView.prototype={setController:function(B){if(null!=this.addToFavTabDiv){this.addToFavTabDiv.onclick=B.favGame.bind(B);}},render:function(E,D,F){if(E.status==macg.messages.SESSION_TIMEDOUT){this.renderSigninView();}else{if(E.status==macg.messages.STATUS_OK){this.renderSuccess();}else{this.renderError(E);}}},renderSuccess:function(){this.addToFavTabDiv.className="addedToFavTab";this.addToFavTabDiv.onclick="javascript:void(0)";linkCode(this,"Favorited");},renderError:function(C){var D=document.createTextNode(C.message);this.errorMsgDiv.style.display="block";this.errorMsgDiv.appendChild(D);this.addToFavTabDiv.onclick="javascript:void(0)";
},renderSigninView:function(D){var C=document.getElementById("signInURL").value;window.location=C;}};macg.favgame.FavGameController=function(D,C){this.url=D;this.view=C;this.view.setController(this);this.parser=new macg.messages.Parser();};macg.favgame.FavGameController.prototype={favGame:function(){var D=new Array();D.push(new Array("favoriteId",this.view.favoriteId));var C=new ajax.Request(this,this.url,ajax.METHOD_POST);C.sendRequest(D);return false;},handleSuccess:function(D){if(D.responseXML==null){this.handleError();}else{var C=this.parser.parseResponse(D.responseXML);this.view.render(C);}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.view.render(C);}};function P7_colH2(){var P,K,N=0,L,O,J,I=document.p7eqc,M=document.p7eqa;if(I&&I.length){for(P=1;P<I.length;P+=2){I[P+1].style.paddingBottom="";}for(P=1;P<I.length;P+=2){K=I[P].offsetHeight;N=(K>N)?K:N;}for(P=1;P<I.length;P+=2){K=I[P].offsetHeight;if(K<N){J=N-K;if(!M&&I[0]==1){P7_eqA2(I[P+1].id,0,J);}else{I[P+1].style.paddingBottom=J+"px";}}}document.p7eqa=1;document.p7eqth=document.body.offsetHeight;document.p7eqtw=document.body.offsetWidth;}}function P7_eqT2(){if(document.p7eqth!=document.body.offsetHeight||document.p7eqtw!=document.body.offsetWidth){P7_colH2();}}function P7_equalCols2(){var E,F,D;if(document.getElementById){document.p7eqc=new Array();document.p7eqc[0]=arguments[0];for(i=1;i<arguments.length;i+=2){D=null;E=document.getElementById(arguments[i]);if(E){F=E.getElementsByTagName(arguments[i+1]);if(F){D=F[F.length-1];if(!D.id){D.id="p7eq"+i;}}}if(E&&D){document.p7eqc[document.p7eqc.length]=E;document.p7eqc[document.p7eqc.length]=D;}}setInterval("P7_eqT2()",10);}}function P7_eqA2(G,H,I){var K=10,J=20,L=document.getElementById(G);np=(H>=I)?I:H;L.style.paddingBottom=np+"px";if(np<I){np+=J;setTimeout("P7_eqA2('"+G+"',"+np+","+I+")",K);}}function clearComment(){document.topCommentForm.commentText.value="";}function hideAllDivAdmin(E){var F=new Array(7);F[0]="confirmAddFeaturedDiv";F[1]="confirmDeactiveFeaturedDiv";F[2]="confirmActiveFeaturedDiv";F[3]="confirmAddSponsoredDiv";F[4]="confirmDeactiveSponsoredDiv";F[5]="confirmActiveSponsoredDiv";F[6]="confirmDeleteDiv";var D=0;for(D=0;D<7;D++){if(E!=F[D]){hideConfirmDiv(F[D]);}}}function hideAllDivUser(E){var F=new Array(1);F[0]="confirmDeleteDivUser";var D=0;for(D=0;D<1;D++){if(E!=F[D]){hideConfirmDiv(F[D]);}}}function hideConfirmDiv(B){displayDiv=document.getElementById(B);displayDiv.style.display="none";}function hideAllDivAdmin(E){var F=new Array(7);F[0]="confirmAddFeaturedDiv";F[1]="confirmDeactiveFeaturedDiv";F[2]="confirmActiveFeaturedDiv";F[3]="confirmAddSponsoredDiv";F[4]="confirmDeactiveSponsoredDiv";F[5]="confirmActiveSponsoredDiv";F[6]="confirmDeleteDiv";var D=0;for(D=0;D<7;D++){if(E!=F[D]){hideConfirmDiv(F[D]);}}}function hideAllDivUser(E){var F=new Array(1);F[0]="confirmDeleteDivUser";var D=0;for(D=0;D<1;D++){if(E!=F[D]){hideConfirmDiv(F[D]);}}}function hideConfirmDiv(B){displayDiv=document.getElementById(B);displayDiv.style.display="none";}function displayConfirmDiv(B){displayDiv=document.getElementById(B);displayDiv.style.display="block";}function setURLText(){document.getElementById("urlText").value=document.location.href;}function initializeVariables(){var B=new Spry.Widget.TabbedPanels("gameinfo",{defaultTab:0});}function setTabGameVitalsClassName(){document.getElementById("tabGameVitals").className=document.getElementById("tabGameVitals").className+" TabGameVitalsSelected";}function appendStyle(){var G=document.getElementById("tabGameVitals").className;var F=document.getElementById("tabSave").className;var H=document.getElementById("tabCreate").className;var I=document.getElementById("tabForward").className;var J=document.getElementById("tabReport").className;if((G.indexOf("TabbedPanelsTabSelected"))!=-1){document.getElementById("tabGameVitals").className=document.getElementById("tabGameVitals").className+" TabGameVitalsSelected";document.getElementById("tabSave").className="TabbedPanelsTab TabSave";document.getElementById("tabForward").className="TabbedPanelsTab TabForward";document.getElementById("tabReport").className="TabbedPanelsTab TabReport";document.getElementById("tabCreate").className="TabbedPanelsTab TabCreate";}else{if((F.indexOf("TabbedPanelsTabSelected"))!=-1){document.getElementById("tabGameVitals").className="TabbedPanelsTab TabGameVitals";document.getElementById("tabSave").className=document.getElementById("tabSave").className+" TabSaveSelected";document.getElementById("tabForward").className="TabbedPanelsTab TabForward";document.getElementById("tabReport").className="TabbedPanelsTab TabReport";document.getElementById("tabCreate").className="TabbedPanelsTab TabCreate";}else{if((I.indexOf("TabbedPanelsTabSelected"))!=-1){document.getElementById("tabGameVitals").className="TabbedPanelsTab TabGameVitals";document.getElementById("tabSave").className="TabbedPanelsTab TabSave";document.getElementById("tabForward").className=document.getElementById("tabForward").className+" TabForwardSelected";document.getElementById("tabReport").className="TabbedPanelsTab TabReport";document.getElementById("tabCreate").className="TabbedPanelsTab TabCreate";}else{if((J.indexOf("TabbedPanelsTabSelected"))!=-1){document.getElementById("tabGameVitals").className="TabbedPanelsTab TabGameVitals";document.getElementById("tabSave").className="TabbedPanelsTab TabSave";document.getElementById("tabForward").className="TabbedPanelsTab TabForward";document.getElementById("tabReport").className=document.getElementById("tabReport").className+" TabReportSelected";document.getElementById("tabCreate").className="TabbedPanelsTab TabCreate";}else{if((H.indexOf("TabbedPanelsTabSelected"))!=-1){document.getElementById("tabGameVitals").className="TabbedPanelsTab TabGameVitals";document.getElementById("tabSave").className="TabbedPanelsTab TabSave";document.getElementById("tabForward").className="TabbedPanelsTab TabForward";document.getElementById("tabReport").className="TabbedPanelsTab TabReport";document.getElementById("tabCreate").className=document.getElementById("tabCreate").className+" TabCreateSelected";}}}}}}function copyRight(){url=document.getElementById("copyRightURL").value;window.open(url);}function togglePanelDisplay(R,V,W,T){var O=document.getElementById(V);var Q=O.style.display;var P=O.parentNode.childNodes;var X=document.getElementById(T);var U=X.parentNode.parentNode.childNodes;var S=W+"Selected";for(var M=0;M<P.length;M++){if(P[M].className==R&&P[M].id!=V){P[M].style.display="none";}}for(var N=0;N<U.length;N++){if(U[N].className==W||U[N].className==S){U[N].className=W;}}if(Q=="none"||Q==""){O.style.display="block";X.parentNode.className=S;}else{O.style.display="none";X.parentNode.className=W;}}function tabMouseOver(G,F){var H=G.className;var E=H.indexOf(F);if(E==-1){G.className=H+F;}}function tabMouseOut(G,F){var H=G.className;var E=H.indexOf(F);if(E>=0){G.className=H.slice(0,E);}}function toggleLoginDiv(C,D){document.getElementById(C).style.display="block";document.getElementById(D).style.display="none";}function ratingMouseOverHandler(B){if(B.className=="loveit-unrated"){B.className="loveit-unrated-on";}if(B.className=="loveit-rated"){B.className="loveit-rated-on";}if(B.className=="notforme-unrated"){B.className="notforme-unrated-on";}if(B.className=="notforme-rated"){B.className="notforme-rated-on";}}function ratingMouseOutHandler(B){if(B.className=="loveit-unrated-on"){B.className="loveit-unrated";}if(B.className=="loveit-rated-on"){B.className="loveit-rated";}if(B.className=="notforme-unrated-on"){B.className="notforme-unrated";}if(B.className=="notforme-rated-on"){B.className="notforme-rated";}}function SelectUnselectGame(B){if(B.checked==true){B.parentNode.parentNode.style.backgroundColor="#65A1CE";}else{B.parentNode.parentNode.style.backgroundColor="#BCD1E2";}}function onLoadSelectUnselectGame(I,G){var F=document.forms[I].elements[G];if(!F){return ;}var H=F.length;for(var J=0;J<H;J++){SelectUnselectGame(F[J]);
}}macg.ajaxpost=new Object();macg.ajaxpost.AjaxView=function(F,H,G,I){var J=document.getElementById(H);this.form=new macg.forms.Form(J);this.btnObj=document.getElementById(G);this.setController(new macg.ajaxpost.AjaxpostController(F,this));this.messageContainer="";if(I!=""){this.messageContainer=document.getElementById(I);}};macg.ajaxpost.AjaxView.prototype={setController:function(B){this.btnObj.onclick=B.ajaxRequest.bind(B);},render:function(B){if(B.status==macg.messages.BANNED_USER){this.renderBannedView();}else{if(B.status==macg.messages.STATUS_OK){this.renderSuccess(B);}else{this.renderError(B);}}},renderSuccess:function(C){if(this.messageContainer!=""){macg.removeChildren(this.messageContainer);var D=document.createTextNode(C.message);this.messageContainer.style.display="block";this.messageContainer.appendChild(D);this.messageContainer.className="success";}},renderError:function(E){if(this.messageContainer!=""){macg.removeChildren(this.messageContainer);var G=document.createTextNode(E.message);var F=document.createElement("ul");for(member in E.errors){var H=document.createElement("li");H.appendChild(document.createTextNode(E.errors[member]));F.appendChild(H);}this.messageContainer.style.display="block";this.messageContainer.appendChild(G);this.messageContainer.appendChild(F);this.messageContainer.className="error";}},renderBannedView:function(D){var C=document.getElementById("bannedUserURL").value;window.location=C;},callback:function(){}};macg.ajaxpost.AjaxpostController=function(D,C){this.url=D;this.view=C;this.parser=new macg.messages.Parser();};macg.ajaxpost.AjaxpostController.prototype={ajaxRequest:function(){var B=new ajax.Request(this,this.url,ajax.METHOD_POST);B.sendRequest(this.view.form.generateParameterMap());return false;},handleSuccess:function(D){if(D.responseXML==null){if(this.view.messageContainer!=""){this.handleError();}this.view.callback();}else{this.view.callback();if(this.view.messageContainer!=""){var C=this.parser.parseResponse(D.responseXML);this.view.render(C);}}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.view.render(C);}};macg.deletefile=new Object();macg.deletefile.DeleteFileView=function(E,F){this.deleteFiledivId=document.getElementById("deleteFiledivId");this.uploadFiledivId=document.getElementById("uploadFiledivId");var D=document.getElementById(E);this.form=new macg.forms.Form(D);this.messageContainer=document.getElementById(F);this.deleteAdditionalFileClass=document.getElementsByClassName("deleteAdditionalFileClass",document);};macg.deletefile.DeleteFileView.prototype={setController:function(H){if(this.deleteAdditionalFileClass.length!=0){for(var G=0;G<this.deleteAdditionalFileClass.length;G++){var F=this.deleteAdditionalFileClass[G].getElementsByTagName("a");var E=this.deleteAdditionalFileClass[G].id.substring(this.deleteAdditionalFileClass[G].id.lastIndexOf("_")+1,this.deleteAdditionalFileClass[G].id.length);F[0].onclick=H.deletefile.bind(H,E);}}},render:function(B){if(B.status==macg.messages.BANNED_USER){this.renderBannedView();}else{if(B.status==macg.messages.STATUS_OK){this.renderSuccess(B);}else{this.renderError(B);}}},renderSuccess:function(C){macg.removeChildren(this.messageContainer);macg.removeChildren(this.deleteFiledivId);this.uploadFiledivId.style.display="block";var D=document.createTextNode(C.message);this.messageContainer.appendChild(D);this.messageContainer.className="success";this.messageContainer.visible=true;},renderError:function(E){macg.removeChildren(this.messageContainer);var G=document.createTextNode(E.message);var F=document.createElement("ul");for(member in E.errors){var H=document.createElement("li");H.appendChild(document.createTextNode(E.errors[member]));F.appendChild(H);}this.messageContainer.appendChild(G);this.messageContainer.appendChild(F);this.messageContainer.className="error";this.messageContainer.visible=true;},renderBannedView:function(D){var C=document.getElementById("bannedUserURL").value;window.location=C;}};macg.deletefile.DeleteFileController=function(D,C){this.url=D;this.view=C;this.view.setController(this);this.parser=new macg.messages.Parser();};macg.deletefile.DeleteFileController.prototype={deletefile:function(){var B=new ajax.Request(this,this.url,ajax.METHOD_POST);B.sendRequest(this.view.form.generateParameterMap());return false;},handleSuccess:function(D){if(D.responseXML==null){this.handleError();}else{var C=this.parser.parseResponse(D.responseXML);this.view.render(C);}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.view.render(C);}};addDynamicNodeWithMaxCountCheck=function(H,J,I,G,F){if(document.getElementById(G).value<I){addDynamicNode(H,J);document.getElementById(G).value++;}else{document.getElementById(F).innerHTML="you have created a maximum of "+I+" slots!!";}};addDynamicNode=function(F,E){var H=document.getElementsByName(E)[0];var G=H.cloneNode(true);document.getElementById(F).appendChild(G);};removeDynamicNode=function(I,H,G,F){var J=document.getElementById(H);currentRow=I.parentNode;while(currentRow.parentNode!=J){currentRow=currentRow.parentNode;}J.removeChild(currentRow);document.getElementById(G).value--;document.getElementById(F).innerHTML="";};updateListCount=function(G,I){if(document.getElementById){var F=document.getElementById(I+"Root");if(F.getElementsByTagName){var J=F.getElementsByTagName("div");var H=0;for(i=0;i<J.length;i++){if(J[i].getAttribute){if(J[i].getAttribute("name")==I){H=H+1;}}}document.getElementById(G).value=H;}}};function refreshCaptchaImage(I){var G=Math.floor(Math.random()*11);var J=document.getElementById("captchaImageContainer");var H=J.getElementsByTagName("span");var F=H[0].getElementsByTagName("img")[0];F.setAttribute("alt","macg");F.setAttribute("src",I+"?param="+G);}function showTOS(G,F,H){var E=H+"?country="+G+"&language="+F;window.open(E);}function showTOSURL(B){window.open(B);}selectLanguage=function(M,J,K){var I=document.getElementById(M).value;var P;switch(I){case"BR":P="PT";break;case"BE":P="FR";break;case"FR":P="FR";break;case"NL":P="NL";break;case"DE":P="DE";break;case"DK":P="DK";break;case"CZ":P="CZ";break;case"SK":P="CZ";break;case"GR":P="EL";break;case"HU":P="HU";break;case"IT":P="IT";break;case"NO":P="NO";break;case"PL":P="PO";break;case"PT":P="PT";break;case"RU":P="RU";break;case"ES":P="ES";break;case"SE":P="SV";break;case"SZ":P="DE";break;case"AT":P="DE";break;case"JP":P="JA";break;case"LU":P="FR";break;case"FI":P="PT";break;case"TW":P="ZH";break;case"CN":P="ZH";break;case"KR":P="KO";break;case"TH":P="TH";break;default:P="EN";break;}var L=document.getElementById(J);for(var O=0;O<L.length;O++){if(L.options[O].value==P){L.selectedIndex=O;break;}}var N=document.getElementById(K);if(I=="US"||I=="CA"){N.checked=1;}else{N.checked=0;}};macg.register=new Object();macg.register.personaManager=function(C,D){this.url=C;this.parameterName=D;this.screenNameBox=document.getElementById(D);this.screenNameButton=document.getElementById(D+"Button");this.screenNameMessage=document.getElementById(D+"Message");this.parser=new macg.messages.Parser(this);this.screenNameButton.onclick=this.checkPersonaAvailability.bind(this);};macg.register.personaManager.prototype={AVAILABLE_MESSAGE:"available",UNAVAILABLE_MESSAGE:"unavailable",AVAILABLE_ATTRIBUTE:"available",checkPersonaAvailability:function(){var C=new ajax.Request(this,this.url,ajax.METHOD_GET);var D=new Array(this.parameterName,this.screenNameBox.value);C.sendRequest(new Array(D));},handleSuccess:function(D){if(D.responseXML==null){this.handleError();}else{var C=this.parser.parseResponse(D.responseXML);this.render(C);}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.render(C);},parseResponse:function(F,D){var E=F.getElementsByTagName(this.parser.ELEMENT_STATUS);D.available=E[0].getAttribute(this.AVAILABLE_ATTRIBUTE);},render:function(B){if(B.status==macg.messages.STATUS_OK){this.renderSuccess(B);}else{this.renderError(B);}},renderSuccess:function(B){if("true"!=B.available){this.screenNameMessage.innerHTML=this.UNAVAILABLE_MESSAGE;
this.screenNameMessage.className="error";}else{this.screenNameMessage.innerHTML=this.AVAILABLE_MESSAGE;this.screenNameMessage.className="success";}},renderError:function(B){if(null!=B.message){this.screenNameMessage.innerHTML=B.message;this.screenNameMessage.className="error";}}};function linkCodeById(D,C){obj=document.getElementById(D);linkCode(obj,C);}function linkCode(E,F){var D=s_gi("eamaxiscarnival");D.linkTrackVars="eVar1,eVar2,eVar5,eVar12,eVar13,events";if(F=="Send to a Friend"){D.linkTrackEvents="event1";D.events="event1";}if(F=="Post to Blog"){D.linkTrackEvents="event2";D.events="event2";}if(F=="Favorited"){D.linkTrackEvents="event3";D.events="event3";}if(F=="Comment Posted"){D.linkTrackEvents="event4";D.events="event4";}if(F=="Game Rated"){D.linkTrackEvents="event5";D.events="event5";}if(F=="High Score Posted"){D.linkTrackEvents="event6";D.events="event6";}if(F=="Launched Wizard"){D.linkTrackEvents="event7";D.events="event7";}if(F=="Opened in Swapper"){D.linkTrackEvents="event8";D.events="event8";}if(F=="Download Game File"){D.linkTrackEvents="event9";D.events="event9";}if(F=="Download Game Creator"){D.linkTrackEvents="event10";D.events="event10";}if(F=="Create Tab"){D.linkTrackEvents="event11";D.events="event11";}if(F=="Register Success"){D.linkTrackEvents="event12";D.events="event12";}D.tl(E,"o",F);}macg.addPlaylistGame=new Object();macg.addPlaylistGame.AddToPlaylistView=function(G,F,E){var H=document.getElementById(G);this.form=new macg.forms.Form(H);this.img=document.getElementById(E);this.messageContainer=document.getElementById(F);this.favGameSubmitEnable=document.getElementById("favGameEnable");};macg.addPlaylistGame.AddToPlaylistView.prototype={setController:function(B){if(null!=this.img){this.img.onclick=B.addPlaylistGame.bind(B);}},render:function(E,D,F){if(E.status==macg.messages.STATUS_OK){this.renderSuccess(E,D,F);}else{if(E.status==macg.messages.SESSION_TIMEDOUT){this.renderSigninView();}else{this.renderError(E);}}},renderSuccess:function(K,H,L){macg.removeChildren(this.messageContainer);var M=document.createElement("a");if(L!=null){var N=document.createTextNode(L);M.appendChild(N);}else{var I=document.createTextNode("your Favorites");M.appendChild(I);}M.setAttribute("href",H);var J=document.createTextNode(K.message);this.messageContainer.appendChild(J);this.messageContainer.appendChild(M);this.messageContainer.className="success";this.messageContainer.visible=true;},renderSigninView:function(D){var C=document.getElementById("signInURL").value;window.location=C;},renderError:function(E){macg.removeChildren(this.messageContainer);var G=document.createTextNode(E.message);var F=document.createElement("ul");for(member in E.errors){var H=document.createElement("li");H.appendChild(document.createTextNode(E.errors[member]));F.appendChild(H);}this.messageContainer.appendChild(G);this.messageContainer.appendChild(F);this.messageContainer.className="error";this.messageContainer.visible=true;},renderCustom:function(D,F){macg.removeChildren(this.messageContainer);var E=document.createElement("div");F.each(function(A){if("text"==A.type){if(!A.value.blank()){var B=document.createTextNode(A.value);E.appendChild(B);}}else{if("link"==A.type){var H=document.createElement("a");var C=document.createTextNode(A.name);H.appendChild(C);H.setAttribute("href",A.href);E.appendChild(H);}}});this.messageContainer.appendChild(E);this.messageContainer.className="error";this.messageContainer.visible=true;}};macg.addPlaylistGame.AddToPlaylistController=function(D,C){this.url=D;this.view=C;this.view.setController(this);this.parser=new macg.messages.Parser();};macg.addPlaylistGame.AddToPlaylistController.prototype={addPlaylistGame:function(){var H=document.getElementById("playlistId").value;if(H!="0"||H==""){var J=new ajax.Request(this,this.url,ajax.METHOD_POST);J.sendRequest(this.view.form.generateParameterMap());return false;}else{var I=document.getElementById("hiddenUrl").value;var G=document.getElementById("hiddenGameId").value;var F=I+"?gameId="+G;window.location=F;}},handleSuccess:function(V){if(V.responseXML==null){this.handleError();}else{var T=this.parser.parseResponse(V.responseXML);var N=this.getNodeValue(V.responseXML,"link");var O=this.getNodeValue(V.responseXML,"playlistName");if(T.status!="customerror"){this.view.render(T,N,O);}else{var R=new Array();var U=/{|}/;var Q=T.message;var P=Q.split(U);for(var L=0;L<P.length;L++){var S=P[L];if(S.indexOf("#")>-1){S=S.substr(1);var M=new Object;M.type="link";M.href=this.getNodeValue(V.responseXML,S+"Link");M.name=this.getNodeValue(V.responseXML,S+"Name");R.push(M);}else{var M=new Object;M.type="text";M.value=S;R.push(M);}}this.view.renderCustom(T,R);}}},handleError:function(D){var C=macg.messages.generateServerErrorResponse();this.view.render(C);},getNodeValue:function(D,C){node=D.getElementsByTagName(C);if(node!=null&&node.length>0&&node[0].firstChild!=null){return node[0].firstChild.nodeValue;}else{return null;}}};function GetFile(){var C=document.getElementById("fileInput");var D=C.type;if(D!="file"){return ;}C.click();return C.value;}function SendFilename(G){var I=document.getElementById("fileInput");var H=I.type;if(H!="file"){return ;}var J=document.getElementById(G);var F=J.SetFilename(I.value);}window.onbeforeunload=SafeToUnloadDialogCheck;var mElementToCheck;function sendAggregateStats(){new Ajax.Request(contextPath+"/useraggregatestats",{method:"post",parameters:{wiztype:mElementToCheck},onSuccess:function(B){},onFailure:function(B){}});}function SafeToUnloadDialogCheck(){if(!ThisMovie()){return ;}if(typeof window.onunload=="function"&&window.onunload.name=="sendAggregateStats"){window.onunload=null;}var D=ThisMovie().IsSafeToUnload();if(typeof window.onunload=="function"){var C=window.onunload;window.onunload=sendAggregateStats;C();}else{window.onunload=sendAggregateStats;}if(D.toString()=="false"){return"YOUR CHANGES HAVE NOT BEEN SAVED.\nYou will lose all unsaved work if you continue.";}}function ThisMovie(){if(navigator.appName.indexOf("Microsoft")!=-1){return window[mElementToCheck];}else{return document[mElementToCheck];}}function SetElementToCheck(B){mElementToCheck=B;}var SUBMIT_SCORE="SubmitScore";var RETRIEVE_SCORE="RetrieveScore";var GAME_START="StartGame";var GAME_END="EndGame";if(!window["carnival"]){window["carnival"]={};}carnival.connect=function(C){var D=false;if(pageInfo.connected!=null&&!pageInfo.connected){pageInfo.connected=true;D=true;if(pageInfo.hasPlaylist==true&&pageInfo.playlistAttemptedToConnect==true){getSWF("plb").ApiConnected();}}else{D=false;}return D;};carnival.Status=function(C,D){this.statusCode=C;this.message=D;};carnival.gameStartTime=new Date();carnival.gameStart=function(L){var I=false;if(pageInfo.connected&&gameStats!=null&&gameStats.started!=1){I=true;carnival.gameStartTime=new Date();gameStats.id=pageInfo.gameId;gameStats.started=1;var H=new Array();setHighScoreApiName(gameStats,GAME_START);H.push(gameStats);var K={"gameStats":H};var J=$H(K);var G=new carnival.gs.GameStatsController(pageInfo.gameStatsUrl,Object.toJSON(J));G.callback=function(){if(pageInfo.hasPlaylist==true){getSWF("plb").GameStarted();}if(L!=null&&L.length>0){var B=new carnival.Status(G.statusCode,G.message);try{getSWF("gameplayer")[L](B);}catch(A){}}};G.sendJSONRequest();}return I;};carnival.setGameResult=function(E){var F=false;if(gameStats!=null&&gameStats.started==1){if(E!=null&&E.toLowerCase()=="win"){gameStats.won=1;gameStats.lost=0;}else{gameStats.won=0;gameStats.lost=1;}F=true;var H=new Date();var G=new Date();G.setTime(Math.abs(carnival.gameStartTime.getTime()-H.getTime())/1000);gameStats.playtime=G.getTime();}return F;};carnival.gameEnd=function(Q){var N=false;var K;if(gameStats!=null&&gameStats.started==1){N=true;if(gameStats.playtime==null){var M=new Date();var L=new Date();L.setTime(Math.abs(carnival.gameStartTime.getTime()-M.getTime())/1000);gameStats.playtime=L.getTime();}gameStats.started=0;var P=new Array();if(gameStats.scores!=null){setHighScoreApiName(gameStats,SUBMIT_SCORE);
}else{setHighScoreApiName(gameStats,GAME_END);}P.push(gameStats);var O={"gameStats":P};var J=$H(O);var R=new carnival.gs.GameStatsController(pageInfo.gameStatsUrl,Object.toJSON(J));R.callback=function(){if(R.response!=null){try{var B=R.response.evalJSON();if(B!=null){getSWF("gib").updateScores(B);K=new carnival.Status(R.statusCode,R.message);}else{K=new carnival.Status(0,"The score object is not available");}}catch(A){K=new carnival.Status(0,"The score object is not available");}}else{K=new carnival.Status(0,"The score object is not available");}if(Q!=null&&Q.length>0){try{getSWF("gameplayer")[Q](K);}catch(A){}}if(pageInfo.hasPlaylist==true){getSWF("plb").GameEnded();}};R.sendJSONRequest();}gameStats=new carnival.gs.GameStats();return N;};carnival.setScore=function(D){var C=false;if(gameStats!=null&&gameStats.started==1&&D!=null&&!isNaN(D)){var D=[new carnival.gs.Score("Score",scramble(pageInfo.token,D))];gameStats.scores=D;C=true;}return C;};function getSWF(B){if(navigator.appName.indexOf("Microsoft")!=-1){return window[B];}else{return document[B];}}function cleanUpTopScoreContainerDto(G,H){var F;switch(H){case"daily":F=G["dailyTopScores"];break;case"weekly":F=G["weeklyTopScores"];break;case"personalBest":F=new Array();F[0]=G["personalBestScore"];break;case"allTime":default:F=G["allTimeTopScores"];break;}var I=new Array();var J=0;for(J=0;J<F.length;J++){I[J]=cleanUpTopScoreDto(F[J]);}return I;}function cleanUpTopScoreDto(D){var C=new Object();C.score=D.score;C.date=D.date;C.index=D.index;C.userName=D.userName;C.userPageUrl=D.userPageUrl;return C;}carnival.requestScores=function(J,I){var G=false;if(pageInfo.connected){G=true;var H=new Array();H.push(new Array("format","json"));H.push(new Array("gameId",pageInfo.gameId));H.push(new Array("r",Math.floor(Math.random()*10000000000000)));H.push(new Array("apiName",RETRIEVE_SCORE));var F=new carnival.gs.GameStatsController(pageInfo.gameScoresUrl,H);F.callback=function(){var A=new carnival.Status(F.statusCode,F.message);var B;if(F.response!=null){try{var D=F.response.evalJSON();B=cleanUpTopScoreContainerDto(D,I);}catch(C){A=new carnival.Status(0,"The score object is not available");}}try{getSWF("gameplayer")[J](A,B);}catch(C){}};F.sendRequest();}return G;};function setHighScoreApiName(D,C){D.apiName=C;}function IsApiConnected(){pageInfo.playlistAttemptedToConnect=true;return pageInfo.connected;}function DisablePlaylistAutoPlay(B){if((B=="plb"&&(pageInfo.hasPlaylist==true))||B=="gameplayer"){getSWF(B).DisableAutoPlay();}}function EnablePlaylistAutoPlay(B){if(B=="gameplayer"){getSWF(B).EnableAutoPlay();}}carnival.gs=new Object();carnival.gs.GamePageInfo=function(K,L,J,I,H,G){this.gameId=K;this.designer=L;this.gameStatsUrl=I;this.gameScoresUrl=J+"/scores";this.hasPlaylist=H;this.playlistAttemptedToConnect=false;this.connected=false;this.token="";this.showAdUrl=G;};carnival.gs.Score=function(C,D){this.name=C;this.score=D;};carnival.gs.GameStats=function(H,G,J,K,L,I){this.id=H;this.started=G;this.won=K;this.lost=L;this.playtime=I;this.scores=J;this.apiName="";};carnival.gs.GameStats.prototype={toJsonString:function(){return Object.toJSON(this);}};carnival.gs.GameStatsController=function(C,D){this.url=C;this.param=D;this.parser=new macg.messages.Parser();};carnival.gs.GameStatsController.prototype={callback:function(){},sendJSONRequest:function(){var B=new ajax.Request(this,this.url,ajax.METHOD_POST);B.sendRequestJSON(this.param);},sendRequest:function(){var B=new ajax.Request(this,this.url,ajax.METHOD_GET);B.sendRequest(this.param);},handleSuccess:function(B){this.response=B.responseJSON;if(B.responseJSON==null){this.response=B.responseText;}if(B.status!=null&&B.status>=100){this.statusCode=B.status;}else{this.handleError(B);}if(this.response==null){this.handleError(B);}else{this.message="Successfully posted the request";this.callback();}},handleError:function(B){this.statusCode=0;this.message="An error occured, please try again";this.callback();}};carnival.advt=new Object();var advtResponseReceived="true";carnival.advt.requestToStartPlay=function(){if(1==1){startGamePlayer();}else{if(pageInfo.showAdUrl!=null&&pageInfo.gameId!=null){if(advtResponseReceived=="true"){advtResponseReceived="false";new Ajax.Request(pageInfo.showAdUrl,{method:"get",parameters:{gameid:pageInfo.gameId,rnd:Math.random()},onSuccess:function(D){advtResponseReceived="true";var C=D.responseText.evalJSON();if(C.showAd&&window.showAd){showAd();showPlayButton();}else{startGamePlayer();}},onFailure:function(B){advtResponseReceived="true";startGamePlayer();}});}}}return true;};function showPlayButton(){getSWF("gameplayer").ShowPlayButton();}function startGamePlayer(){getSWF("gameplayer").focus();getSWF("gameplayer").StartPlaying();}var keySizeInBits=128;var blockSizeInBits=128;var roundsArray=[,,,,[,,,,10,,12,,14],,[,,,,12,,12,,14],,[,,,,14,,14,,14]];var shiftOffsets=[,,,,[,1,2,3],,[,1,2,3],,[,1,3,4]];var Rcon=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145];var SBox=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22];var SBoxInverse=[82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125];function cyclicShiftLeft(E,D){var F=E.slice(0,D);E=E.slice(D).concat(F);return E;}var Nk=keySizeInBits/32;var Nb=blockSizeInBits/32;var Nr=roundsArray[Nk][Nb];function xtime(B){B<<=1;return((B&256)?(B^283):(B));}function mult_GF256(H,F){var G,E=0;for(G=1;G<256;G*=2,F=xtime(F)){if(H&G){E^=F;}}return E;}function byteSub(H,G){var I;if(G=="encrypt"){I=SBox;}else{I=SBoxInverse;}for(var J=0;J<4;J++){for(var F=0;F<Nb;F++){H[J][F]=I[H[J][F]];}}}function shiftRow(F,E){for(var D=1;D<4;D++){if(E=="encrypt"){F[D]=cyclicShiftLeft(F[D],shiftOffsets[Nb][D]);}else{F[D]=cyclicShiftLeft(F[D],Nb-shiftOffsets[Nb][D]);}}}function mixColumn(H,G){var F=[];for(var J=0;J<Nb;J++){for(var I=0;I<4;I++){if(G=="encrypt"){F[I]=mult_GF256(H[I][J],2)^mult_GF256(H[(I+1)%4][J],3)^H[(I+2)%4][J]^H[(I+3)%4][J];}else{F[I]=mult_GF256(H[I][J],14)^mult_GF256(H[(I+1)%4][J],11)^mult_GF256(H[(I+2)%4][J],13)^mult_GF256(H[(I+3)%4][J],9);}}for(var I=0;I<4;I++){H[I][J]=F[I];}}}function addRoundKey(F,E){for(var D=0;D<Nb;D++){F[0][D]^=(E[D]&255);F[1][D]^=((E[D]>>8)&255);F[2][D]^=((E[D]>>16)&255);F[3][D]^=((E[D]>>24)&255);}}function keyExpansion(F){var G=new Array();var E;
Nk=keySizeInBits/32;Nb=blockSizeInBits/32;Nr=roundsArray[Nk][Nb];for(var H=0;H<Nk;H++){G[H]=(F[4*H])|(F[4*H+1]<<8)|(F[4*H+2]<<16)|(F[4*H+3]<<24);}for(H=Nk;H<Nb*(Nr+1);H++){E=G[H-1];if(H%Nk==0){E=((SBox[(E>>8)&255])|(SBox[(E>>16)&255]<<8)|(SBox[(E>>24)&255]<<16)|(SBox[E&255]<<24))^Rcon[Math.floor(H/Nk)-1];}else{if(Nk>6&&H%Nk==4){E=(SBox[(E>>24)&255]<<24)|(SBox[(E>>16)&255]<<16)|(SBox[(E>>8)&255]<<8)|(SBox[E&255]);}}G[H]=G[H-Nk]^E;}return G;}function Round(C,D){byteSub(C,"encrypt");shiftRow(C,"encrypt");mixColumn(C,"encrypt");addRoundKey(C,D);}function InverseRound(C,D){addRoundKey(C,D);mixColumn(C,"decrypt");shiftRow(C,"decrypt");byteSub(C,"decrypt");}function FinalRound(C,D){byteSub(C,"encrypt");shiftRow(C,"encrypt");addRoundKey(C,D);}function InverseFinalRound(C,D){addRoundKey(C,D);shiftRow(C,"decrypt");byteSub(C,"decrypt");}function encrypt(E,D){var F;if(!E||E.length*8!=blockSizeInBits){return ;}if(!D){return ;}E=packBytes(E);addRoundKey(E,D);for(F=1;F<Nr;F++){Round(E,D.slice(Nb*F,Nb*(F+1)));}FinalRound(E,D.slice(Nb*Nr));return unpackBytes(E);}function decrypt(E,D){var F;if(!E||E.length*8!=blockSizeInBits){return ;}if(!D){return ;}E=packBytes(E);InverseFinalRound(E,D.slice(Nb*Nr));for(F=Nr-1;F>0;F--){InverseRound(E,D.slice(Nb*F,Nb*(F+1)));}addRoundKey(E,D);return unpackBytes(E);}function byteArrayToHex(F){var D="";if(!F){return ;}for(var E=0;E<F.length;E++){D+=((F[E]<16)?"0":"")+F[E].toString(16);}return D;}function hexToByteArray(F){var D=[];if(F.length%2){return ;}if(F.indexOf("0x")==0||F.indexOf("0X")==0){F=F.substring(2);}for(var E=0;E<F.length;E+=2){D[Math.floor(E/2)]=parseInt(F.slice(E,E+2),16);}return D;}function packBytes(F){var E=new Array();if(!F||F.length%4){return ;}E[0]=new Array();E[1]=new Array();E[2]=new Array();E[3]=new Array();for(var D=0;D<F.length;D+=4){E[0][D/4]=F[D];E[1][D/4]=F[D+1];E[2][D/4]=F[D+2];E[3][D/4]=F[D+3];}return E;}function unpackBytes(F){var D=new Array();for(var E=0;E<F[0].length;E++){D[D.length]=F[0][E];D[D.length]=F[1][E];D[D.length]=F[2][E];D[D.length]=F[3][E];}return D;}function formatPlaintext(F){var E=blockSizeInBits/8;var D;if((!((typeof F=="object")&&((typeof (F[0]))=="number")))&&((typeof F=="string")||F.indexOf)){F=F.split("");for(D=0;D<F.length;D++){F[D]=F[D].charCodeAt(0)&255;}}D=F.length%E;if(D>0){F=F.concat(getRandomBytes(E-D));}return F;}function getRandomBytes(E){var F,D=new Array();for(F=0;F<E;F++){D[F]=Math.floor(Math.random()*255);}return D;}function rijndaelEncrypt(L,O,Q){var K,R,N;var M=blockSizeInBits/8;var P;if(!L||!O){return ;}if(O.length*8!=keySizeInBits){return ;}if(Q=="CBC"){P=getRandomBytes(M);}else{Q="ECB";P=new Array();}L=formatPlaintext(L);K=keyExpansion(O);for(var J=0;J<L.length/M;J++){N=L.slice(J*M,(J+1)*M);if(Q=="CBC"){for(var R=0;R<M;R++){N[R]^=P[(J*M)+R];}}P=P.concat(encrypt(N,K));}return P;}function rijndaelDecrypt(K,P,Q){var L;var M=blockSizeInBits/8;var N=new Array();var O;var J;if(!K||!P||typeof K=="string"){return ;}if(P.length*8!=keySizeInBits){return ;}if(!Q){Q="ECB";}L=keyExpansion(P);for(J=(K.length/M)-1;J>0;J--){O=decrypt(K.slice(J*M,(J+1)*M),L);if(Q=="CBC"){for(var R=0;R<M;R++){N[(J-1)*M+R]=O[R]^K[(J-1)*M+R];}}else{N=O.concat(N);}}if(Q=="ECB"){N=decrypt(K.slice(0,M),L).concat(N);}return N;}function scramble(D,F){var D=hexToByteArray(D);var E="ECB";scrambledValue=rijndaelEncrypt(padAdditionalBytes(F),D,E);scrambledValue=byteArrayToHex(scrambledValue);return scrambledValue;}function padAdditionalBytes(L){var H=L.toString();var J=keySizeInBits/8;var K=H.length%J;var I="";for(var G=0;G<(J-K);G++){I=I.concat("z");}I=I.concat(L);return I;}