var Prototype={Version:"1.5.0",BrowserFeatures:{XPath:!!document.evaluate},ScriptFragment:"(?:<script.*?>)((\n|\r|.)*?)(?:</script>)",emptyFunction:function(){},K:function(y){return y;}};var Class={create:function(){return function(){this.initialize.apply(this,arguments);};}};var Abstract=new Object();Object.extend=function(X,R){for(var y in R){X[y]=R[y];}return X;};Object.extend(Object,{inspect:function(y){try{if(y===undefined){return "undefined";}if(y===null){return "null";}return y.inspect?y.inspect():y.toString();}catch(X){if(X instanceof RangeError){return "...";}throw X;}},keys:function(X){var y=[];for(var R in X){y.push(R);}return y;},values:function(y){var X=[];for(var R in y){X.push(y[R]);}return X;},clone:function(y){return Object.extend({},y);}});Function.prototype.bind=function(){var X=this,R=$A(arguments),y=R.shift();return function(){return X.apply(y,R.concat($A(arguments)));};};Function.prototype.bindAsEventListener=function(R){var X=this,y=$A(arguments),R=y.shift();return function(S){return X.apply(R,[(S||window.event)].concat(y).concat($A(arguments)));};};Object.extend(Number.prototype,{toColorPart:function(){var y=this.toString(16);if(this<16){return "0"+y;}return y;},succ:function(){return this+1;},times:function(y){$R(0,this,true).each(y);return this;}});var Try={these:function(){var p;for(var t=0,y=arguments.length;t<y;t++){var R=arguments[t];try{p=R();break;}catch(S){}}return p;}};var PeriodicalExecuter=Class.create();PeriodicalExecuter.prototype={initialize:function(y,X){this.callback=y;this.frequency=X;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;}}}};String.interpret=function(y){return y==null?"":String(y);};Object.extend(String.prototype,{gsub:function(y,p){var S="",t=this,R;p=arguments.callee.prepareReplacement(p);while(t.length>0){if(R=t.match(y)){S+=t.slice(0,R.index);S+=String.interpret(p(R));t=t.slice(R.index+R[0].length);}else{S+=t,t="";}}return S;},sub:function(R,X,y){X=this.gsub.prepareReplacement(X);y=y===undefined?1:y;return this.gsub(R,function(S){if(--y<0){return S[0];}return X(S);});},scan:function(y,X){this.gsub(y,X);return this;},truncate:function(y,X){y=y||30;X=X===undefined?"...":X;return this.length>y?this.slice(0,y-X.length)+X: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 y=new RegExp(Prototype.ScriptFragment,"img");var X=new RegExp(Prototype.ScriptFragment,"im");return (this.match(y)||[]).map(function(R){return (R.match(X)||["",""])[1];});},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script);});},escapeHTML:function(){var y=document.createElement("div");var X=document.createTextNode(this);y.appendChild(X);return y.innerHTML;},unescapeHTML:function(){var y=document.createElement("div");y.innerHTML=this.stripTags();return y.childNodes[0]?(y.childNodes.length>1?$A(y.childNodes).inject("",function(X,R){return X+R.nodeValue;}):y.childNodes[0].nodeValue):"";},toQueryParams:function(y){var X=this.strip().match(/([^?#]*)(#.*)?$/);if(!X){return {};}return X[1].split(y||"&").inject({},function(R,S){if((S=S.split("="))[0]){var p=decodeURIComponent(S[0]);var t=S[1]?decodeURIComponent(S[1]):undefined;if(R[p]!==undefined){if(R[p].constructor!=Array){R[p]=[R[p]];}if(t){R[p].push(t);}}else{R[p]=t;}}return R;});},toArray:function(){return this.split("");},succ:function(){return this.slice(0,this.length-1)+String.fromCharCode(this.charCodeAt(this.length-1)+1);},camelize:function(){var t=this.split("-"),R=t.length;if(R==1){return t[0];}var S=this.charAt(0)=="-"?t[0].charAt(0).toUpperCase()+t[0].substring(1):t[0];for(var y=1;y<R;y++){S+=t[y].charAt(0).toUpperCase()+t[y].substring(1);}return S;},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(y){var X=this.replace(/\\/g,"\\\\");if(y){return "\""+X.replace(/"/g,"\\\"")+"\"";}else{return "'"+X.replace(/'/g,"\\'")+"'";}}});String.prototype.gsub.prepareReplacement=function(y){if(typeof y=="function"){return y;}var X=new Template(y);return function(R){return X.evaluate(R);};};String.prototype.parseQuery=String.prototype.toQueryParams;var Template=Class.create();Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;Template.prototype={initialize:function(X,y){this.template=X.toString();this.pattern=y||Template.Pattern;},evaluate:function(y){return this.template.gsub(this.pattern,function(X){var R=X[1];if(R=="\\"){return X[2];}return R+String.interpret(y[X[3]]);});}};var $break=new Object();var $continue=new Object();var Enumerable={each:function(S){var y=0;try{this._each(function(X){try{S(X,y++);}catch(t){if(t!=$continue){throw t;}}});}catch(R){if(R!=$break){throw R;}}return this;},eachSlice:function(p,R){var S=-p,t=[],y=this.toArray();while((S+=p)<y.length){t.push(y.slice(S,S+p));}return t.map(R);},all:function(y){var X=true;this.each(function(S,R){X=X&&!!(y||Prototype.K)(S,R);if(!X){throw $break;}});return X;},any:function(y){var X=false;this.each(function(S,R){if(X=!!(y||Prototype.K)(S,R)){throw $break;}});return X;},collect:function(y){var X=[];this.each(function(S,R){X.push((y||Prototype.K)(S,R));});return X;},detect:function(y){var X;this.each(function(S,R){if(y(S,R)){X=S;throw $break;}});return X;},findAll:function(y){var X=[];this.each(function(S,R){if(y(S,R)){X.push(S);}});return X;},grep:function(R,y){var X=[];this.each(function(t,S){var p=t.toString();if(p.match(R)){X.push((y||Prototype.K)(t,S));}});return X;},include:function(X){var y=false;this.each(function(R){if(R==X){y=true;throw $break;}});return y;},inGroupsOf:function(y,X){X=X===undefined?null:X;return this.eachSlice(y,function(R){while(R.length<y){R.push(X);}return R;});},inject:function(X,y){this.each(function(S,R){X=y(X,S,R);});return X;},invoke:function(y){var X=$A(arguments).slice(1);return this.map(function(R){return R[y].apply(R,X);});},max:function(y){var X;this.each(function(S,R){S=(y||Prototype.K)(S,R);if(X==undefined||S>=X){X=S;}});return X;},min:function(y){var X;this.each(function(S,R){S=(y||Prototype.K)(S,R);if(X==undefined||S<X){X=S;}});return X;},partition:function(R){var y=[],X=[];this.each(function(S,t){((R||Prototype.K)(S,t)?y:X).push(S);});return [y,X];},pluck:function(y){var X=[];this.each(function(S,R){X.push(S[y]);});return X;},reject:function(y){var X=[];this.each(function(S,R){if(!y(S,R)){X.push(S);}});return X;},sortBy:function(y){return this.map(function(R,X){return {value:R,criteria:y(R,X)};}).sort(function(S,R){var p=S.criteria,t=R.criteria;return p<t?-1:p>t?1:0;}).pluck("value");},toArray:function(){return this.map();},zip:function(){var y=Prototype.K,X=$A(arguments);if(typeof X.last()=="function"){y=X.pop();}var R=[this].concat(X).map($A);return this.map(function(S,t){return y(R.pluck(t));});},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(t){if(!t){return [];}if(t.toArray){return t.toArray();}else{var y=[];for(var R=0,S=t.length;R<S;R++){y.push(t[R]);}return y;}};Object.extend(Array.prototype,Enumerable);if(!Array.prototype._reverse){Array.prototype._reverse=Array.prototype.reverse;}Object.extend(Array.prototype,{_each:function(y){for(var X=0,R=this.length;X<R;X++){y(this[X]);}},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(y){return y!=null;});},flatten:function(){return this.inject([],function(y,X){return y.concat(X&&X.constructor==Array?X.flatten():[X]);});},without:function(){var y=$A(arguments);return this.select(function(X){return !y.include(X);});},indexOf:function(X){for(var y=0,R=this.length;y<R;y++){if(this[y]==X){return y;}}return -1;},reverse:function(y){return (y!==false?this:this.toArray())._reverse();},reduce:function(){return this.length>1?this:this[0];},uniq:function(){return this.inject([],function(y,X){return y.include(X)?y:y.concat([X]);});},clone:function(){return [].concat(this);},size:function(){return this.length;},inspect:function(){return "["+this.map(Object.inspect).join(", ")+"]";}});Array.prototype.toArray=Array.prototype.clone;function $w(y){y=y.strip();return y?y.split(/\s+/):[];}if(window.opera){Array.prototype.concat=function(){var y=[];for(var R=0,p=this.length;R<p;R++){y.push(this[R]);}for(var R=0,p=arguments.length;R<p;R++){if(arguments[R].constructor==Array){for(var S=0,t=arguments[R].length;S<t;S++){y.push(arguments[R][S]);}}else{y.push(arguments[R]);}}return y;};}var Hash=function(y){Object.extend(this,y||{});};Object.extend(Hash,{toQueryString:function(y){var X=[];this.prototype._each.call(y,function(S){if(!S.key){return ;}if(S.value&&S.value.constructor==Array){var R=S.value.compact();if(R.length<2){S.value=R.reduce();}else{key=encodeURIComponent(S.key);R.each(function(t){t=t!=undefined?encodeURIComponent(t):"";X.push(key+"="+encodeURIComponent(t));});return ;}}if(S.value==undefined){S[1]="";}X.push(S.map(encodeURIComponent).join("="));});return X.join("&");}});Object.extend(Hash.prototype,Enumerable);Object.extend(Hash.prototype,{_each:function(y){for(var R in this){var t=this[R];if(t&&t==Hash.prototype[R]){continue;}var S=[R,t];S.key=R;S.value=t;y(S);}},keys:function(){return this.pluck("key");},values:function(){return this.pluck("value");},merge:function(y){return $H(y).inject(this,function(X,R){X[R.key]=R.value;return X;});},remove:function(){var R;for(var y=0,t=arguments.length;y<t;y++){var S=this[arguments[y]];if(S!==undefined){if(R===undefined){R=S;}else{if(R.constructor!=Array){R=[R];}R.push(S);}}delete this[arguments[y]];}return R;},toQueryString:function(){return Hash.toQueryString(this);},inspect:function(){return "#<Hash:{"+this.map(function(y){return y.map(Object.inspect).join(": ");}).join(", ")+"}>";}});function $H(y){if(y&&y.constructor==Hash){return y;}return new Hash(y);}ObjectRange=Class.create();Object.extend(ObjectRange.prototype,Enumerable);Object.extend(ObjectRange.prototype,{initialize:function(R,X,y){this.start=R;this.end=X;this.exclusive=y;},_each:function(X){var y=this.start;while(this.include(y)){X(y);y=y.succ();}},include:function(y){if(y<this.start){return false;}if(this.exclusive){return y<this.end;}return y<=this.end;}});var $R=function(R,X,y){return new ObjectRange(R,X,y);};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(y){this.responders._each(y);},register:function(y){if(!this.include(y)){this.responders.push(y);}},unregister:function(y){this.responders=this.responders.without(y);},dispatch:function(t,y,S,R){this.each(function(X){if(typeof X[t]=="function"){try{X[t].apply(X,[y,S,R]);}catch(p){}}});}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++;},onComplete:function(){Ajax.activeRequestCount--;}});Ajax.Base=function(){};Ajax.Base.prototype={setOptions:function(y){this.options={method:"post",asynchronous:true,contentType:"application/x-www-form-urlencoded",encoding:"UTF-8",parameters:""};Object.extend(this.options,y||{});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(y,X){this.transport=Ajax.getTransport();this.setOptions(X);this.request(y);},request:function(t){this.url=t;this.method=this.options.method;var y=this.options.parameters;if(!["get","post"].include(this.method)){y["_method"]=this.method;this.method="post";}y=Hash.toQueryString(y);if(y&&/Konqueror|Safari|KHTML/.test(navigator.userAgent)){y+="&_=";}if(this.method=="get"&&y){this.url+=(this.url.indexOf("?")>-1?"&":"?")+y;}try{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();var R=this.method=="post"?(this.options.postBody||y):null;this.transport.send(R);if(!this.options.asynchronous&&this.transport.overrideMimeType){this.onStateChange();}}catch(S){this.dispatchException(S);}},onStateChange:function(){var y=this.transport.readyState;if(y>1&&!((y==4)&&this._complete)){this.respondToReadyState(this.transport.readyState);}},setRequestHeaders:function(){var y={"X-Requested-With":"XMLHttpRequest","X-Prototype-Version":Prototype.Version,"Accept":"text/javascript, text/html, application/xml, text/xml, */*"};if(this.method=="post"){y["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){y["Connection"]="close";}}if(typeof this.options.requestHeaders=="object"){var p=this.options.requestHeaders;if(typeof p.push=="function"){for(var R=0,t=p.length;R<t;R+=2){y[p[R]]=p[R+1];}}else{$H(p).each(function(X){y[X.key]=X.value;});}}for(var S in y){this.transport.setRequestHeader(S,y[S]);}},success:function(){return !this.transport.status||(this.transport.status>=200&&this.transport.status<300);},respondToReadyState:function(R){var p=Ajax.Request.Events[R];var S=this.transport,t=this.evalJSON();if(p=="Complete"){try{this._complete=true;(this.options["on"+this.transport.status]||this.options["on"+(this.success()?"Success":"Failure")]||Prototype.emptyFunction)(S,t);}catch(y){this.dispatchException(y);}if((this.getHeader("Content-type")||"text/javascript").strip().match(/^(text|application)\/(x-)?(java|ecma)script(;.*)?$/i)){this.evalResponse();}}try{(this.options["on"+p]||Prototype.emptyFunction)(S,t);Ajax.Responders.dispatch("on"+p,this,S,t);}catch(y){this.dispatchException(y);}if(p=="Complete"){this.transport.onreadystatechange=Prototype.emptyFunction;}},getHeader:function(y){try{return this.transport.getResponseHeader(y);}catch(X){return null;}},evalJSON:function(){try{var json=this.getHeader("X-JSON");return json?eval("("+json+")"):null;}catch(e){return null;}},evalResponse:function(){try{return eval(this.transport.responseText);}catch(e){this.dispatchException(e);}},dispatchException:function(y){(this.options.onException||Prototype.emptyFunction)(this,y);Ajax.Responders.dispatch("onException",this,y);}});Ajax.Updater=Class.create();Object.extend(Object.extend(Ajax.Updater.prototype,Ajax.Request.prototype),{initialize:function(R,t,y){this.container={success:(R.success||R),failure:(R.failure||(R.success?null:R))};this.transport=Ajax.getTransport();this.setOptions(y);var S=this.options.onComplete||Prototype.emptyFunction;this.options.onComplete=(function(p,X){this.updateContent();S(p,X);}).bind(this);this.request(t);},updateContent:function(){var y=this.container[this.success()?"success":"failure"];var X=this.transport.responseText;if(!this.options.evalScripts){X=X.stripScripts();}if(y=$(y)){if(this.options.insertion){new this.options.insertion(y,X);}else{y.update(X);}}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(X,R,y){this.setOptions(y);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=X;this.url=R;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(y){if(this.options.decay){this.decay=(y.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=y.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 $(y){if(arguments.length>1){for(var R=0,t=[],S=arguments.length;R<S;R++){t.push($(arguments[R]));}return t;}if(typeof y=="string"){y=document.getElementById(y);}return Element.extend(y);}if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(S,t){var c=[];var y=document.evaluate(S,$(t)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var R=0,p=y.snapshotLength;R<p;R++){c.push(y.snapshotItem(R));}return c;};}document.getElementsByClassName=function(r,p){if(Prototype.BrowserFeatures.XPath){var c=".//*[contains(concat(' ', @class, ' '), ' "+r+" ')]";return document._getElementsByXPath(c,p);}else{var Q=($(p)||document.body).getElementsByTagName("*");var t=[],S;for(var R=0,y=Q.length;R<y;R++){S=Q[R];if(Element.hasClassName(S,r)){t.push(Element.extend(S));}}return t;}};if(!window.Element){var Element=new Object();}Element.extend=function(p){if(!p||_nativeExtensions||p.nodeType==3){return p;}if(!p._extended&&p.tagName&&p!=window){var R=Object.clone(Element.Methods),S=Element.extend.cache;if(p.tagName=="FORM"){Object.extend(R,Form.Methods);}if(["INPUT","TEXTAREA","SELECT"].include(p.tagName)){Object.extend(R,Form.Element.Methods);}Object.extend(R,Element.Methods.Simulated);for(var y in R){var t=R[y];if(typeof t=="function"&&!(y in p)){p[y]=S.findOrStore(t);}}}p._extended=true;return p;};Element.extend.cache={findOrStore:function(y){return this[y]=this[y]||function(){return y.apply(null,[this].concat($A(arguments)));};}};Element.Methods={visible:function(y){return $(y).style.display!="none";},toggle:function(y){y=$(y);Element[Element.visible(y)?"hide":"show"](y);return y;},hide:function(y){$(y).style.display="none";return y;},show:function(y){$(y).style.display="";return y;},remove:function(y){y=$(y);y.parentNode.removeChild(y);return y;},update:function(y,X){X=typeof X=="undefined"?"":X.toString();$(y).innerHTML=X.stripScripts();setTimeout(function(){X.evalScripts();},10);return y;},replace:function(R,y){R=$(R);y=typeof y=="undefined"?"":y.toString();if(R.outerHTML){R.outerHTML=y.stripScripts();}else{var X=R.ownerDocument.createRange();X.selectNodeContents(R);R.parentNode.replaceChild(X.createContextualFragment(y.stripScripts()),R);}setTimeout(function(){y.evalScripts();},10);return R;},inspect:function(y){y=$(y);var X="<"+y.tagName.toLowerCase();$H({"id":"id","className":"class"}).each(function(S){var R=S.first(),p=S.last();var t=(y[R]||"").toString();if(t){X+=" "+p+"="+t.inspect(true);}});return X+">";},recursivelyCollect:function(X,R){X=$(X);var y=[];while(X=X[R]){if(X.nodeType==1){y.push(Element.extend(X));}}return y;},ancestors:function(y){return $(y).recursivelyCollect("parentNode");},descendants:function(y){return $A($(y).getElementsByTagName("*"));},immediateDescendants:function(y){if(!(y=$(y).firstChild)){return [];}while(y&&y.nodeType!=1){y=y.nextSibling;}if(y){return [y].concat($(y).nextSiblings());}return [];},previousSiblings:function(y){return $(y).recursivelyCollect("previousSibling");},nextSiblings:function(y){return $(y).recursivelyCollect("nextSibling");},siblings:function(y){y=$(y);return y.previousSiblings().reverse().concat(y.nextSiblings());},match:function(y,X){if(typeof X=="string"){X=new Selector(X);}return X.match($(y));},up:function(y,R,X){return Selector.findElement($(y).ancestors(),R,X);},down:function(y,R,X){return Selector.findElement($(y).descendants(),R,X);},previous:function(y,R,X){return Selector.findElement($(y).previousSiblings(),R,X);},next:function(y,R,X){return Selector.findElement($(y).nextSiblings(),R,X);},getElementsBySelector:function(){var X=$A(arguments),y=$(X.shift());return Selector.findChildElements(y,X);},getElementsByClassName:function(X,y){return document.getElementsByClassName(y,X);},readAttribute:function(t,R){t=$(t);if(document.all&&!window.opera){var y=Element._attributeTranslations;if(y.values[R]){return y.values[R](t,R);}if(y.names[R]){R=y.names[R];}var S=t.attributes[R];if(S){return S.nodeValue;}}return t.getAttribute(R);},getHeight:function(y){return $(y).getDimensions().height;},getWidth:function(y){return $(y).getDimensions().width;},classNames:function(y){return new Element.ClassNames(y);},hasClassName:function(X,y){if(!(X=$(X))){return ;}var R=X.className;if(R.length==0){return false;}if(R==y||R.match(new RegExp("(^|\\s)"+y+"(\\s|$)"))){return true;}return false;},addClassName:function(X,y){if(!(X=$(X))){return ;}Element.classNames(X).add(y);return X;},removeClassName:function(X,y){if(!(X=$(X))){return ;}Element.classNames(X).remove(y);return X;},toggleClassName:function(X,y){if(!(X=$(X))){return ;}Element.classNames(X)[X.hasClassName(y)?"remove":"add"](y);return X;},observe:function(){Event.observe.apply(Event,arguments);return $A(arguments).first();},stopObserving:function(){Event.stopObserving.apply(Event,arguments);return $A(arguments).first();},cleanWhitespace:function(y){y=$(y);var R=y.firstChild;while(R){var X=R.nextSibling;if(R.nodeType==3&&!/\S/.test(R.nodeValue)){y.removeChild(R);}R=X;}return y;},empty:function(y){return $(y).innerHTML.match(/^\s*$/);},descendantOf:function(y,X){y=$(y),X=$(X);while(y=y.parentNode){if(y==X){return true;}}return false;},scrollTo:function(X){X=$(X);var y=Position.cumulativeOffset(X);window.scrollTo(y[0],y[1]);return X;},getStyle:function(y,t){y=$(y);if(["float","cssFloat"].include(t)){t=(typeof y.style.styleFloat!="undefined"?"styleFloat":"cssFloat");}t=t.camelize();var S=y.style[t];if(!S){if(document.defaultView&&document.defaultView.getComputedStyle){var R=document.defaultView.getComputedStyle(y,null);S=R?R[t]:null;}else{if(y.currentStyle){S=y.currentStyle[t];}}}if((S=="auto")&&["width","height"].include(t)&&(y.getStyle("display")!="none")){S=y["offset"+t.capitalize()]+"px";}if(window.opera&&["left","top","right","bottom"].include(t)){if(Element.getStyle(y,"position")=="static"){S="auto";}}if(t=="opacity"){if(S){return parseFloat(S);}if(S=(y.getStyle("filter")||"").match(/alpha\(opacity=(.*)\)/)){if(S[1]){return parseFloat(S[1])/100;}}return 1;}return S=="auto"?null:S;},setStyle:function(y,t){y=$(y);for(var R in t){var S=t[R];if(R=="opacity"){if(S==1){S=(/Gecko/.test(navigator.userAgent)&&!/Konqueror|Safari|KHTML/.test(navigator.userAgent))?0.999999:1;if(/MSIE/.test(navigator.userAgent)&&!window.opera){y.style.filter=y.getStyle("filter").replace(/alpha\([^\)]*\)/gi,"");}}else{if(S===""){if(/MSIE/.test(navigator.userAgent)&&!window.opera){y.style.filter=y.getStyle("filter").replace(/alpha\([^\)]*\)/gi,"");}}else{if(S<0.00001){S=0;}if(/MSIE/.test(navigator.userAgent)&&!window.opera){y.style.filter=y.getStyle("filter").replace(/alpha\([^\)]*\)/gi,"")+"alpha(opacity="+S*100+")";}}}}else{if(["float","cssFloat"].include(R)){R=(typeof y.style.styleFloat!="undefined")?"styleFloat":"cssFloat";}}y.style[R.camelize()]=S;}return y;},getDimensions:function(r){r=$(r);var c=$(r).getStyle("display");if(c!="none"&&c!=null){return {width:r.offsetWidth,height:r.offsetHeight};}var S=r.style;var t=S.visibility;var Q=S.position;var p=S.display;S.visibility="hidden";S.position="absolute";S.display="block";var R=r.clientWidth;var y=r.clientHeight;S.display=p;S.position=Q;S.visibility=t;return {width:R,height:y};},makePositioned:function(X){X=$(X);var y=Element.getStyle(X,"position");if(y=="static"||!y){X._madePositioned=true;X.style.position="relative";if(window.opera){X.style.top=0;X.style.left=0;}}return X;},undoPositioned:function(y){y=$(y);if(y._madePositioned){y._madePositioned=undefined;y.style.position=y.style.top=y.style.left=y.style.bottom=y.style.right="";}return y;},makeClipping:function(y){y=$(y);if(y._overflow){return y;}y._overflow=y.style.overflow||"auto";if((Element.getStyle(y,"overflow")||"visible")!="hidden"){y.style.overflow="hidden";}return y;},undoClipping:function(y){y=$(y);if(!y._overflow){return y;}y.style.overflow=y._overflow=="auto"?"":y._overflow;y._overflow=null;return y;}};Object.extend(Element.Methods,{childOf:Element.Methods.descendantOf});Element._attributeTranslations={};Element._attributeTranslations.names={colspan:"colSpan",rowspan:"rowSpan",valign:"vAlign",datetime:"dateTime",accesskey:"accessKey",tabindex:"tabIndex",enctype:"encType",maxlength:"maxLength",readonly:"readOnly",longdesc:"longDesc"};Element._attributeTranslations.values={_getAttr:function(X,y){return X.getAttribute(y,2);},_flag:function(X,y){return $(X).hasAttribute(y)?y:null;},style:function(y){return y.style.cssText.toLowerCase();},title:function(X){var y=X.getAttributeNode("title");return y.specified?y.nodeValue:null;}};Object.extend(Element._attributeTranslations.values,{href:Element._attributeTranslations.values._getAttr,src:Element._attributeTranslations.values._getAttr,disabled:Element._attributeTranslations.values._flag,checked:Element._attributeTranslations.values._flag,readonly:Element._attributeTranslations.values._flag,multiple:Element._attributeTranslations.values._flag});Element.Methods.Simulated={hasAttribute:function(y,R){var X=Element._attributeTranslations;R=X.names[R]||R;return $(y).getAttributeNode(R).specified;}};if(document.all&&!window.opera){Element.Methods.update=function(t,y){t=$(t);y=typeof y=="undefined"?"":y.toString();var R=t.tagName.toUpperCase();if(["THEAD","TBODY","TR","TD"].include(R)){var S=document.createElement("div");switch(R){case "THEAD":case "TBODY":S.innerHTML="<table><tbody>"+y.stripScripts()+"</tbody></table>";depth=2;break;case "TR":S.innerHTML="<table><tbody><tr>"+y.stripScripts()+"</tr></tbody></table>";depth=3;break;case "TD":S.innerHTML="<table><tbody><tr><td>"+y.stripScripts()+"</td></tr></tbody></table>";depth=4;}$A(t.childNodes).each(function(X){t.removeChild(X);});depth.times(function(){S=S.firstChild;});$A(S.childNodes).each(function(X){t.appendChild(X);});}else{t.innerHTML=y.stripScripts();}setTimeout(function(){y.evalScripts();},10);return t;};}Object.extend(Element,Element.Methods);var _nativeExtensions=false;if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){["","Form","Input","TextArea","Select"].each(function(y){var R="HTML"+y+"Element";if(window[R]){return ;}var X=window[R]={};X.prototype=document.createElement(y?y.toLowerCase():"div").__proto__;});}Element.addMethods=function(X){Object.extend(Element.Methods,X||{});function y(t,Q,c){c=c||false;var R=Element.extend.cache;for(var S in t){var p=t[S];if(!c||!(S in Q)){Q[S]=R.findOrStore(p);}}}if(typeof HTMLElement!="undefined"){y(Element.Methods,HTMLElement.prototype);y(Element.Methods.Simulated,HTMLElement.prototype,true);y(Form.Methods,HTMLFormElement.prototype);[HTMLInputElement,HTMLTextAreaElement,HTMLSelectElement].each(function(R){y(Form.Element.Methods,R.prototype);});_nativeExtensions=true;}};var Toggle=new Object();Toggle.display=Element.toggle;Abstract.Insertion=function(y){this.adjacency=y;};Abstract.Insertion.prototype={initialize:function(t,S){this.element=$(t);this.content=S.stripScripts();if(this.adjacency&&this.element.insertAdjacentHTML){try{this.element.insertAdjacentHTML(this.adjacency,this.content);}catch(y){var R=this.element.tagName.toUpperCase();if(["TBODY","TR"].include(R)){this.insertContent(this.contentFromAnonymousTable());}else{throw y;}}}else{this.range=this.element.ownerDocument.createRange();if(this.initializeRange){this.initializeRange();}this.insertContent([this.range.createContextualFragment(this.content)]);}setTimeout(function(){S.evalScripts();},10);},contentFromAnonymousTable:function(){var y=document.createElement("div");y.innerHTML="<table><tbody>"+this.content+"</tbody></table>";return $A(y.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(y){y.each((function(X){this.element.parentNode.insertBefore(X,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(y){y.reverse(false).each((function(X){this.element.insertBefore(X,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(y){y.each((function(X){this.element.appendChild(X);}).bind(this));}});Insertion.After=Class.create();Insertion.After.prototype=Object.extend(new Abstract.Insertion("afterEnd"),{initializeRange:function(){this.range.setStartAfter(this.element);},insertContent:function(y){y.each((function(X){this.element.parentNode.insertBefore(X,this.element.nextSibling);}).bind(this));}});Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(y){this.element=$(y);},_each:function(y){this.element.className.split(/\s+/).select(function(X){return X.length>0;})._each(y);},set:function(y){this.element.className=y;},add:function(y){if(this.include(y)){return ;}this.set($A(this).concat(y).join(" "));},remove:function(y){if(!this.include(y)){return ;}this.set($A(this).without(y).join(" "));},toString:function(){return $A(this).join(" ");}};Object.extend(Element.ClassNames.prototype,Enumerable);var Selector=Class.create();Selector.prototype={initialize:function(y){this.params={classNames:[]};this.expression=y.toString().strip();this.parseExpression();this.compileMatcher();},parseExpression:function(){function p(X){throw "Parse error in selector: "+X;}if(this.expression==""){p("empty expression");}var S=this.params,y=this.expression,R,t,l,c;while(R=y.match(/^(.*)\[([a-z0-9_:-]+?)(?:([~\|!]?=)(?:"([^"]*)"|([^\]\s]*)))?\]$/i)){S.attributes=S.attributes||[];S.attributes.push({name:R[2],operator:R[3],value:R[4]||R[5]||""});y=R[1];}if(y=="*"){return this.params.wildcard=true;}while(R=y.match(/^([^a-z0-9_-])?([a-z0-9_-]+)(.*)/i)){t=R[1],l=R[2],c=R[3];switch(t){case "#":S.id=l;break;case ".":S.classNames.push(l);break;case "":case undefined:S.tagName=l.toUpperCase();break;default:p(y.inspect());}y=c;}if(y.length>0){p(y.inspect());}},buildMatchExpression:function(){var y=this.params,p=[],t;if(y.wildcard){p.push("true");}if(t=y.id){p.push("element.readAttribute(\"id\") == "+t.inspect());}if(t=y.tagName){p.push("element.tagName.toUpperCase() == "+t.inspect());}if((t=y.classNames).length>0){for(var S=0,R=t.length;S<R;S++){p.push("element.hasClassName("+t[S].inspect()+")");}}if(t=y.attributes){t.each(function(Q){var X="element.readAttribute("+Q.name.inspect()+")";var c=function(l){return X+" && "+X+".split("+l.inspect()+")";};switch(Q.operator){case "=":p.push(X+" == "+Q.value.inspect());break;case "~=":p.push(c(" ")+".include("+Q.value.inspect()+")");break;case "|=":p.push(c("-")+".first().toUpperCase() == "+Q.value.toUpperCase().inspect());break;case "!=":p.push(X+" != "+Q.value.inspect());break;case "":case undefined:p.push("element.hasAttribute("+Q.name.inspect()+")");break;default:throw "Unknown operator "+Q.operator+" in selector";}});}return p.join(" && ");},compileMatcher:function(){this.match=new Function("element","if (!element.tagName) return false;       element = $(element);       return "+this.buildMatchExpression());},findElements:function(p){var t;if(t=$(this.params.id)){if(this.match(t)){if(!p||Element.childOf(t,p)){return [t];}}}p=(p||document).getElementsByTagName(this.params.tagName||"*");var R=[];for(var S=0,y=p.length;S<y;S++){if(this.match(t=p[S])){R.push(Element.extend(t));}}return R;},toString:function(){return this.expression;}};Object.extend(Selector,{matchElements:function(y,R){var X=new Selector(R);return y.select(X.match.bind(X)).map(Element.extend);},findElement:function(y,R,X){if(typeof R=="number"){X=R,R=false;}return Selector.matchElements(y,R||"*")[X||0];},findChildElements:function(X,y){return y.map(function(R){return R.match(/[^\s"]+(?:"[^"]*"[^\s"]+)*/g).inject([null],function(S,t){var p=new Selector(t);return S.inject([],function(c,Q){return c.concat(p.findElements(Q||X));});});}).flatten();}});function $$(){return Selector.findChildElements(document,$A(arguments));}var Form={reset:function(y){$(y).reset();return y;},serializeElements:function(R,X){var y=R.inject({},function(c,t){if(!t.disabled&&t.name){var S=t.name,p=$(t).getValue();if(p!=undefined){if(c[S]){if(c[S].constructor!=Array){c[S]=[c[S]];}c[S].push(p);}else{c[S]=p;}}}return c;});return X?y:Hash.toQueryString(y);}};Form.Methods={serialize:function(y,X){return Form.serializeElements(Form.getElements(y),X);},getElements:function(y){return $A($(y).getElementsByTagName("*")).inject([],function(X,R){if(Form.Element.Serializers[R.tagName.toLowerCase()]){X.push(Element.extend(R));}return X;});},getInputs:function(c,r,Q){c=$(c);var p=c.getElementsByTagName("input");if(!r&&!Q){return $A(p).map(Element.extend);}for(var y=0,S=[],t=p.length;y<t;y++){var R=p[y];if((r&&R.type!=r)||(Q&&R.name!=Q)){continue;}S.push(Element.extend(R));}return S;},disable:function(y){y=$(y);y.getElements().each(function(X){X.blur();X.disabled="true";});return y;},enable:function(y){y=$(y);y.getElements().each(function(X){X.disabled="";});return y;},findFirstElement:function(y){return $(y).getElements().find(function(X){return X.type!="hidden"&&!X.disabled&&["input","select","textarea"].include(X.tagName.toLowerCase());});},focusFirstElement:function(y){y=$(y);y.findFirstElement().activate();return y;}};Object.extend(Form,Form.Methods);Form.Element={focus:function(y){$(y).focus();return y;},select:function(y){$(y).select();return y;}};Form.Element.Methods={serialize:function(X){X=$(X);if(!X.disabled&&X.name){var y=X.getValue();if(y!=undefined){var R={};R[X.name]=y;return Hash.toQueryString(R);}}return "";},getValue:function(X){X=$(X);var y=X.tagName.toLowerCase();return Form.Element.Serializers[y](X);},clear:function(y){$(y).value="";return y;},present:function(y){return $(y).value!="";},activate:function(y){y=$(y);y.focus();if(y.select&&(y.tagName.toLowerCase()!="input"||!["button","reset","submit"].include(y.type))){y.select();}return y;},disable:function(y){y=$(y);y.disabled=true;return y;},enable:function(y){y=$(y);y.blur();y.disabled=false;return y;}};Object.extend(Form.Element,Form.Element.Methods);var Field=Form.Element;var $F=Form.Element.getValue;Form.Element.Serializers={input:function(y){switch(y.type.toLowerCase()){case "checkbox":case "radio":return Form.Element.Serializers.inputSelector(y);default:return Form.Element.Serializers.textarea(y);}},inputSelector:function(y){return y.checked?y.value:null;},textarea:function(y){return y.value;},select:function(y){return this[y.type=="select-one"?"selectOne":"selectMany"](y);},selectOne:function(y){var X=y.selectedIndex;return X>=0?this.optionValue(y.options[X]):null;},selectMany:function(p){var S,y=p.length;if(!y){return null;}for(var t=0,S=[];t<y;t++){var R=p.options[t];if(R.selected){S.push(this.optionValue(R));}}return S;},optionValue:function(y){return Element.extend(y).hasAttribute("value")?y.value:y.text;}};Abstract.TimedObserver=function(){};Abstract.TimedObserver.prototype={initialize:function(X,y,R){this.frequency=y;this.element=$(X);this.callback=R;this.lastValue=this.getValue();this.registerCallback();},registerCallback:function(){setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},onTimerEvent:function(){var X=this.getValue();var y=("string"==typeof this.lastValue&&"string"==typeof X?this.lastValue!=X:String(this.lastValue)!=String(X));if(y){this.callback(this.element,X);this.lastValue=X;}}};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(X,y){this.element=$(X);this.callback=y;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=="form"){this.registerFormCallbacks();}else{this.registerCallback(this.element);}},onElementEvent:function(){var y=this.getValue();if(this.lastValue!=y){this.callback(this.element,y);this.lastValue=y;}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback.bind(this));},registerCallback:function(y){if(y.type){switch(y.type.toLowerCase()){case "checkbox":case "radio":Event.observe(y,"click",this.onElementEvent.bind(this));break;default:Event.observe(y,"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(y){return y.target||y.srcElement;},isLeftClick:function(y){return (((y.which)&&(y.which==1))||((y.button)&&(y.button==1)));},pointerX:function(y){return y.pageX||(y.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft));},pointerY:function(y){return y.pageY||(y.clientY+(document.documentElement.scrollTop||document.body.scrollTop));},stop:function(y){if(y.preventDefault){y.preventDefault();y.stopPropagation();}else{y.returnValue=false;y.cancelBubble=true;}},findElement:function(R,y){var X=Event.element(R);while(X.parentNode&&(!X.tagName||(X.tagName.toUpperCase()!=y.toUpperCase()))){X=X.parentNode;}return X;},observers:false,_observeAndCache:function(t,S,y,R){if(!this.observers){this.observers=[];}if(t.addEventListener){this.observers.push([t,S,y,R]);t.addEventListener(S,y,R);}else{if(t.attachEvent){this.observers.push([t,S,y,R]);t.attachEvent("on"+S,y);}}},unloadCache:function(){if(!Event.observers){return ;}for(var X=0,y=Event.observers.length;X<y;X++){Event.stopObserving.apply(this,Event.observers[X]);Event.observers[X][0]=null;}Event.observers=false;},observe:function(t,S,y,R){t=$(t);R=R||false;if(S=="keypress"&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||t.attachEvent)){S="keydown";}Event._observeAndCache(t,S,y,R);},stopObserving:function(y,p,t,R){y=$(y);R=R||false;if(p=="keypress"&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||y.detachEvent)){p="keydown";}if(y.removeEventListener){y.removeEventListener(p,t,R);}else{if(y.detachEvent){try{y.detachEvent("on"+p,t);}catch(S){}}}}});if(navigator.appVersion.match(/\bMSIE\b/)){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(y){var X=0,R=0;do{X+=y.scrollTop||0;R+=y.scrollLeft||0;y=y.parentNode;}while(y);return [R,X];},cumulativeOffset:function(y){var X=0,R=0;do{X+=y.offsetTop||0;R+=y.offsetLeft||0;y=y.offsetParent;}while(y);return [R,X];},positionedOffset:function(y){var R=0,t=0;do{R+=y.offsetTop||0;t+=y.offsetLeft||0;y=y.offsetParent;if(y){if(y.tagName=="BODY"){break;}var S=Element.getStyle(y,"position");if(S=="relative"||S=="absolute"){break;}}}while(y);return [t,R];},offsetParent:function(y){if(y.offsetParent){return y.offsetParent;}if(y==document.body){return y;}while((y=y.parentNode)&&y!=document.body){if(Element.getStyle(y,"position")!="static"){return y;}}return document.body;},within:function(y,X,R){if(this.includeScrollOffsets){return this.withinIncludingScrolloffsets(y,X,R);}this.xcomp=X;this.ycomp=R;this.offset=this.cumulativeOffset(y);return (R>=this.offset[1]&&R<this.offset[1]+y.offsetHeight&&X>=this.offset[0]&&X<this.offset[0]+y.offsetWidth);},withinIncludingScrolloffsets:function(y,R,t){var S=this.realOffset(y);this.xcomp=R+S[0]-this.deltaX;this.ycomp=t+S[1]-this.deltaY;this.offset=this.cumulativeOffset(y);return (this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+y.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+y.offsetWidth);},overlap:function(y,X){if(!y){return 0;}if(y=="vertical"){return ((this.offset[1]+X.offsetHeight)-this.ycomp)/X.offsetHeight;}if(y=="horizontal"){return ((this.offset[0]+X.offsetWidth)-this.xcomp)/X.offsetWidth;}},page:function(t){var R=0,S=0;var y=t;do{R+=y.offsetTop||0;S+=y.offsetLeft||0;if(y.offsetParent==document.body){if(Element.getStyle(y,"position")=="absolute"){break;}}}while(y=y.offsetParent);y=t;do{if(!window.opera||y.tagName=="BODY"){R-=y.scrollTop||0;S-=y.scrollLeft||0;}}while(y=y.parentNode);return [S,R];},clone:function(c,y){var t=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});c=$(c);var p=Position.page(c);y=$(y);var S=[0,0];var R=null;if(Element.getStyle(y,"position")=="absolute"){R=Position.offsetParent(y);S=Position.page(R);}if(R==document.body){S[0]-=document.body.offsetLeft;S[1]-=document.body.offsetTop;}if(t.setLeft){y.style.left=(p[0]-S[0]+t.offsetLeft)+"px";}if(t.setTop){y.style.top=(p[1]-S[1]+t.offsetTop)+"px";}if(t.setWidth){y.style.width=c.offsetWidth+"px";}if(t.setHeight){y.style.height=c.offsetHeight+"px";}},absolutize:function(R){R=$(R);if(R.style.position=="absolute"){return ;}Position.prepare();var c=Position.positionedOffset(R);var S=c[1];var y=c[0];var p=R.clientWidth;var t=R.clientHeight;R._originalLeft=y-parseFloat(R.style.left||0);R._originalTop=S-parseFloat(R.style.top||0);R._originalWidth=R.style.width;R._originalHeight=R.style.height;R.style.position="absolute";R.style.top=S+"px";R.style.left=y+"px";R.style.width=p+"px";R.style.height=t+"px";},relativize:function(X){X=$(X);if(X.style.position=="relative"){return ;}Position.prepare();X.style.position="relative";var R=parseFloat(X.style.top||0)-(X._originalTop||0);var y=parseFloat(X.style.left||0)-(X._originalLeft||0);X.style.top=R+"px";X.style.left=y+"px";X.style.height=X._originalHeight;X.style.width=X._originalWidth;}};if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){Position.cumulativeOffset=function(y){var X=0,R=0;do{X+=y.offsetTop||0;R+=y.offsetLeft||0;if(y.offsetParent==document.body){if(Element.getStyle(y,"position")=="absolute"){break;}}y=y.offsetParent;}while(y);return [R,X];};}Element.addMethods();