var Prototype={Version:"1.6.0",Browser:{IE:!!(window.attachEvent&&!window.opera),Opera:!!window.opera,WebKit:navigator.userAgent.indexOf("AppleWebKit/")>-1,Gecko:navigator.userAgent.indexOf("Gecko")>-1&&navigator.userAgent.indexOf("KHTML")==-1,MobileSafari:!!navigator.userAgent.match(/Apple.*Mobile.*Safari/)},BrowserFeatures:{XPath:!!document.evaluate,ElementExtensions:!!window.HTMLElement,SpecificElementExtensions:document.createElement("div").__proto__&&document.createElement("div").__proto__!==document.createElement("form").__proto__},ScriptFragment:"<script[^>]*>([\\S\\s]*?)<\/script>",JSONFilter:/^\/\*-secure-([\s\S]*)\*\/\s*$/,emptyFunction:function(){},K:function(A){return A;}};if(Prototype.Browser.MobileSafari){Prototype.BrowserFeatures.SpecificElementExtensions=false;}if(Prototype.Browser.WebKit){Prototype.BrowserFeatures.XPath=false;}var Class={create:function(){var E=null,D=$A(arguments);if(Object.isFunction(D[0])){E=D.shift();}function A(){this.initialize.apply(this,arguments);}Object.extend(A,Class.Methods);A.superclass=E;A.subclasses=[];if(E){var B=function(){};B.prototype=E.prototype;A.prototype=new B;E.subclasses.push(A);}for(var C=0;C<D.length;C++){A.addMethods(D[C]);}if(!A.prototype.initialize){A.prototype.initialize=Prototype.emptyFunction;}A.prototype.constructor=A;return A;}};Class.Methods={addMethods:function(G){var C=this.superclass&&this.superclass.prototype;var B=Object.keys(G);if(!Object.keys({toString:true}).length){B.push("toString","valueOf");}for(var A=0,D=B.length;A<D;A++){var F=B[A],E=G[F];if(C&&Object.isFunction(E)&&E.argumentNames().first()=="$super"){var H=E,E=Object.extend((function(I){return function(){return C[I].apply(this,arguments);};})(F).wrap(H),{valueOf:function(){return H;},toString:function(){return H.toString();}});}this.prototype[F]=E;}return this;}};var Abstract={};Object.extend=function(A,C){for(var B in C){A[B]=C[B];}return A;};Object.extend(Object,{inspect:function(A){try{if(A===undefined){return"undefined";}if(A===null){return"null";}return A.inspect?A.inspect():A.toString();}catch(B){if(B instanceof RangeError){return"...";}throw B;}},toJSON:function(A){var C=typeof A;switch(C){case"undefined":case"function":case"unknown":return ;case"boolean":return A.toString();}if(A===null){return"null";}if(A.toJSON){return A.toJSON();}if(Object.isElement(A)){return ;}var B=[];for(var E in A){var D=Object.toJSON(A[E]);if(D!==undefined){B.push(E.toJSON()+": "+D);}}return"{"+B.join(", ")+"}";},toQueryString:function(A){return $H(A).toQueryString();},toHTML:function(A){return A&&A.toHTML?A.toHTML():String.interpret(A);},keys:function(A){var B=[];for(var C in A){B.push(C);}return B;},values:function(B){var A=[];for(var C in B){A.push(B[C]);}return A;},clone:function(A){return Object.extend({},A);},isElement:function(A){return A&&A.nodeType==1;},isArray:function(A){return A&&A.constructor===Array;},isHash:function(A){return A instanceof Hash;},isFunction:function(A){return typeof A=="function";},isString:function(A){return typeof A=="string";},isNumber:function(A){return typeof A=="number";},isUndefined:function(A){return typeof A=="undefined";}});Object.extend(Function.prototype,{argumentNames:function(){var A=this.toString().match(/^[\s\(]*function[^(]*\((.*?)\)/)[1].split(",").invoke("strip");return A.length==1&&!A[0]?[]:A;},bind:function(){if(arguments.length<2&&arguments[0]===undefined){return this;}var A=this,C=$A(arguments),B=C.shift();return function(){return A.apply(B,C.concat($A(arguments)));};},bindAsEventListener:function(){var A=this,C=$A(arguments),B=C.shift();return function(D){return A.apply(B,[D||window.event].concat(C));};},curry:function(){if(!arguments.length){return this;}var A=this,B=$A(arguments);return function(){return A.apply(this,B.concat($A(arguments)));};},delay:function(){var A=this,B=$A(arguments),C=B.shift()*1000;return window.setTimeout(function(){return A.apply(A,B);},C);},wrap:function(B){var A=this;return function(){return B.apply(this,[A.bind(this)].concat($A(arguments)));};},methodize:function(){if(this._methodized){return this._methodized;}var A=this;return this._methodized=function(){return A.apply(null,[this].concat($A(arguments)));};}});Function.prototype.defer=Function.prototype.delay.curry(0.01);Date.prototype.toJSON=function(){return'"'+this.getUTCFullYear()+"-"+(this.getUTCMonth()+1).toPaddedString(2)+"-"+this.getUTCDate().toPaddedString(2)+"T"+this.getUTCHours().toPaddedString(2)+":"+this.getUTCMinutes().toPaddedString(2)+":"+this.getUTCSeconds().toPaddedString(2)+'Z"';};var Try={these:function(){var C;for(var B=0,D=arguments.length;B<D;B++){var A=arguments[B];try{C=A();break;}catch(E){}}return C;}};RegExp.prototype.match=RegExp.prototype.test;RegExp.escape=function(A){return String(A).replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1");};var PeriodicalExecuter=Class.create({initialize:function(B,A){this.callback=B;this.frequency=A;this.currentlyExecuting=false;this.registerCallback();},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},execute:function(){this.callback(this);},stop:function(){if(!this.timer){return ;}clearInterval(this.timer);this.timer=null;},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.execute();}finally{this.currentlyExecuting=false;}}}});Object.extend(String,{interpret:function(A){return A==null?"":String(A);},specialChar:{"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","\\":"\\\\"}});Object.extend(String.prototype,{gsub:function(E,C){var A="",D=this,B;C=arguments.callee.prepareReplacement(C);while(D.length>0){if(B=D.match(E)){A+=D.slice(0,B.index);A+=String.interpret(C(B));D=D.slice(B.index+B[0].length);}else{A+=D,D="";}}return A;},sub:function(C,A,B){A=this.gsub.prepareReplacement(A);B=B===undefined?1:B;return this.gsub(C,function(D){if(--B<0){return D[0];}return A(D);});},scan:function(B,A){this.gsub(B,A);return String(this);},truncate:function(B,A){B=B||30;A=A===undefined?"...":A;return this.length>B?this.slice(0,B-A.length)+A:String(this);},strip:function(){return this.replace(/^\s+/,"").replace(/\s+$/,"");},stripTags:function(){return this.replace(/<\/?[^>]+>/gi,"");},stripScripts:function(){return this.replace(new RegExp(Prototype.ScriptFragment,"img"),"");},extractScripts:function(){var B=new RegExp(Prototype.ScriptFragment,"img");var A=new RegExp(Prototype.ScriptFragment,"im");return(this.match(B)||[]).map(function(C){return(C.match(A)||["",""])[1];});},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script);});},escapeHTML:function(){var A=arguments.callee;A.text.data=this;return A.div.innerHTML;},unescapeHTML:function(){var A=new Element("div");A.innerHTML=this.stripTags();return A.childNodes[0]?(A.childNodes.length>1?$A(A.childNodes).inject("",function(B,C){return B+C.nodeValue;}):A.childNodes[0].nodeValue):"";},toQueryParams:function(B){var A=this.strip().match(/([^?#]*)(#.*)?$/);if(!A){return{};}return A[1].split(B||"&").inject({},function(E,F){if((F=F.split("="))[0]){var C=decodeURIComponent(F.shift());var D=F.length>1?F.join("="):F[0];if(D!=undefined){D=decodeURIComponent(D);}if(C in E){if(!Object.isArray(E[C])){E[C]=[E[C]];}E[C].push(D);}else{E[C]=D;}}return E;});},toArray:function(){return this.split("");},succ:function(){return this.slice(0,this.length-1)+String.fromCharCode(this.charCodeAt(this.length-1)+1);},times:function(A){return A<1?"":new Array(A+1).join(this);},camelize:function(){var D=this.split("-"),A=D.length;if(A==1){return D[0];}var C=this.charAt(0)=="-"?D[0].charAt(0).toUpperCase()+D[0].substring(1):D[0];for(var B=1;B<A;B++){C+=D[B].charAt(0).toUpperCase()+D[B].substring(1);}return C;},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(B){var A=this.gsub(/[\x00-\x1f\\]/,function(C){var D=String.specialChar[C[0]];return D?D:"\\u00"+C[0].charCodeAt().toPaddedString(2,16);});if(B){return'"'+A.replace(/"/g,'\\"')+'"';}return"'"+A.replace(/'/g,"\\'")+"'";},toJSON:function(){return this.inspect(true);},unfilterJSON:function(A){return this.sub(A||Prototype.JSONFilter,"#{1}");},isJSON:function(){var A=this.replace(/\\./g,"@").replace(/"[^"\\\n\r]*"/g,"");return(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(A);},evalJSON:function(sanitize){var json=this.unfilterJSON();try{if(!sanitize||json.isJSON()){return eval("("+json+")");}}catch(e){}throw new SyntaxError("Badly formed JSON string: "+this.inspect());},include:function(A){return this.indexOf(A)>-1;},startsWith:function(A){return this.indexOf(A)===0;},endsWith:function(A){var B=this.length-A.length;return B>=0&&this.lastIndexOf(A)===B;},empty:function(){return this=="";},blank:function(){return/^\s*$/.test(this);},interpolate:function(A,B){return new Template(this,B).evaluate(A);}});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(B){if(Object.isFunction(B)){return B;}var A=new Template(B);return function(C){return A.evaluate(C);};};String.prototype.parseQuery=String.prototype.toQueryParams;Object.extend(String.prototype.escapeHTML,{div:document.createElement("div"),text:document.createTextNode("")});with(String.prototype.escapeHTML){div.appendChild(text);}var Template=Class.create({initialize:function(A,B){this.template=A.toString();this.pattern=B||Template.Pattern;},evaluate:function(A){if(Object.isFunction(A.toTemplateReplacements)){A=A.toTemplateReplacements();}return this.template.gsub(this.pattern,function(D){if(A==null){return"";}var F=D[1]||"";if(F=="\\"){return D[2];}var B=A,G=D[3];var E=/^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/,D=E.exec(G);if(D==null){return F;}while(D!=null){var C=D[1].startsWith("[")?D[2].gsub("\\\\]","]"):D[1];B=B[C];if(null==B||""==D[3]){break;}G=G.substring("["==D[3]?D[1].length:D[0].length);D=E.exec(G);}return F+String.interpret(B);}.bind(this));}});Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;var $break={};var Enumerable={each:function(C,B){var A=0;C=C.bind(B);try{this._each(function(E){C(E,A++);});}catch(D){if(D!=$break){throw D;}}return this;},eachSlice:function(D,C,B){C=C?C.bind(B):Prototype.K;var A=-D,E=[],F=this.toArray();while((A+=D)<F.length){E.push(F.slice(A,A+D));}return E.collect(C,B);},all:function(C,B){C=C?C.bind(B):Prototype.K;var A=true;this.each(function(E,D){A=A&&!!C(E,D);if(!A){throw $break;}});return A;},any:function(C,B){C=C?C.bind(B):Prototype.K;var A=false;this.each(function(E,D){if(A=!!C(E,D)){throw $break;}});return A;},collect:function(C,B){C=C?C.bind(B):Prototype.K;var A=[];this.each(function(E,D){A.push(C(E,D));});return A;},detect:function(C,B){C=C.bind(B);var A;this.each(function(E,D){if(C(E,D)){A=E;throw $break;}});return A;},findAll:function(C,B){C=C.bind(B);var A=[];this.each(function(E,D){if(C(E,D)){A.push(E);}});return A;},grep:function(D,C,B){C=C?C.bind(B):Prototype.K;var A=[];if(Object.isString(D)){D=new RegExp(D);}this.each(function(F,E){if(D.match(F)){A.push(C(F,E));}});return A;},include:function(A){if(Object.isFunction(this.indexOf)){if(this.indexOf(A)!=-1){return true;}}var B=false;this.each(function(C){if(C==A){B=true;throw $break;}});return B;},inGroupsOf:function(B,A){A=A===undefined?null:A;return this.eachSlice(B,function(C){while(C.length<B){C.push(A);}return C;});},inject:function(A,C,B){C=C.bind(B);this.each(function(E,D){A=C(A,E,D);});return A;},invoke:function(B){var A=$A(arguments).slice(1);return this.map(function(C){return C[B].apply(C,A);});},max:function(C,B){C=C?C.bind(B):Prototype.K;var A;this.each(function(E,D){E=C(E,D);if(A==undefined||E>=A){A=E;}});return A;},min:function(C,B){C=C?C.bind(B):Prototype.K;var A;this.each(function(E,D){E=C(E,D);if(A==undefined||E<A){A=E;}});return A;},partition:function(D,B){D=D?D.bind(B):Prototype.K;var C=[],A=[];this.each(function(F,E){(D(F,E)?C:A).push(F);});return[C,A];},pluck:function(B){var A=[];this.each(function(C){A.push(C[B]);});return A;},reject:function(C,B){C=C.bind(B);var A=[];this.each(function(E,D){if(!C(E,D)){A.push(E);}});return A;},sortBy:function(B,A){B=B.bind(A);return this.map(function(D,C){return{value:D,criteria:B(D,C)};}).sort(function(F,E){var D=F.criteria,C=E.criteria;return D<C?-1:D>C?1:0;}).pluck("value");},toArray:function(){return this.map();},zip:function(){var B=Prototype.K,A=$A(arguments);if(Object.isFunction(A.last())){B=A.pop();}var C=[this].concat(A).map($A);return this.map(function(E,D){return B(C.pluck(D));});},size:function(){return this.toArray().length;},inspect:function(){return"#<Enumerable:"+this.toArray().inspect()+">";}};Object.extend(Enumerable,{map:Enumerable.collect,find:Enumerable.detect,select:Enumerable.findAll,filter:Enumerable.findAll,member:Enumerable.include,entries:Enumerable.toArray,every:Enumerable.all,some:Enumerable.any});function $A(C){if(!C){return[];}if(C.toArray){return C.toArray();}var B=C.length,A=new Array(B);while(B--){A[B]=C[B];}return A;}if(Prototype.Browser.WebKit){function $A(C){if(!C){return[];}if(!(Object.isFunction(C)&&C=="[object NodeList]")&&C.toArray){return C.toArray();}var B=C.length,A=new Array(B);while(B--){A[B]=C[B];}return A;}}Array.from=$A;Object.extend(Array.prototype,Enumerable);if(!Array.prototype._reverse){Array.prototype._reverse=Array.prototype.reverse;}Object.extend(Array.prototype,{_each:function(B){for(var A=0,C=this.length;A<C;A++){B(this[A]);}},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(A){return A!=null;});},flatten:function(){return this.inject([],function(B,A){return B.concat(Object.isArray(A)?A.flatten():[A]);});},without:function(){var A=$A(arguments);return this.select(function(B){return !A.include(B);});},reverse:function(A){return(A!==false?this:this.toArray())._reverse();},reduce:function(){return this.length>1?this:this[0];},uniq:function(A){return this.inject([],function(D,C,B){if(0==B||(A?D.last()!=C:!D.include(C))){D.push(C);}return D;});},intersect:function(A){return this.uniq().findAll(function(B){return A.detect(function(C){return B===C;});});},clone:function(){return[].concat(this);},size:function(){return this.length;},inspect:function(){return"["+this.map(Object.inspect).join(", ")+"]";},toJSON:function(){var A=[];this.each(function(B){var C=Object.toJSON(B);if(C!==undefined){A.push(C);}});return"["+A.join(", ")+"]";}});if(Object.isFunction(Array.prototype.forEach)){Array.prototype._each=Array.prototype.forEach;}if(!Array.prototype.indexOf){Array.prototype.indexOf=function(C,A){A||(A=0);var B=this.length;if(A<0){A=B+A;}for(;A<B;A++){if(this[A]===C){return A;}}return -1;};}if(!Array.prototype.lastIndexOf){Array.prototype.lastIndexOf=function(B,A){A=isNaN(A)?this.length:(A<0?this.length+A:A)+1;var C=this.slice(0,A).reverse().indexOf(B);return(C<0)?C:A-C-1;};}Array.prototype.toArray=Array.prototype.clone;function $w(A){if(!Object.isString(A)){return[];}A=A.strip();return A?A.split(/\s+/):[];}if(Prototype.Browser.Opera){Array.prototype.concat=function(){var E=[];for(var B=0,C=this.length;B<C;B++){E.push(this[B]);}for(var B=0,C=arguments.length;B<C;B++){if(Object.isArray(arguments[B])){for(var A=0,D=arguments[B].length;A<D;A++){E.push(arguments[B][A]);}}else{E.push(arguments[B]);}}return E;};}Object.extend(Number.prototype,{toColorPart:function(){return this.toPaddedString(2,16);},succ:function(){return this+1;},times:function(A){$R(0,this,true).each(A);return this;},toPaddedString:function(C,B){var A=this.toString(B||10);return"0".times(C-A.length)+A;},toJSON:function(){return isFinite(this)?this.toString():"null";}});$w("abs round ceil floor").each(function(A){Number.prototype[A]=Math[A].methodize();});function $H(A){return new Hash(A);}var Hash=Class.create(Enumerable,(function(){if(function(){var C=0,E=function(F){this.key=F;};E.prototype.key="foo";for(var D in new E("bar")){C++;}return C>1;}()){function B(E){var C=[];for(var D in this._object){var F=this._object[D];if(C.include(D)){continue;}C.push(D);var G=[D,F];G.key=D;G.value=F;E(G);}}}else{function B(D){for(var C in this._object){var E=this._object[C],F=[C,E];F.key=C;F.value=E;D(F);}}}function A(C,D){if(Object.isUndefined(D)){return C;}return C+"="+encodeURIComponent(String.interpret(D));}return{initialize:function(C){this._object=Object.isHash(C)?C.toObject():Object.clone(C);},_each:B,set:function(C,D){return this._object[C]=D;},get:function(C){return this._object[C];},unset:function(C){var D=this._object[C];delete this._object[C];return D;},toObject:function(){return Object.clone(this._object);},keys:function(){return this.pluck("key");},values:function(){return this.pluck("value");},index:function(D){var C=this.detect(function(E){return E.value===D;});return C&&C.key;},merge:function(C){return this.clone().update(C);},update:function(C){return new Hash(C).inject(this,function(D,E){D.set(E.key,E.value);return D;});},toQueryString:function(){return this.map(function(E){var D=encodeURIComponent(E.key),C=E.value;if(C&&typeof C=="object"){if(Object.isArray(C)){return C.map(A.curry(D)).join("&");}}return A(D,C);}).join("&");},inspect:function(){return"#<Hash:{"+this.map(function(C){return C.map(Object.inspect).join(": ");}).join(", ")+"}>";},toJSON:function(){return Object.toJSON(this.toObject());},clone:function(){return new Hash(this);}};})());Hash.prototype.toTemplateReplacements=Hash.prototype.toObject;Hash.from=$H;var ObjectRange=Class.create(Enumerable,{initialize:function(C,A,B){this.start=C;this.end=A;this.exclusive=B;},_each:function(A){var B=this.start;while(this.include(B)){A(B);B=B.succ();}},include:function(A){if(A<this.start){return false;}if(this.exclusive){return A<this.end;}return A<=this.end;}});var $R=function(C,A,B){return new ObjectRange(C,A,B);};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(A){this.responders._each(A);},register:function(A){if(!this.include(A)){this.responders.push(A);}},unregister:function(A){this.responders=this.responders.without(A);},dispatch:function(D,B,C,A){this.each(function(E){if(Object.isFunction(E[D])){try{E[D].apply(E,[B,C,A]);}catch(F){}}});}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++;},onComplete:function(){Ajax.activeRequestCount--;}});Ajax.Base=Class.create({initialize:function(A){this.options={method:"post",asynchronous:true,contentType:"application/x-www-form-urlencoded",encoding:"UTF-8",parameters:"",evalJSON:true,evalJS:true};Object.extend(this.options,A||{});this.options.method=this.options.method.toLowerCase();if(Object.isString(this.options.parameters)){this.options.parameters=this.options.parameters.toQueryParams();}}});Ajax.Request=Class.create(Ajax.Base,{_complete:false,initialize:function($super,B,A){$super(A);this.transport=Ajax.getTransport();this.request(B);},request:function(B){this.url=B;this.method=this.options.method;var D=Object.clone(this.options.parameters);if(!["get","post"].include(this.method)){D["_method"]=this.method;this.method="post";}this.parameters=D;if(D=Object.toQueryString(D)){if(this.method=="get"){this.url+=(this.url.include("?")?"&":"?")+D;}else{if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){D+="&_=";}}}try{var A=new Ajax.Response(this);if(this.options.onCreate){this.options.onCreate(A);}Ajax.Responders.dispatch("onCreate",this,A);this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);if(this.options.asynchronous){this.respondToReadyState.bind(this).defer(1);}this.transport.onreadystatechange=this.onStateChange.bind(this);this.setRequestHeaders();this.body=this.method=="post"?(this.options.postBody||D):null;this.transport.send(this.body);if(!this.options.asynchronous&&this.transport.overrideMimeType){this.onStateChange();}}catch(C){this.dispatchException(C);}},onStateChange:function(){var A=this.transport.readyState;if(A>1&&!((A==4)&&this._complete)){this.respondToReadyState(this.transport.readyState);}},setRequestHeaders:function(){var E={"X-Requested-With":"XMLHttpRequest","X-Prototype-Version":Prototype.Version,"Accept":"text/javascript, text/html, application/xml, text/xml, */*"};if(this.method=="post"){E["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){E["Connection"]="close";}}if(typeof this.options.requestHeaders=="object"){var C=this.options.requestHeaders;if(Object.isFunction(C.push)){for(var B=0,D=C.length;B<D;B+=2){E[C[B]]=C[B+1];}}else{$H(C).each(function(F){E[F.key]=F.value;});}}for(var A in E){this.transport.setRequestHeader(A,E[A]);}},success:function(){var A=this.getStatus();return !A||(A>=200&&A<300);},getStatus:function(){try{return this.transport.status||0;}catch(A){return 0;}},respondToReadyState:function(A){var C=Ajax.Request.Events[A],B=new Ajax.Response(this);if(C=="Complete"){try{this._complete=true;(this.options["on"+B.status]||this.options["on"+(this.success()?"Success":"Failure")]||Prototype.emptyFunction)(B,B.headerJSON);}catch(D){this.dispatchException(D);}var E=B.getHeader("Content-type");if(this.options.evalJS=="force"||(this.options.evalJS&&E&&E.match(/^\s*(text|application)\/(x-)?(java|ecma)script(;.*)?\s*$/i))){this.evalResponse();}}try{(this.options["on"+C]||Prototype.emptyFunction)(B,B.headerJSON);Ajax.Responders.dispatch("on"+C,this,B,B.headerJSON);}catch(D){this.dispatchException(D);}if(C=="Complete"){this.transport.onreadystatechange=Prototype.emptyFunction;}},getHeader:function(A){try{return this.transport.getResponseHeader(A);}catch(B){return null;}},evalResponse:function(){try{return eval((this.transport.responseText||"").unfilterJSON());}catch(e){this.dispatchException(e);}},dispatchException:function(A){(this.options.onException||Prototype.emptyFunction)(this,A);Ajax.Responders.dispatch("onException",this,A);}});Ajax.Request.Events=["Uninitialized","Loading","Loaded","Interactive","Complete"];Ajax.Response=Class.create({initialize:function(C){this.request=C;var D=this.transport=C.transport,A=this.readyState=D.readyState;if((A>2&&!Prototype.Browser.IE)||A==4){this.status=this.getStatus();this.statusText=this.getStatusText();this.responseText=String.interpret(D.responseText);this.headerJSON=this._getHeaderJSON();}if(A==4){var B=D.responseXML;this.responseXML=B===undefined?null:B;this.responseJSON=this._getResponseJSON();}},status:0,statusText:"",getStatus:Ajax.Request.prototype.getStatus,getStatusText:function(){try{return this.transport.statusText||"";}catch(A){return"";}},getHeader:Ajax.Request.prototype.getHeader,getAllHeaders:function(){try{return this.getAllResponseHeaders();}catch(A){return null;}},getResponseHeader:function(A){return this.transport.getResponseHeader(A);},getAllResponseHeaders:function(){return this.transport.getAllResponseHeaders();},_getHeaderJSON:function(){var A=this.getHeader("X-JSON");if(!A){return null;}A=decodeURIComponent(escape(A));try{return A.evalJSON(this.request.options.sanitizeJSON);}catch(B){this.request.dispatchException(B);}},_getResponseJSON:function(){var A=this.request.options;if(!A.evalJSON||(A.evalJSON!="force"&&!(this.getHeader("Content-type")||"").include("application/json"))){return null;}try{return this.transport.responseText.evalJSON(A.sanitizeJSON);}catch(B){this.request.dispatchException(B);}}});Ajax.Updater=Class.create(Ajax.Request,{initialize:function($super,A,C,B){this.container={success:(A.success||A),failure:(A.failure||(A.success?null:A))};B=B||{};var D=B.onComplete;B.onComplete=(function(E,F){this.updateContent(E.responseText);if(Object.isFunction(D)){D(E,F);}}).bind(this);$super(C,B);},updateContent:function(D){var C=this.container[this.success()?"success":"failure"],A=this.options;if(!A.evalScripts){D=D.stripScripts();}if(C=$(C)){if(A.insertion){if(Object.isString(A.insertion)){var B={};B[A.insertion]=D;C.insert(B);}else{A.insertion(C,D);}}else{C.update(D);}}if(this.success()){if(this.onComplete){this.onComplete.bind(this).defer();}}}});Ajax.PeriodicalUpdater=Class.create(Ajax.Base,{initialize:function($super,A,C,B){$super(B);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=A;this.url=C;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(A){if(this.options.decay){this.decay=(A.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=A.responseText;}this.timer=this.onTimerEvent.bind(this).delay(this.decay*this.frequency);},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options);}});function $(B){if(arguments.length>1){for(var A=0,D=[],C=arguments.length;A<C;A++){D.push($(arguments[A]));}return D;}if(Object.isString(B)){B=document.getElementById(B);}return Element.extend(B);}if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(F,A){var C=[];var E=document.evaluate(F,$(A)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var B=0,D=E.snapshotLength;B<D;B++){C.push(Element.extend(E.snapshotItem(B)));}return C;};}if(!window.Node){var Node={};}if(!Node.ELEMENT_NODE){Object.extend(Node,{ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12});}(function(){var A=this.Element;this.Element=function(D,C){C=C||{};D=D.toLowerCase();var B=Element.cache;if(Prototype.Browser.IE&&C.name){D="<"+D+' name="'+C.name+'">';delete C.name;return Element.writeAttribute(document.createElement(D),C);}if(!B[D]){B[D]=Element.extend(document.createElement(D));}return Element.writeAttribute(B[D].cloneNode(false),C);};Object.extend(this.Element,A||{});}).call(window);Element.cache={};Element.Methods={visible:function(A){return $(A).style.display!="none";},toggle:function(A){A=$(A);Element[Element.visible(A)?"hide":"show"](A);return A;},hide:function(A){$(A).style.display="none";return A;},show:function(A){$(A).style.display="";return A;},remove:function(A){A=$(A);A.parentNode.removeChild(A);return A;},update:function(A,B){A=$(A);if(B&&B.toElement){B=B.toElement();}if(Object.isElement(B)){return A.update().insert(B);}B=Object.toHTML(B);A.innerHTML=B.stripScripts();B.evalScripts.bind(B).defer();return A;},replace:function(B,C){B=$(B);if(C&&C.toElement){C=C.toElement();}else{if(!Object.isElement(C)){C=Object.toHTML(C);var A=B.ownerDocument.createRange();A.selectNode(B);C.evalScripts.bind(C).defer();C=A.createContextualFragment(C.stripScripts());}}B.parentNode.replaceChild(C,B);return B;},insert:function(C,E){C=$(C);if(Object.isString(E)||Object.isNumber(E)||Object.isElement(E)||(E&&(E.toElement||E.toHTML))){E={bottom:E};}var D,B,A;for(position in E){D=E[position];position=position.toLowerCase();B=Element._insertionTranslations[position];if(D&&D.toElement){D=D.toElement();}if(Object.isElement(D)){B.insert(C,D);continue;}D=Object.toHTML(D);A=C.ownerDocument.createRange();B.initializeRange(C,A);B.insert(C,A.createContextualFragment(D.stripScripts()));D.evalScripts.bind(D).defer();}return C;},wrap:function(B,C,A){B=$(B);if(Object.isElement(C)){$(C).writeAttribute(A||{});}else{if(Object.isString(C)){C=new Element(C,A);}else{C=new Element("div",C);}}if(B.parentNode){B.parentNode.replaceChild(C,B);}C.appendChild(B);return C;},inspect:function(B){B=$(B);var A="<"+B.tagName.toLowerCase();$H({"id":"id","className":"class"}).each(function(F){var E=F.first(),C=F.last();var D=(B[E]||"").toString();if(D){A+=" "+C+"="+D.inspect(true);}});return A+">";},recursivelyCollect:function(A,C){A=$(A);var B=[];while(A=A[C]){if(A.nodeType==1){B.push(Element.extend(A));}}return B;},ancestors:function(A){return $(A).recursivelyCollect("parentNode");},descendants:function(A){return $A($(A).getElementsByTagName("*")).each(Element.extend);},firstDescendant:function(A){A=$(A).firstChild;while(A&&A.nodeType!=1){A=A.nextSibling;}return $(A);},immediateDescendants:function(A){if(!(A=$(A).firstChild)){return[];}while(A&&A.nodeType!=1){A=A.nextSibling;}if(A){return[A].concat($(A).nextSiblings());}return[];},previousSiblings:function(A){return $(A).recursivelyCollect("previousSibling");},nextSiblings:function(A){return $(A).recursivelyCollect("nextSibling");},siblings:function(A){A=$(A);return A.previousSiblings().reverse().concat(A.nextSiblings());},match:function(B,A){if(Object.isString(A)){A=new Selector(A);}return A.match($(B));},up:function(B,D,A){B=$(B);if(arguments.length==1){return $(B.parentNode);}var C=B.ancestors();return D?Selector.findElement(C,D,A):C[A||0];},down:function(B,C,A){B=$(B);if(arguments.length==1){return B.firstDescendant();}var D=B.descendants();return C?Selector.findElement(D,C,A):D[A||0];},previous:function(B,D,A){B=$(B);if(arguments.length==1){return $(Selector.handlers.previousElementSibling(B));}var C=B.previousSiblings();return D?Selector.findElement(C,D,A):C[A||0];},next:function(C,D,B){C=$(C);if(arguments.length==1){return $(Selector.handlers.nextElementSibling(C));}var A=C.nextSiblings();return D?Selector.findElement(A,D,B):A[B||0];},select:function(){var A=$A(arguments),B=$(A.shift());return Selector.findChildElements(B,A);},adjacent:function(){var A=$A(arguments),B=$(A.shift());return Selector.findChildElements(B.parentNode,A).without(B);},identify:function(B){B=$(B);var C=B.readAttribute("id"),A=arguments.callee;if(C){return C;}do{C="anonymous_element_"+A.counter++;}while($(C));B.writeAttribute("id",C);return C;},readAttribute:function(C,A){C=$(C);if(Prototype.Browser.IE){var B=Element._attributeTranslations.read;if(B.values[A]){return B.values[A](C,A);}if(B.names[A]){A=B.names[A];}if(A.include(":")){return(!C.attributes||!C.attributes[A])?null:C.attributes[A].value;}}return C.getAttribute(A);},writeAttribute:function(E,C,F){E=$(E);var B={},D=Element._attributeTranslations.write;if(typeof C=="object"){B=C;}else{B[C]=F===undefined?true:F;}for(var A in B){var C=D.names[A]||A,F=B[A];if(D.values[A]){C=D.values[A](E,F);}if(F===false||F===null){E.removeAttribute(C);}else{if(F===true){E.setAttribute(C,C);}else{E.setAttribute(C,F);}}}return E;},getHeight:function(A){return $(A).getDimensions().height;},getWidth:function(A){return $(A).getDimensions().width;},classNames:function(A){return new Element.ClassNames(A);},hasClassName:function(A,B){if(!(A=$(A))){return ;}var C=A.className;return(C.length>0&&(C==B||new RegExp("(^|\\s)"+B+"(\\s|$)").test(C)));},addClassName:function(A,B){if(!(A=$(A))){return ;}if(!A.hasClassName(B)){A.className+=(A.className?" ":"")+B;}return A;},removeClassName:function(A,B){if(!(A=$(A))){return ;}A.className=A.className.replace(new RegExp("(^|\\s+)"+B+"(\\s+|$)")," ").strip();return A;},toggleClassName:function(A,B){if(!(A=$(A))){return ;}return A[A.hasClassName(B)?"removeClassName":"addClassName"](B);},cleanWhitespace:function(B){B=$(B);var C=B.firstChild;while(C){var A=C.nextSibling;if(C.nodeType==3&&!/\S/.test(C.nodeValue)){B.removeChild(C);}C=A;}return B;},empty:function(A){return $(A).innerHTML.blank();},descendantOf:function(D,C){D=$(D),C=$(C);if(D.compareDocumentPosition){return(D.compareDocumentPosition(C)&8)===8;}if(D.sourceIndex&&!Prototype.Browser.Opera){var E=D.sourceIndex,B=C.sourceIndex,A=C.nextSibling;if(!A){do{C=C.parentNode;}while(!(A=C.nextSibling)&&C.parentNode);}if(A){return(E>B&&E<A.sourceIndex);}}while(D=D.parentNode){if(D==C){return true;}}return false;},scrollTo:function(A){A=$(A);var B=A.cumulativeOffset();window.scrollTo(B[0],B[1]);return A;},getStyle:function(B,C){B=$(B);C=C=="float"?"cssFloat":C.camelize();var D=B.style[C];if(!D){var A=document.defaultView.getComputedStyle(B,null);D=A?A[C]:null;}if(C=="opacity"){return D?parseFloat(D):1;}return D=="auto"?null:D;},getOpacity:function(A){return $(A).getStyle("opacity");},setStyle:function(B,C){B=$(B);var E=B.style,A;if(Object.isString(C)){B.style.cssText+=";"+C;return C.include("opacity")?B.setOpacity(C.match(/opacity:\s*(\d?\.?\d*)/)[1]):B;}for(var D in C){if(D=="opacity"){B.setOpacity(C[D]);}else{E[(D=="float"||D=="cssFloat")?(E.styleFloat===undefined?"cssFloat":"styleFloat"):D]=C[D];}}return B;},setOpacity:function(A,B){A=$(A);A.style.opacity=(B==1||B==="")?"":(B<0.00001)?0:B;return A;},getDimensions:function(C){C=$(C);var G=$(C).getStyle("display");if(G!="none"&&G!=null){return{width:C.offsetWidth,height:C.offsetHeight};}var B=C.style;var F=B.visibility;var D=B.position;var A=B.display;B.visibility="hidden";B.position="absolute";B.display="block";var H=C.clientWidth;var E=C.clientHeight;B.display=A;B.position=D;B.visibility=F;return{width:H,height:E};},makePositioned:function(A){A=$(A);var B=Element.getStyle(A,"position");if(B=="static"||!B){A._madePositioned=true;A.style.position="relative";if(window.opera){A.style.top=0;A.style.left=0;}}return A;},undoPositioned:function(A){A=$(A);if(A._madePositioned){A._madePositioned=undefined;A.style.position=A.style.top=A.style.left=A.style.bottom=A.style.right="";}return A;},makeClipping:function(A){A=$(A);if(A._overflow){return A;}A._overflow=Element.getStyle(A,"overflow")||"auto";if(A._overflow!=="hidden"){A.style.overflow="hidden";}return A;},undoClipping:function(A){A=$(A);if(!A._overflow){return A;}A.style.overflow=A._overflow=="auto"?"":A._overflow;A._overflow=null;return A;},cumulativeOffset:function(B){var A=0,C=0;do{A+=B.offsetTop||0;C+=B.offsetLeft||0;B=B.offsetParent;}while(B);return Element._returnOffset(C,A);},positionedOffset:function(B){var A=0,D=0;do{A+=B.offsetTop||0;D+=B.offsetLeft||0;B=B.offsetParent;if(B){if(B.tagName=="BODY"){break;}var C=Element.getStyle(B,"position");if(C=="relative"||C=="absolute"){break;}}}while(B);return Element._returnOffset(D,A);},absolutize:function(B){B=$(B);if(B.getStyle("position")=="absolute"){return ;}var D=B.positionedOffset();var F=D[1];var E=D[0];var C=B.clientWidth;var A=B.clientHeight;B._originalLeft=E-parseFloat(B.style.left||0);B._originalTop=F-parseFloat(B.style.top||0);B._originalWidth=B.style.width;B._originalHeight=B.style.height;B.style.position="absolute";B.style.top=F+"px";B.style.left=E+"px";B.style.width=C+"px";B.style.height=A+"px";return B;},relativize:function(A){A=$(A);if(A.getStyle("position")=="relative"){return ;}A.style.position="relative";var C=parseFloat(A.style.top||0)-(A._originalTop||0);var B=parseFloat(A.style.left||0)-(A._originalLeft||0);A.style.top=C+"px";A.style.left=B+"px";A.style.height=A._originalHeight;A.style.width=A._originalWidth;return A;},cumulativeScrollOffset:function(B){var A=0,C=0;do{A+=B.scrollTop||0;C+=B.scrollLeft||0;B=B.parentNode;}while(B);return Element._returnOffset(C,A);},getOffsetParent:function(A){if(A.offsetParent){return $(A.offsetParent);}if(A==document.body){return $(A);}while((A=A.parentNode)&&A!=document.body){if(Element.getStyle(A,"position")!="static"){return $(A);}}return $(document.body);},viewportOffset:function(D){var A=0,C=0;var B=D;do{A+=B.offsetTop||0;C+=B.offsetLeft||0;if(B.offsetParent==document.body&&Element.getStyle(B,"position")=="absolute"){break;}}while(B=B.offsetParent);B=D;do{if(!Prototype.Browser.Opera||B.tagName=="BODY"){A-=B.scrollTop||0;C-=B.scrollLeft||0;}}while(B=B.parentNode);return Element._returnOffset(C,A);},clonePosition:function(B,D){var A=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});D=$(D);var E=D.viewportOffset();B=$(B);var F=[0,0];var C=null;if(Element.getStyle(B,"position")=="absolute"){C=B.getOffsetParent();F=C.viewportOffset();}if(C==document.body){F[0]-=document.body.offsetLeft;F[1]-=document.body.offsetTop;}if(A.setLeft){B.style.left=(E[0]-F[0]+A.offsetLeft)+"px";}if(A.setTop){B.style.top=(E[1]-F[1]+A.offsetTop)+"px";}if(A.setWidth){B.style.width=D.offsetWidth+"px";}if(A.setHeight){B.style.height=D.offsetHeight+"px";}return B;}};Element.Methods.identify.counter=1;Object.extend(Element.Methods,{getElementsBySelector:Element.Methods.select,childElements:Element.Methods.immediateDescendants});Element._attributeTranslations={write:{names:{className:"class",htmlFor:"for"},values:{}}};if(!document.createRange||Prototype.Browser.Opera){Element.Methods.insert=function(E,G){E=$(E);if(Object.isString(G)||Object.isNumber(G)||Object.isElement(G)||(G&&(G.toElement||G.toHTML))){G={bottom:G};}var D=Element._insertionTranslations,F,B,H,C;for(B in G){F=G[B];B=B.toLowerCase();H=D[B];if(F&&F.toElement){F=F.toElement();}if(Object.isElement(F)){H.insert(E,F);continue;}F=Object.toHTML(F);C=((B=="before"||B=="after")?E.parentNode:E).tagName.toUpperCase();if(D.tags[C]){var A=Element._getContentFromAnonymousElement(C,F.stripScripts());if(B=="top"||B=="after"){A.reverse();}A.each(H.insert.curry(E));}else{E.insertAdjacentHTML(H.adjacency,F.stripScripts());}F.evalScripts.bind(F).defer();}return E;};}if(Prototype.Browser.Opera){Element.Methods._getStyle=Element.Methods.getStyle;Element.Methods.getStyle=function(A,B){switch(B){case"left":case"top":case"right":case"bottom":if(Element._getStyle(A,"position")=="static"){return null;}default:return Element._getStyle(A,B);}};Element.Methods._readAttribute=Element.Methods.readAttribute;Element.Methods.readAttribute=function(A,B){if(B=="title"){return A.title;}return Element._readAttribute(A,B);};}else{if(Prototype.Browser.IE){$w("positionedOffset getOffsetParent viewportOffset").each(function(A){Element.Methods[A]=Element.Methods[A].wrap(function(D,C){C=$(C);var B=C.getStyle("position");if(B!="static"){return D(C);}C.setStyle({position:"relative"});var E=D(C);C.setStyle({position:B});return E;});});Element.Methods.getStyle=function(A,B){A=$(A);B=(B=="float"||B=="cssFloat")?"styleFloat":B.camelize();var C=A.style[B];if(!C&&A.currentStyle){C=A.currentStyle[B];}if(B=="opacity"){if(C=(A.getStyle("filter")||"").match(/alpha\(opacity=(.*)\)/)){if(C[1]){return parseFloat(C[1])/100;}}return 1;}if(C=="auto"){if((B=="width"||B=="height")&&(A.getStyle("display")!="none")){return A["offset"+B.capitalize()]+"px";}return null;}return C;};Element.Methods.setOpacity=function(B,E){function F(G){return G.replace(/alpha\([^\)]*\)/gi,"");}B=$(B);var A=B.currentStyle;if((A&&!A.hasLayout)||(!A&&B.style.zoom=="normal")){B.style.zoom=1;}var D=B.getStyle("filter"),C=B.style;if(E==1||E===""){(D=F(D))?C.filter=D:C.removeAttribute("filter");return B;}else{if(E<0.00001){E=0;}}C.filter=F(D)+"alpha(opacity="+(E*100)+")";return B;};Element._attributeTranslations={read:{names:{"class":"className","for":"htmlFor"},values:{_getAttr:function(A,B){return A.getAttribute(B,2);},_getAttrNode:function(A,C){var B=A.getAttributeNode(C);return B?B.value:"";},_getEv:function(A,B){var B=A.getAttribute(B);return B?B.toString().slice(23,-2):null;},_flag:function(A,B){return $(A).hasAttribute(B)?B:null;},style:function(A){return A.style.cssText.toLowerCase();},title:function(A){return A.title;}}}};Element._attributeTranslations.write={names:Object.clone(Element._attributeTranslations.read.names),values:{checked:function(A,B){A.checked=!!B;},style:function(A,B){A.style.cssText=B?B:"";}}};Element._attributeTranslations.has={};$w("colSpan rowSpan vAlign dateTime accessKey tabIndex encType maxLength readOnly longDesc").each(function(A){Element._attributeTranslations.write.names[A.toLowerCase()]=A;Element._attributeTranslations.has[A.toLowerCase()]=A;});(function(A){Object.extend(A,{href:A._getAttr,src:A._getAttr,type:A._getAttr,action:A._getAttrNode,disabled:A._flag,checked:A._flag,readonly:A._flag,multiple:A._flag,onload:A._getEv,onunload:A._getEv,onclick:A._getEv,ondblclick:A._getEv,onmousedown:A._getEv,onmouseup:A._getEv,onmouseover:A._getEv,onmousemove:A._getEv,onmouseout:A._getEv,onfocus:A._getEv,onblur:A._getEv,onkeypress:A._getEv,onkeydown:A._getEv,onkeyup:A._getEv,onsubmit:A._getEv,onreset:A._getEv,onselect:A._getEv,onchange:A._getEv});})(Element._attributeTranslations.read.values);}else{if(Prototype.Browser.Gecko&&/rv:1\.8\.0/.test(navigator.userAgent)){Element.Methods.setOpacity=function(A,B){A=$(A);A.style.opacity=(B==1)?0.999999:(B==="")?"":(B<0.00001)?0:B;return A;};}else{if(Prototype.Browser.WebKit){Element.Methods.setOpacity=function(A,B){A=$(A);A.style.opacity=(B==1||B==="")?"":(B<0.00001)?0:B;if(B==1){if(A.tagName=="IMG"&&A.width){A.width++;A.width--;}else{try{var D=document.createTextNode(" ");A.appendChild(D);A.removeChild(D);}catch(C){}}}return A;};Element.Methods.cumulativeOffset=function(B){var A=0,C=0;do{A+=B.offsetTop||0;C+=B.offsetLeft||0;if(B.offsetParent==document.body){if(Element.getStyle(B,"position")=="absolute"){break;}}B=B.offsetParent;}while(B);return Element._returnOffset(C,A);};}}}}if(Prototype.Browser.IE||Prototype.Browser.Opera){Element.Methods.update=function(B,C){B=$(B);if(C&&C.toElement){C=C.toElement();}if(Object.isElement(C)){return B.update().insert(C);}C=Object.toHTML(C);var A=B.tagName.toUpperCase();if(A in Element._insertionTranslations.tags){$A(B.childNodes).each(function(D){B.removeChild(D);});Element._getContentFromAnonymousElement(A,C.stripScripts()).each(function(D){B.appendChild(D);});}else{B.innerHTML=C.stripScripts();}C.evalScripts.bind(C).defer();return B;};}if(document.createElement("div").outerHTML){Element.Methods.replace=function(C,E){C=$(C);if(E&&E.toElement){E=E.toElement();}if(Object.isElement(E)){C.parentNode.replaceChild(E,C);return C;}E=Object.toHTML(E);var D=C.parentNode,B=D.tagName.toUpperCase();if(Element._insertionTranslations.tags[B]){var F=C.next();var A=Element._getContentFromAnonymousElement(B,E.stripScripts());D.removeChild(C);if(F){A.each(function(G){D.insertBefore(G,F);});}else{A.each(function(G){D.appendChild(G);});}}else{C.outerHTML=E.stripScripts();}E.evalScripts.bind(E).defer();return C;};}Element._returnOffset=function(B,C){var A=[B,C];A.left=B;A.top=C;return A;};Element._getContentFromAnonymousElement=function(C,B){var D=new Element("div"),A=Element._insertionTranslations.tags[C];D.innerHTML=A[0]+B+A[1];A[2].times(function(){D=D.firstChild;});return $A(D.childNodes);};Element._insertionTranslations={before:{adjacency:"beforeBegin",insert:function(A,B){A.parentNode.insertBefore(B,A);},initializeRange:function(B,A){A.setStartBefore(B);}},top:{adjacency:"afterBegin",insert:function(A,B){A.insertBefore(B,A.firstChild);},initializeRange:function(B,A){A.selectNodeContents(B);A.collapse(true);}},bottom:{adjacency:"beforeEnd",insert:function(A,B){A.appendChild(B);}},after:{adjacency:"afterEnd",insert:function(A,B){A.parentNode.insertBefore(B,A.nextSibling);},initializeRange:function(B,A){A.setStartAfter(B);}},tags:{TABLE:["<table>","</table>",1],TBODY:["<table><tbody>","</tbody></table>",2],TR:["<table><tbody><tr>","</tr></tbody></table>",3],TD:["<table><tbody><tr><td>","</td></tr></tbody></table>",4],SELECT:["<select>","</select>",1]}};(function(){this.bottom.initializeRange=this.top.initializeRange;Object.extend(this.tags,{THEAD:this.tags.TBODY,TFOOT:this.tags.TBODY,TH:this.tags.TD});}).call(Element._insertionTranslations);Element.Methods.Simulated={hasAttribute:function(A,C){C=Element._attributeTranslations.has[C]||C;var B=$(A).getAttributeNode(C);return B&&B.specified;}};Element.Methods.ByTag={};Object.extend(Element,Element.Methods);if(!Prototype.BrowserFeatures.ElementExtensions&&document.createElement("div").__proto__){window.HTMLElement={};window.HTMLElement.prototype=document.createElement("div").__proto__;Prototype.BrowserFeatures.ElementExtensions=true;}Element.extend=(function(){if(Prototype.BrowserFeatures.SpecificElementExtensions){return Prototype.K;}var A={},B=Element.Methods.ByTag;var C=Object.extend(function(F){if(!F||F._extendedByPrototype||F.nodeType!=1||F==window){return F;}var D=Object.clone(A),E=F.tagName,H,G;if(B[E]){Object.extend(D,B[E]);}for(H in D){G=D[H];if(Object.isFunction(G)&&!(H in F)){F[H]=G.methodize();}}F._extendedByPrototype=Prototype.emptyFunction;return F;},{refresh:function(){if(!Prototype.BrowserFeatures.ElementExtensions){Object.extend(A,Element.Methods);Object.extend(A,Element.Methods.Simulated);}}});C.refresh();return C;})();Element.hasAttribute=function(A,B){if(A.hasAttribute){return A.hasAttribute(B);}return Element.Methods.Simulated.hasAttribute(A,B);};Element.addMethods=function(C){var I=Prototype.BrowserFeatures,D=Element.Methods.ByTag;if(!C){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 B=C;C=arguments[1];}if(!B){Object.extend(Element.Methods,C||{});}else{if(Object.isArray(B)){B.each(H);}else{H(B);}}function H(F){F=F.toUpperCase();if(!Element.Methods.ByTag[F]){Element.Methods.ByTag[F]={};}Object.extend(Element.Methods.ByTag[F],C);}function A(L,K,F){F=F||false;for(var N in L){var M=L[N];if(!Object.isFunction(M)){continue;}if(!F||!(N in K)){K[N]=M.methodize();}}}function E(L){var F;var K={"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(K[L]){F="HTML"+K[L]+"Element";}if(window[F]){return window[F];}F="HTML"+L+"Element";if(window[F]){return window[F];}F="HTML"+L.capitalize()+"Element";if(window[F]){return window[F];}window[F]={};window[F].prototype=document.createElement(L).__proto__;return window[F];}if(I.ElementExtensions){A(Element.Methods,HTMLElement.prototype);A(Element.Methods.Simulated,HTMLElement.prototype,true);}if(I.SpecificElementExtensions){for(var J in Element.Methods.ByTag){var G=E(J);if(Object.isUndefined(G)){continue;}A(D[J],G.prototype);}}Object.extend(Element,Element.Methods);delete Element.ByTag;if(Element.extend.refresh){Element.extend.refresh();}Element.cache={};};document.viewport={getDimensions:function(){var A={};$w("width height").each(function(C){var B=C.capitalize();A[C]=self["inner"+B]||(document.documentElement["client"+B]||document.body["client"+B]);});return A;},getWidth:function(){return this.getDimensions().width;},getHeight:function(){return this.getDimensions().height;},getScrollOffsets:function(){return Element._returnOffset(window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft,window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop);}};var Selector=Class.create({initialize:function(A){this.expression=A.strip();this.compileMatcher();},compileMatcher:function(){if(Prototype.BrowserFeatures.XPath&&!(/(\[[\w-]*?:|:checked)/).test(this.expression)){return this.compileXPathMatcher();}var e=this.expression,ps=Selector.patterns,h=Selector.handlers,c=Selector.criteria,le,p,m;if(Selector._cache[e]){this.matcher=Selector._cache[e];return ;}this.matcher=["this.matcher = function(root) {","var r = root, h = Selector.handlers, c = false, n;"];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i in ps){p=ps[i];if(m=e.match(p)){this.matcher.push(Object.isFunction(c[i])?c[i](m):new Template(c[i]).evaluate(m));e=e.replace(m[0],"");break;}}}this.matcher.push("return h.unique(n);\n}");eval(this.matcher.join("\n"));Selector._cache[this.expression]=this.matcher;},compileXPathMatcher:function(){var E=this.expression,F=Selector.patterns,B=Selector.xpath,D,A;if(Selector._cache[E]){this.xpath=Selector._cache[E];return ;}this.matcher=[".//*"];while(E&&D!=E&&(/\S/).test(E)){D=E;for(var C in F){if(A=E.match(F[C])){this.matcher.push(Object.isFunction(B[C])?B[C](A):new Template(B[C]).evaluate(A));E=E.replace(A[0],"");break;}}}this.xpath=this.matcher.join("");Selector._cache[this.expression]=this.xpath;},findElements:function(A){A=A||document;if(this.xpath){return document._getElementsByXPath(this.xpath,A);}return this.matcher(A);},match:function(H){this.tokens=[];var L=this.expression,A=Selector.patterns,E=Selector.assertions;var B,D,F;while(L&&B!==L&&(/\S/).test(L)){B=L;for(var I in A){D=A[I];if(F=L.match(D)){if(E[I]){this.tokens.push([I,Object.clone(F)]);L=L.replace(F[0],"");}else{return this.findElements(document).include(H);}}}}var K=true,C,J;for(var I=0,G;G=this.tokens[I];I++){C=G[0],J=G[1];if(!Selector.assertions[C](H,J)){K=false;break;}}return K;},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(A){if(A[1]=="*"){return"";}return"[local-name()='"+A[1].toLowerCase()+"' or local-name()='"+A[1].toUpperCase()+"']";},className:"[contains(concat(' ', @class, ' '), ' #{1} ')]",id:"[@id='#{1}']",attrPresence:"[@#{1}]",attr:function(A){A[3]=A[5]||A[6];return new Template(Selector.xpath.operators[A[2]]).evaluate(A);},pseudo:function(A){var B=Selector.xpath.pseudos[A[1]];if(!B){return"";}if(Object.isFunction(B)){return B(A);}return new Template(Selector.xpath.pseudos[A[1]]).evaluate(A);},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(B){var H=B[6],G=Selector.patterns,A=Selector.xpath,E,B,C;var F=[];while(H&&E!=H&&(/\S/).test(H)){E=H;for(var D in G){if(B=H.match(G[D])){C=Object.isFunction(A[D])?A[D](B):new Template(A[D]).evaluate(B);F.push("("+C.substring(1,C.length-1)+")");H=H.replace(B[0],"");break;}}}return"[not("+F.join(" and ")+")]";},"nth-child":function(A){return Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ",A);},"nth-last-child":function(A){return Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ",A);},"nth-of-type":function(A){return Selector.xpath.pseudos.nth("position() ",A);},"nth-last-of-type":function(A){return Selector.xpath.pseudos.nth("(last() + 1 - position()) ",A);},"first-of-type":function(A){A[6]="1";return Selector.xpath.pseudos["nth-of-type"](A);},"last-of-type":function(A){A[6]="1";return Selector.xpath.pseudos["nth-last-of-type"](A);},"only-of-type":function(A){var B=Selector.xpath.pseudos;return B["first-of-type"](A)+B["last-of-type"](A);},nth:function(E,C){var F,G=C[6],B;if(G=="even"){G="2n+0";}if(G=="odd"){G="2n+1";}if(F=G.match(/^(\d+)$/)){return"["+E+"= "+F[1]+"]";}if(F=G.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(F[1]=="-"){F[1]=-1;}var D=F[1]?Number(F[1]):1;var A=F[2]?Number(F[2]):0;B="[((#{fragment} - #{b}) mod #{a} = 0) and ((#{fragment} - #{b}) div #{a} >= 0)]";return new Template(B).evaluate({fragment:E,a:D,b:A});}}}},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(A){A[3]=(A[5]||A[6]);return new Template('n = h.attr(n, r, "#{1}", "#{3}", "#{2}"); c = false;').evaluate(A);},pseudo:function(A){if(A[6]){A[6]=A[6].replace(/"/g,'\\"');}return new Template('n = h.pseudo(n, "#{1}", "#{6}", r, c); c = false;').evaluate(A);},descendant:'c = "descendant";',child:'c = "child";',adjacent:'c = "adjacent";',laterSibling:'c = "laterSibling";'},patterns:{laterSibling:/^\s*~\s*/,child:/^\s*>\s*/,adjacent:/^\s*\+\s*/,descendant:/^\s/,tagName:/^\s*(\*|[\w\-]+)(\b|$)?/,id:/^#([\w\-\*]+)(\b|$)/,className:/^\.([\w\-\*]+)(\b|$)/,pseudo:/^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis)abled|not)(\((.*?)\))?(\b|$|(?=\s)|(?=:))/,attrPresence:/^\[([\w]+)\]/,attr:/\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=)\s*((['"])([^\4]*?)\4|([^'"][^\]]*?)))?\]/},assertions:{tagName:function(A,B){return B[1].toUpperCase()==A.tagName.toUpperCase();},className:function(A,B){return Element.hasClassName(A,B[1]);},id:function(A,B){return A.id===B[1];},attrPresence:function(A,B){return Element.hasAttribute(A,B[1]);},attr:function(B,C){var A=Element.readAttribute(B,C[1]);return Selector.operators[C[2]](A,C[3]);}},handlers:{concat:function(B,A){for(var C=0,D;D=A[C];C++){B.push(D);}return B;},mark:function(A){for(var B=0,C;C=A[B];B++){C._counted=true;}return A;},unmark:function(A){for(var B=0,C;C=A[B];B++){C._counted=undefined;}return A;},index:function(A,D,G){A._counted=true;if(D){for(var B=A.childNodes,E=B.length-1,C=1;E>=0;E--){var F=B[E];if(F.nodeType==1&&(!G||F._counted)){F.nodeIndex=C++;}}}else{for(var E=0,C=1,B=A.childNodes;F=B[E];E++){if(F.nodeType==1&&(!G||F._counted)){F.nodeIndex=C++;}}}},unique:function(B){if(B.length==0){return B;}var D=[],E;for(var C=0,A=B.length;C<A;C++){if(!(E=B[C])._counted){E._counted=true;D.push(Element.extend(E));}}return Selector.handlers.unmark(D);},descendant:function(A){var D=Selector.handlers;for(var C=0,B=[],E;E=A[C];C++){D.concat(B,E.getElementsByTagName("*"));}return B;},child:function(A){var F=Selector.handlers;for(var E=0,D=[],G;G=A[E];E++){for(var B=0,C=[],H;H=G.childNodes[B];B++){if(H.nodeType==1&&H.tagName!="!"){D.push(H);}}}return D;},adjacent:function(A){for(var C=0,B=[],E;E=A[C];C++){var D=this.nextElementSibling(E);if(D){B.push(D);}}return B;},laterSibling:function(A){var D=Selector.handlers;for(var C=0,B=[],E;E=A[C];C++){D.concat(B,Element.nextSiblings(E));}return B;},nextElementSibling:function(A){while(A=A.nextSibling){if(A.nodeType==1){return A;}}return null;},previousElementSibling:function(A){while(A=A.previousSibling){if(A.nodeType==1){return A;}}return null;},tagName:function(B,A,E,H){E=E.toUpperCase();var D=[],F=Selector.handlers;if(B){if(H){if(H=="descendant"){for(var C=0,G;G=B[C];C++){F.concat(D,G.getElementsByTagName(E));}return D;}else{B=this[H](B);}if(E=="*"){return B;}}for(var C=0,G;G=B[C];C++){if(G.tagName.toUpperCase()==E){D.push(G);}}return D;}else{return A.getElementsByTagName(E);}},id:function(B,A,H,F){var G=$(H),D=Selector.handlers;if(!G){return[];}if(!B&&A==document){return[G];}if(B){if(F){if(F=="child"){for(var C=0,E;E=B[C];C++){if(G.parentNode==E){return[G];}}}else{if(F=="descendant"){for(var C=0,E;E=B[C];C++){if(Element.descendantOf(G,E)){return[G];}}}else{if(F=="adjacent"){for(var C=0,E;E=B[C];C++){if(Selector.handlers.previousElementSibling(G)==E){return[G];}}}else{B=D[F](B);}}}}for(var C=0,E;E=B[C];C++){if(E==G){return[G];}}return[];}return(G&&Element.descendantOf(G,A))?[G]:[];},className:function(B,A,C,D){if(B&&D){B=this[D](B);}return Selector.handlers.byClassName(B,A,C);},byClassName:function(C,B,F){if(!C){C=Selector.handlers.descendant([B]);}var H=" "+F+" ";for(var E=0,D=[],G,A;G=C[E];E++){A=G.className;if(A.length==0){continue;}if(A==F||(" "+A+" ").include(H)){D.push(G);}}return D;},attrPresence:function(C,B,A){if(!C){C=B.getElementsByTagName("*");}var E=[];for(var D=0,F;F=C[D];D++){if(Element.hasAttribute(F,A)){E.push(F);}}return E;},attr:function(A,H,G,I,B){if(!A){A=H.getElementsByTagName("*");}var J=Selector.operators[B],D=[];for(var E=0,C;C=A[E];E++){var F=Element.readAttribute(C,G);if(F===null){continue;}if(J(F,I)){D.push(C);}}return D;},pseudo:function(B,C,E,A,D){if(B&&D){B=this[D](B);}if(!B){B=A.getElementsByTagName("*");}return Selector.pseudos[C](B,E,A);}},pseudos:{"first-child":function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(Selector.handlers.previousElementSibling(E)){continue;}C.push(E);}return C;},"last-child":function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(Selector.handlers.nextElementSibling(E)){continue;}C.push(E);}return C;},"only-child":function(B,G,A){var E=Selector.handlers;for(var D=0,C=[],F;F=B[D];D++){if(!E.previousElementSibling(F)&&!E.nextElementSibling(F)){C.push(F);}}return C;},"nth-child":function(B,C,A){return Selector.pseudos.nth(B,C,A);},"nth-last-child":function(B,C,A){return Selector.pseudos.nth(B,C,A,true);},"nth-of-type":function(B,C,A){return Selector.pseudos.nth(B,C,A,false,true);},"nth-last-of-type":function(B,C,A){return Selector.pseudos.nth(B,C,A,true,true);},"first-of-type":function(B,C,A){return Selector.pseudos.nth(B,"1",A,false,true);},"last-of-type":function(B,C,A){return Selector.pseudos.nth(B,"1",A,true,true);},"only-of-type":function(B,D,A){var C=Selector.pseudos;return C["last-of-type"](C["first-of-type"](B,D,A),D,A);},getIndices:function(B,A,C){if(B==0){return A>0?[A]:[];}return $R(1,C).inject([],function(D,E){if(0==(E-A)%B&&(E-A)/B>=0){D.push(E);}return D;});},nth:function(A,L,N,K,C){if(A.length==0){return[];}if(L=="even"){L="2n+0";}if(L=="odd"){L="2n+1";}var J=Selector.handlers,I=[],B=[],E;J.mark(A);for(var H=0,D;D=A[H];H++){if(!D.parentNode._counted){J.index(D.parentNode,K,C);B.push(D.parentNode);}}if(L.match(/^\d+$/)){L=Number(L);for(var H=0,D;D=A[H];H++){if(D.nodeIndex==L){I.push(D);}}}else{if(E=L.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(E[1]=="-"){E[1]=-1;}var O=E[1]?Number(E[1]):1;var M=E[2]?Number(E[2]):0;var P=Selector.pseudos.getIndices(O,M,A.length);for(var H=0,D,F=P.length;D=A[H];H++){for(var G=0;G<F;G++){if(D.nodeIndex==P[G]){I.push(D);}}}}}J.unmark(A);J.unmark(B);return I;},"empty":function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(E.tagName=="!"||(E.firstChild&&!E.innerHTML.match(/^\s*$/))){continue;}C.push(E);}return C;},"not":function(A,D,I){var G=Selector.handlers,J,C;var H=new Selector(D).findElements(I);G.mark(H);for(var F=0,E=[],B;B=A[F];F++){if(!B._counted){E.push(B);}}G.unmark(H);return E;},"enabled":function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(!E.disabled){C.push(E);}}return C;},"disabled":function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(E.disabled){C.push(E);}}return C;},"checked":function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(E.checked){C.push(E);}}return C;}},operators:{"=":function(B,A){return B==A;},"!=":function(B,A){return B!=A;},"^=":function(B,A){return B.startsWith(A);},"$=":function(B,A){return B.endsWith(A);},"*=":function(B,A){return B.include(A);},"~=":function(B,A){return(" "+B+" ").include(" "+A+" ");},"|=":function(B,A){return("-"+B.toUpperCase()+"-").include("-"+A.toUpperCase()+"-");}},matchElements:function(F,G){var E=new Selector(G).findElements(),D=Selector.handlers;D.mark(E);for(var C=0,B=[],A;A=F[C];C++){if(A._counted){B.push(A);}}D.unmark(E);return B;},findElement:function(B,C,A){if(Object.isNumber(C)){A=C;C=false;}return Selector.matchElements(B,C||"*")[A||0];},findChildElements:function(E,G){var H=G.join(","),G=[];H.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/,function(I){G.push(I[1].strip());});var D=[],F=Selector.handlers;for(var C=0,B=G.length,A;C<B;C++){A=new Selector(G[C].strip());F.concat(D,A.findElements(E));}return(B>1)?F.unique(D):D;}});function $$(){return Selector.findChildElements(document,$A(arguments));}var Form={reset:function(A){$(A).reset();return A;},serializeElements:function(G,B){if(typeof B!="object"){B={hash:!!B};}else{if(B.hash===undefined){B.hash=true;}}var C,F,A=false,E=B.submit;var D=G.inject({},function(H,I){if(!I.disabled&&I.name){C=I.name;F=$(I).getValue();if(F!=null&&(I.type!="submit"||(!A&&E!==false&&(!E||C==E)&&(A=true)))){if(C in H){if(!Object.isArray(H[C])){H[C]=[H[C]];}H[C].push(F);}else{H[C]=F;}}}return H;});return B.hash?D:Object.toQueryString(D);}};Form.Methods={serialize:function(B,A){return Form.serializeElements(Form.getElements(B),A);},getElements:function(A){return $A($(A).getElementsByTagName("*")).inject([],function(B,C){if(Form.Element.Serializers[C.tagName.toLowerCase()]){B.push(Element.extend(C));}return B;});},getInputs:function(G,C,D){G=$(G);var A=G.getElementsByTagName("input");if(!C&&!D){return $A(A).map(Element.extend);}for(var E=0,H=[],F=A.length;E<F;E++){var B=A[E];if((C&&B.type!=C)||(D&&B.name!=D)){continue;}H.push(Element.extend(B));}return H;},disable:function(A){A=$(A);Form.getElements(A).invoke("disable");return A;},enable:function(A){A=$(A);Form.getElements(A).invoke("enable");return A;},findFirstElement:function(B){var C=$(B).getElements().findAll(function(D){return"hidden"!=D.type&&!D.disabled;});var A=C.findAll(function(D){return D.hasAttribute("tabIndex")&&D.tabIndex>=0;}).sortBy(function(D){return D.tabIndex;}).first();return A?A:C.find(function(D){return["input","select","textarea"].include(D.tagName.toLowerCase());});},focusFirstElement:function(A){A=$(A);A.findFirstElement().activate();return A;},request:function(B,A){B=$(B),A=Object.clone(A||{});var D=A.parameters,C=B.readAttribute("action")||"";if(C.blank()){C=window.location.href;}A.parameters=B.serialize(true);if(D){if(Object.isString(D)){D=D.toQueryParams();}Object.extend(A.parameters,D);}if(B.hasAttribute("method")&&!A.method){A.method=B.method;}return new Ajax.Request(C,A);}};Form.Element={focus:function(A){$(A).focus();return A;},select:function(A){$(A).select();return A;}};Form.Element.Methods={serialize:function(A){A=$(A);if(!A.disabled&&A.name){var B=A.getValue();if(B!=undefined){var C={};C[A.name]=B;return Object.toQueryString(C);}}return"";},getValue:function(A){A=$(A);var B=A.tagName.toLowerCase();return Form.Element.Serializers[B](A);},setValue:function(A,B){A=$(A);var C=A.tagName.toLowerCase();Form.Element.Serializers[C](A,B);return A;},clear:function(A){$(A).value="";return A;},present:function(A){return $(A).value!="";},activate:function(A){A=$(A);try{A.focus();if(A.select&&(A.tagName.toLowerCase()!="input"||!["button","reset","submit"].include(A.type))){A.select();}}catch(B){}return A;},disable:function(A){A=$(A);A.blur();A.disabled=true;return A;},enable:function(A){A=$(A);A.disabled=false;return A;}};var Field=Form.Element;var $F=Form.Element.Methods.getValue;Form.Element.Serializers={input:function(A,B){switch(A.type.toLowerCase()){case"checkbox":case"radio":return Form.Element.Serializers.inputSelector(A,B);default:return Form.Element.Serializers.textarea(A,B);}},inputSelector:function(A,B){if(B===undefined){return A.checked?A.value:null;}else{A.checked=!!B;}},textarea:function(A,B){if(B===undefined){return A.value;}else{A.value=B;}},select:function(D,A){if(A===undefined){return this[D.type=="select-one"?"selectOne":"selectMany"](D);}else{var C,F,G=!Object.isArray(A);for(var B=0,E=D.length;B<E;B++){C=D.options[B];F=this.optionValue(C);if(G){if(F==A){C.selected=true;return ;}}else{C.selected=A.include(F);}}}},selectOne:function(B){var A=B.selectedIndex;return A>=0?this.optionValue(B.options[A]):null;},selectMany:function(D){var A,E=D.length;if(!E){return null;}for(var C=0,A=[];C<E;C++){var B=D.options[C];if(B.selected){A.push(this.optionValue(B));}}return A;},optionValue:function(A){return Element.extend(A).hasAttribute("value")?A.value:A.text;}};Abstract.TimedObserver=Class.create(PeriodicalExecuter,{initialize:function($super,A,B,C){$super(C,B);this.element=$(A);this.lastValue=this.getValue();},execute:function(){var A=this.getValue();if(Object.isString(this.lastValue)&&Object.isString(A)?this.lastValue!=A:String(this.lastValue)!=String(A)){this.callback(this.element,A);this.lastValue=A;}}});Form.Element.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.serialize(this.element);}});Abstract.EventObserver=Class.create({initialize:function(A,B){this.element=$(A);this.callback=B;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=="form"){this.registerFormCallbacks();}else{this.registerCallback(this.element);}},onElementEvent:function(){var A=this.getValue();if(this.lastValue!=A){this.callback(this.element,A);this.lastValue=A;}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback,this);},registerCallback:function(A){if(A.type){switch(A.type.toLowerCase()){case"checkbox":case"radio":Event.observe(A,"click",this.onElementEvent.bind(this));break;default:Event.observe(A,"change",this.onElementEvent.bind(this));break;}}}});Form.Element.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.serialize(this.element);}});if(!window.Event){var Event={};}Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,KEY_INSERT:45,cache:{},relatedTarget:function(B){var A;switch(B.type){case"mouseover":A=B.fromElement;break;case"mouseout":A=B.toElement;break;default:return null;}return Element.extend(A);}});Event.Methods=(function(){var A;if(Prototype.Browser.IE){var B={0:1,1:4,2:2};A=function(D,C){return D.button==B[C];};}else{if(Prototype.Browser.WebKit){A=function(D,C){switch(C){case 0:return D.which==1&&!D.metaKey;case 1:return D.which==1&&D.metaKey;default:return false;}};}else{A=function(D,C){return D.which?(D.which===C+1):(D.button===C);};}}return{isLeftClick:function(C){return A(C,0);},isMiddleClick:function(C){return A(C,1);},isRightClick:function(C){return A(C,2);},element:function(D){var C=Event.extend(D).target;return Element.extend(C.nodeType==Node.TEXT_NODE?C.parentNode:C);},findElement:function(D,E){var C=Event.element(D);return C.match(E)?C:C.up(E);},pointer:function(C){return{x:C.pageX||(C.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)),y:C.pageY||(C.clientY+(document.documentElement.scrollTop||document.body.scrollTop))};},pointerX:function(C){return Event.pointer(C).x;},pointerY:function(C){return Event.pointer(C).y;},stop:function(C){Event.extend(C);C.preventDefault();C.stopPropagation();C.stopped=true;}};})();Event.extend=(function(){var A=Object.keys(Event.Methods).inject({},function(B,C){B[C]=Event.Methods[C].methodize();return B;});if(Prototype.Browser.IE){Object.extend(A,{stopPropagation:function(){this.cancelBubble=true;},preventDefault:function(){this.returnValue=false;},inspect:function(){return"[object Event]";}});return function(B){if(!B){return false;}if(B._extendedByPrototype){return B;}B._extendedByPrototype=Prototype.emptyFunction;var C=Event.pointer(B);Object.extend(B,{target:B.srcElement,relatedTarget:Event.relatedTarget(B),pageX:C.x,pageY:C.y});return Object.extend(B,A);};}else{Event.prototype=Event.prototype||document.createEvent("HTMLEvents").__proto__;Object.extend(Event.prototype,A);return Prototype.K;}})();Object.extend(Event,(function(){var B=Event.cache;function C(J){if(J._eventID){return J._eventID;}arguments.callee.id=arguments.callee.id||1;return J._eventID=++arguments.callee.id;}function G(J){if(J&&J.include(":")){return"dataavailable";}return J;}function A(J){return B[J]=B[J]||{};}function F(L,J){var K=A(L);return K[J]=K[J]||[];}function H(K,J,L){var O=C(K);var N=F(O,J);if(N.pluck("handler").include(L)){return false;}var M=function(P){if(!Event||!Event.extend||(P.eventName&&P.eventName!=J)){return false;}Event.extend(P);L.call(K,P);};M.handler=L;N.push(M);return M;}function I(M,J,K){var L=F(M,J);return L.find(function(N){return N.handler==K;});}function D(M,J,K){var L=A(M);if(!L[J]){return false;}L[J]=L[J].without(I(M,J,K));}function E(){for(var K in B){for(var J in B[K]){B[K][J]=null;}}}if(window.attachEvent){window.attachEvent("onunload",E);}return{observe:function(L,J,M){L=$(L);var K=G(J);var N=H(L,J,M);if(!N){return L;}if(L.addEventListener){L.addEventListener(K,N,false);}else{L.attachEvent("on"+K,N);}return L;},stopObserving:function(L,J,M){L=$(L);var O=C(L),K=G(J);if(!M&&J){F(O,J).each(function(P){L.stopObserving(J,P.handler);});return L;}else{if(!J){Object.keys(A(O)).each(function(P){L.stopObserving(P);});return L;}}var N=I(O,J,M);if(!N){return L;}if(L.removeEventListener){L.removeEventListener(K,N,false);}else{L.detachEvent("on"+K,N);}D(O,J,M);return L;},fire:function(L,K,J){L=$(L);if(L==document&&document.createEvent&&!L.dispatchEvent){L=document.documentElement;}if(document.createEvent){var M=document.createEvent("HTMLEvents");M.initEvent("dataavailable",true,true);}else{var M=document.createEventObject();M.eventType="ondataavailable";}M.eventName=K;M.memo=J||{};if(document.createEvent){L.dispatchEvent(M);}else{L.fireEvent(M.eventType,M);}return M;}};})());Object.extend(Event,Event.Methods);Element.addMethods({fire:Event.fire,observe:Event.observe,stopObserving:Event.stopObserving});Object.extend(document,{fire:Element.Methods.fire.methodize(),observe:Element.Methods.observe.methodize(),stopObserving:Element.Methods.stopObserving.methodize()});(function(){var C,B=false;function A(){if(B){return ;}if(C){window.clearInterval(C);}document.fire("dom:loaded");B=true;}if(document.addEventListener){if(Prototype.Browser.WebKit){C=window.setInterval(function(){if(/loaded|complete/.test(document.readyState)){A();}},0);Event.observe(window,"load",A);}else{document.addEventListener("DOMContentLoaded",A,false);}}else{if(!(document.readyState=="complete" || document.readyState=="interactive")){document.write("<script id=__onDOMContentLoaded defer src=//:><\/script>");$("__onDOMContentLoaded").onreadystatechange=function(){if(this.readyState=="complete"){this.onreadystatechange=null;A();}};}}})();Hash.toQueryString=Object.toQueryString;var Toggle={display:Element.toggle};Element.Methods.childOf=Element.Methods.descendantOf;var Insertion={Before:function(A,B){return Element.insert(A,{before:B});},Top:function(A,B){return Element.insert(A,{top:B});},Bottom:function(A,B){return Element.insert(A,{bottom:B});},After:function(A,B){return Element.insert(A,{after:B});}};var $continue=new Error('"throw $continue" is deprecated, use "return" instead');var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;},within:function(B,A,C){if(this.includeScrollOffsets){return this.withinIncludingScrolloffsets(B,A,C);}this.xcomp=A;this.ycomp=C;this.offset=Element.cumulativeOffset(B);return(C>=this.offset[1]&&C<this.offset[1]+B.offsetHeight&&A>=this.offset[0]&&A<this.offset[0]+B.offsetWidth);},withinIncludingScrolloffsets:function(B,A,D){var C=Element.cumulativeScrollOffset(B);this.xcomp=A+C[0]-this.deltaX;this.ycomp=D+C[1]-this.deltaY;this.offset=Element.cumulativeOffset(B);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+B.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+B.offsetWidth);},overlap:function(B,A){if(!B){return 0;}if(B=="vertical"){return((this.offset[1]+A.offsetHeight)-this.ycomp)/A.offsetHeight;}if(B=="horizontal"){return((this.offset[0]+A.offsetWidth)-this.xcomp)/A.offsetWidth;}},cumulativeOffset:Element.Methods.cumulativeOffset,positionedOffset:Element.Methods.positionedOffset,absolutize:function(A){Position.prepare();return Element.absolutize(A);},relativize:function(A){Position.prepare();return Element.relativize(A);},realOffset:Element.Methods.cumulativeScrollOffset,offsetParent:Element.Methods.getOffsetParent,page:Element.Methods.viewportOffset,clone:function(B,C,A){A=A||{};return Element.clonePosition(C,B,A);}};if(!document.getElementsByClassName){document.getElementsByClassName=function(B){function A(C){return C.blank()?null:"[contains(concat(' ', @class, ' '), ' "+C+" ')]";}B.getElementsByClassName=Prototype.BrowserFeatures.XPath?function(C,E){E=E.toString().strip();var D=/\s/.test(E)?$w(E).map(A).join(""):A(E);return D?document._getElementsByXPath(".//*"+D,C):[];}:function(E,F){F=F.toString().strip();var G=[],H=(/\s/.test(F)?$w(F):null);if(!H&&!F){return G;}var C=$(E).getElementsByTagName("*");F=" "+F+" ";for(var D=0,J,I;J=C[D];D++){if(J.className&&(I=" "+J.className+" ")&&(I.include(F)||(H&&H.all(function(K){return !K.toString().blank()&&I.include(" "+K+" ");})))){G.push(Element.extend(J));}}return G;};return function(D,C){return $(C||document.body).getElementsByClassName(D);};}(Element.Methods);}Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(A){this.element=$(A);},_each:function(A){this.element.className.split(/\s+/).select(function(B){return B.length>0;})._each(A);},set:function(A){this.element.className=A;},add:function(A){if(this.include(A)){return ;}this.set($A(this).concat(A).join(" "));},remove:function(A){if(!this.include(A)){return ;}this.set($A(this).without(A).join(" "));},toString:function(){return $A(this).join(" ");}};Object.extend(Element.ClassNames.prototype,Enumerable);Element.addMethods();


var Builder={NODEMAP:{AREA:"map",CAPTION:"table",COL:"table",COLGROUP:"table",LEGEND:"fieldset",OPTGROUP:"select",OPTION:"select",PARAM:"object",TBODY:"table",TD:"table",TFOOT:"table",TH:"table",THEAD:"table",TR:"table"},node:function(A){A=A.toUpperCase();
var F=this.NODEMAP[A]||"div";
var B=document.createElement(F);
try{B.innerHTML="<"+A+"></"+A+">";
}catch(E){}var D=B.firstChild||null;
if(D&&(D.tagName.toUpperCase()!=A)){D=D.getElementsByTagName(A)[0];
}if(!D){D=document.createElement(A);
}if(!D){return ;
}if(arguments[1]){if(this._isStringOrNumber(arguments[1])||(arguments[1] instanceof Array)||arguments[1].tagName){this._children(D,arguments[1]);
}else{var C=this._attributes(arguments[1]);
if(C.length){try{B.innerHTML="<"+A+" "+C+"></"+A+">";
}catch(E){}D=B.firstChild||null;
if(!D){D=document.createElement(A);
for(attr in arguments[1]){D[attr=="class"?"className":attr]=arguments[1][attr];
}}if(D.tagName.toUpperCase()!=A){D=B.getElementsByTagName(A)[0];
}}}}if(arguments[2]){this._children(D,arguments[2]);
}return D;
},_text:function(A){return document.createTextNode(A);
},ATTR_MAP:{"className":"class","htmlFor":"for"},_attributes:function(A){var B=[];
for(attribute in A){B.push((attribute in this.ATTR_MAP?this.ATTR_MAP[attribute]:attribute)+'="'+A[attribute].toString().escapeHTML().gsub(/"/,"&quot;")+'"');
}return B.join(" ");
},_children:function(B,A){if(A.tagName){B.appendChild(A);
return ;
}if(typeof A=="object"){A.flatten().each(function(C){if(typeof C=="object"){B.appendChild(C);
}else{if(Builder._isStringOrNumber(C)){B.appendChild(Builder._text(C));
}}});
}else{if(Builder._isStringOrNumber(A)){B.appendChild(Builder._text(A));
}}},_isStringOrNumber:function(A){return(typeof A=="string"||typeof A=="number");
},build:function(B){var A=this.node("div");
$(A).update(B.strip());
return A.down();
},dump:function(B){if(typeof B!="object"&&typeof B!="function"){B=window;
}var A=("A ABBR ACRONYM ADDRESS APPLET AREA B BASE BASEFONT BDO BIG BLOCKQUOTE BODY "+"BR BUTTON CAPTION CENTER CITE CODE COL COLGROUP DD DEL DFN DIR DIV DL DT EM FIELDSET "+"FONT FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HR HTML I IFRAME IMG INPUT INS ISINDEX "+"KBD LABEL LEGEND LI LINK MAP MENU META NOFRAMES NOSCRIPT OBJECT OL OPTGROUP OPTION P "+"PARAM PRE Q S SAMP SCRIPT SELECT SMALL SPAN STRIKE STRONG STYLE SUB SUP TABLE TBODY TD "+"TEXTAREA TFOOT TH THEAD TITLE TR TT U UL VAR").split(/\s+/);
A.each(function(C){B[C]=function(){return Builder.node.apply(Builder,[C].concat($A(arguments)));
};
});
}};


String.prototype.parseColor=function(){var A="#";
if(this.slice(0,4)=="rgb("){var C=this.slice(4,this.length-1).split(",");
var B=0;
do{A+=parseInt(C[B]).toColorPart();
}while(++B<3);
}else{if(this.slice(0,1)=="#"){if(this.length==4){for(var B=1;
B<4;
B++){A+=(this.charAt(B)+this.charAt(B)).toLowerCase();
}}if(this.length==7){A=this.toLowerCase();
}}}return(A.length==7?A:(arguments[0]||this));
};
Element.collectTextNodes=function(A){return $A($(A).childNodes).collect(function(B){return(B.nodeType==3?B.nodeValue:(B.hasChildNodes()?Element.collectTextNodes(B):""));
}).flatten().join("");
};
Element.collectTextNodesIgnoreClass=function(A,B){return $A($(A).childNodes).collect(function(C){return(C.nodeType==3?C.nodeValue:((C.hasChildNodes()&&!Element.hasClassName(C,B))?Element.collectTextNodesIgnoreClass(C,B):""));
}).flatten().join("");
};
Element.setContentZoom=function(A,B){A=$(A);
A.setStyle({fontSize:(B/100)+"em"});
if(Prototype.Browser.WebKit){window.scrollBy(0,0);
}return A;
};
Element.getInlineOpacity=function(A){return $(A).style.opacity||"";
};
Element.forceRerendering=function(A){try{A=$(A);
var C=document.createTextNode(" ");
A.appendChild(C);
A.removeChild(C);
}catch(B){}};
var Effect={_elementDoesNotExistError:{name:"ElementDoesNotExistError",message:"The specified DOM element does not exist, but is required for this effect to operate"},Transitions:{linear:Prototype.K,sinoidal:function(A){return(-Math.cos(A*Math.PI)/2)+0.5;
},reverse:function(A){return 1-A;
},flicker:function(A){var A=((-Math.cos(A*Math.PI)/4)+0.75)+Math.random()/4;
return A>1?1:A;
},wobble:function(A){return(-Math.cos(A*Math.PI*(9*A))/2)+0.5;
},pulse:function(B,A){A=A||5;
return(((B%(1/A))*A).round()==0?((B*A*2)-(B*A*2).floor()):1-((B*A*2)-(B*A*2).floor()));
},spring:function(A){return 1-(Math.cos(A*4.5*Math.PI)*Math.exp(-A*6));
},none:function(A){return 0;
},full:function(A){return 1;
}},DefaultOptions:{duration:1,fps:100,sync:false,from:0,to:1,delay:0,queue:"parallel"},tagifyText:function(A){var B="position:relative";
if(Prototype.Browser.IE){B+=";zoom:1";
}A=$(A);
$A(A.childNodes).each(function(C){if(C.nodeType==3){C.nodeValue.toArray().each(function(D){A.insertBefore(new Element("span",{style:B}).update(D==" "?String.fromCharCode(160):D),C);
});
Element.remove(C);
}});
},multiple:function(B,C){var E;
if(((typeof B=="object")||Object.isFunction(B))&&(B.length)){E=B;
}else{E=$(B).childNodes;
}var A=Object.extend({speed:0.1,delay:0},arguments[2]||{});
var D=A.delay;
$A(E).each(function(G,F){new C(G,Object.extend(A,{delay:F*A.speed+D}));
});
},PAIRS:{"slide":["SlideDown","SlideUp"],"blind":["BlindDown","BlindUp"],"appear":["Appear","Fade"]},toggle:function(B,C){B=$(B);
C=(C||"appear").toLowerCase();
var A=Object.extend({queue:{position:"end",scope:(B.id||"global"),limit:1}},arguments[2]||{});
Effect[B.visible()?Effect.PAIRS[C][1]:Effect.PAIRS[C][0]](B,A);
}};
Effect.DefaultOptions.transition=Effect.Transitions.sinoidal;
Effect.ScopedQueue=Class.create(Enumerable,{initialize:function(){this.effects=[];
this.interval=null;
},_each:function(A){this.effects._each(A);
},add:function(B){var C=new Date().getTime();
var A=Object.isString(B.options.queue)?B.options.queue:B.options.queue.position;
switch(A){case"front":this.effects.findAll(function(D){return D.state=="idle";
}).each(function(D){D.startOn+=B.finishOn;
D.finishOn+=B.finishOn;
});
break;
case"with-last":C=this.effects.pluck("startOn").max()||C;
break;
case"end":C=this.effects.pluck("finishOn").max()||C;
break;
}B.startOn+=C;
B.finishOn+=C;
if(!B.options.queue.limit||(this.effects.length<B.options.queue.limit)){this.effects.push(B);
}if(!this.interval){this.interval=setInterval(this.loop.bind(this),15);
}},remove:function(A){this.effects=this.effects.reject(function(B){return B==A;
});
if(this.effects.length==0){clearInterval(this.interval);
this.interval=null;
}},loop:function(){var C=new Date().getTime();
for(var B=0,A=this.effects.length;
B<A;
B++){this.effects[B]&&this.effects[B].loop(C);
}}});
Effect.Queues={instances:$H(),get:function(A){if(!Object.isString(A)){return A;
}return this.instances.get(A)||this.instances.set(A,new Effect.ScopedQueue());
}};
Effect.Queue=Effect.Queues.get("global");
Effect.Base=Class.create({position:null,start:function(options){function codeForEvent(options,eventName){return((options[eventName+"Internal"]?"this.options."+eventName+"Internal(this);":"")+(options[eventName]?"this.options."+eventName+"(this);":""));
}if(options&&options.transition===false){options.transition=Effect.Transitions.linear;
}this.options=Object.extend(Object.extend({},Effect.DefaultOptions),options||{});
this.currentFrame=0;
this.state="idle";
this.startOn=this.options.delay*1000;
this.finishOn=this.startOn+(this.options.duration*1000);
this.fromToDelta=this.options.to-this.options.from;
this.totalTime=this.finishOn-this.startOn;
this.totalFrames=this.options.fps*this.options.duration;
eval("this.render = function(pos){ "+'if (this.state=="idle"){this.state="running";'+codeForEvent(this.options,"beforeSetup")+(this.setup?"this.setup();":"")+codeForEvent(this.options,"afterSetup")+'};if (this.state=="running"){'+"pos=this.options.transition(pos)*"+this.fromToDelta+"+"+this.options.from+";"+"this.position=pos;"+codeForEvent(this.options,"beforeUpdate")+(this.update?"this.update(pos);":"")+codeForEvent(this.options,"afterUpdate")+"}}");
this.event("beforeStart");
if(!this.options.sync){Effect.Queues.get(Object.isString(this.options.queue)?"global":this.options.queue.scope).add(this);
}},loop:function(C){if(C>=this.startOn){if(C>=this.finishOn){this.render(1);
this.cancel();
this.event("beforeFinish");
if(this.finish){this.finish();
}this.event("afterFinish");
return ;
}var B=(C-this.startOn)/this.totalTime,A=(B*this.totalFrames).round();
if(A>this.currentFrame){this.render(B);
this.currentFrame=A;
}}},cancel:function(){if(!this.options.sync){Effect.Queues.get(Object.isString(this.options.queue)?"global":this.options.queue.scope).remove(this);
}this.state="finished";
},event:function(A){if(this.options[A+"Internal"]){this.options[A+"Internal"](this);
}if(this.options[A]){this.options[A](this);
}},inspect:function(){var A=$H();
for(property in this){if(!Object.isFunction(this[property])){A.set(property,this[property]);
}}return"#<Effect:"+A.inspect()+",options:"+$H(this.options).inspect()+">";
}});
Effect.Parallel=Class.create(Effect.Base,{initialize:function(A){this.effects=A||[];
this.start(arguments[1]);
},update:function(A){this.effects.invoke("render",A);
},finish:function(A){this.effects.each(function(B){B.render(1);
B.cancel();
B.event("beforeFinish");
if(B.finish){B.finish(A);
}B.event("afterFinish");
});
}});
Effect.Tween=Class.create(Effect.Base,{initialize:function(C,F,E){C=Object.isString(C)?$(C):C;
var B=$A(arguments),D=B.last(),A=B.length==5?B[3]:null;
this.method=Object.isFunction(D)?D.bind(C):Object.isFunction(C[D])?C[D].bind(C):function(G){C[D]=G;
};
this.start(Object.extend({from:F,to:E},A||{}));
},update:function(A){this.method(A);
}});
Effect.Event=Class.create(Effect.Base,{initialize:function(){this.start(Object.extend({duration:0},arguments[0]||{}));
},update:Prototype.emptyFunction});
Effect.Opacity=Class.create(Effect.Base,{initialize:function(B){this.element=$(B);
if(!this.element){throw (Effect._elementDoesNotExistError);
}if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout)){this.element.setStyle({zoom:1});
}var A=Object.extend({from:this.element.getOpacity()||0,to:1},arguments[1]||{});
this.start(A);
},update:function(A){this.element.setOpacity(A);
}});
Effect.Move=Class.create(Effect.Base,{initialize:function(B){this.element=$(B);
if(!this.element){throw (Effect._elementDoesNotExistError);
}var A=Object.extend({x:0,y:0,mode:"relative"},arguments[1]||{});
this.start(A);
},setup:function(){this.element.makePositioned();
this.originalLeft=parseFloat(this.element.getStyle("left")||"0");
this.originalTop=parseFloat(this.element.getStyle("top")||"0");
if(this.options.mode=="absolute"){this.options.x=this.options.x-this.originalLeft;
this.options.y=this.options.y-this.originalTop;
}},update:function(A){this.element.setStyle({left:(this.options.x*A+this.originalLeft).round()+"px",top:(this.options.y*A+this.originalTop).round()+"px"});
}});
Effect.MoveBy=function(B,A,C){return new Effect.Move(B,Object.extend({x:C,y:A},arguments[3]||{}));
};
Effect.Scale=Class.create(Effect.Base,{initialize:function(B,C){this.element=$(B);
if(!this.element){throw (Effect._elementDoesNotExistError);
}var A=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:"box",scaleFrom:100,scaleTo:C},arguments[2]||{});
this.start(A);
},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;
this.elementPositioning=this.element.getStyle("position");
this.originalStyle={};
["top","left","width","height","fontSize"].each(function(B){this.originalStyle[B]=this.element.style[B];
}.bind(this));
this.originalTop=this.element.offsetTop;
this.originalLeft=this.element.offsetLeft;
var A=this.element.getStyle("font-size")||"100%";
["em","px","%","pt"].each(function(B){if(A.indexOf(B)>0){this.fontSize=parseFloat(A);
this.fontSizeType=B;
}}.bind(this));
this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;
this.dims=null;
if(this.options.scaleMode=="box"){this.dims=[this.element.offsetHeight,this.element.offsetWidth];
}if(/^content/.test(this.options.scaleMode)){this.dims=[this.element.scrollHeight,this.element.scrollWidth];
}if(!this.dims){this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth];
}},update:function(A){var B=(this.options.scaleFrom/100)+(this.factor*A);
if(this.options.scaleContent&&this.fontSize){this.element.setStyle({fontSize:this.fontSize*B+this.fontSizeType});
}this.setDimensions(this.dims[0]*B,this.dims[1]*B);
},finish:function(A){if(this.restoreAfterFinish){this.element.setStyle(this.originalStyle);
}},setDimensions:function(A,D){var E={};
if(this.options.scaleX){E.width=D.round()+"px";
}if(this.options.scaleY){E.height=A.round()+"px";
}if(this.options.scaleFromCenter){var C=(A-this.dims[0])/2;
var B=(D-this.dims[1])/2;
if(this.elementPositioning=="absolute"){if(this.options.scaleY){E.top=this.originalTop-C+"px";
}if(this.options.scaleX){E.left=this.originalLeft-B+"px";
}}else{if(this.options.scaleY){E.top=-C+"px";
}if(this.options.scaleX){E.left=-B+"px";
}}}this.element.setStyle(E);
}});
Effect.Highlight=Class.create(Effect.Base,{initialize:function(B){this.element=$(B);
if(!this.element){throw (Effect._elementDoesNotExistError);
}var A=Object.extend({startcolor:"#ffff99"},arguments[1]||{});
this.start(A);
},setup:function(){if(this.element.getStyle("display")=="none"){this.cancel();
return ;
}this.oldStyle={};
if(!this.options.keepBackgroundImage){this.oldStyle.backgroundImage=this.element.getStyle("background-image");
this.element.setStyle({backgroundImage:"none"});
}if(!this.options.endcolor){this.options.endcolor=this.element.getStyle("background-color").parseColor("#ffffff");
}if(!this.options.restorecolor){this.options.restorecolor=this.element.getStyle("background-color");
}this._base=$R(0,2).map(function(A){return parseInt(this.options.startcolor.slice(A*2+1,A*2+3),16);
}.bind(this));
this._delta=$R(0,2).map(function(A){return parseInt(this.options.endcolor.slice(A*2+1,A*2+3),16)-this._base[A];
}.bind(this));
},update:function(A){this.element.setStyle({backgroundColor:$R(0,2).inject("#",function(B,C,D){return B+((this._base[D]+(this._delta[D]*A)).round().toColorPart());
}.bind(this))});
},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}));
}});
Effect.ScrollTo=function(D){var C=arguments[1]||{},B=document.viewport.getScrollOffsets(),E=$(D).cumulativeOffset(),A=(window.height||document.body.scrollHeight)-document.viewport.getHeight();
if(C.offset){E[1]+=C.offset;
}return new Effect.Tween(null,B.top,E[1]>A?A:E[1],C,function(F){scrollTo(B.left,F.round());
});
};
Effect.Fade=function(C){C=$(C);
var A=C.getInlineOpacity();
var B=Object.extend({from:C.getOpacity()||1,to:0,afterFinishInternal:function(D){if(D.options.to!=0){return ;
}D.element.hide().setStyle({opacity:A});
}},arguments[1]||{});
return new Effect.Opacity(C,B);
};
Effect.Appear=function(B){B=$(B);
var A=Object.extend({from:(B.getStyle("display")=="none"?0:B.getOpacity()||0),to:1,afterFinishInternal:function(C){if(C.element.forceRerendering){C.element.forceRerendering();
}},beforeSetup:function(C){C.element.setOpacity(C.options.from).show();
}},arguments[1]||{});
return new Effect.Opacity(B,A);
};
Effect.Puff=function(B){B=$(B);
var A={opacity:B.getInlineOpacity(),position:B.getStyle("position"),top:B.style.top,left:B.style.left,width:B.style.width,height:B.style.height};
return new Effect.Parallel([new Effect.Scale(B,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new Effect.Opacity(B,{sync:true,to:0})],Object.extend({duration:1,beforeSetupInternal:function(C){Position.absolutize(C.effects[0].element);
},afterFinishInternal:function(C){C.effects[0].element.hide().setStyle(A);
}},arguments[1]||{}));
};
Effect.BlindUp=function(A){A=$(A);
A.makeClipping();
return new Effect.Scale(A,0,Object.extend({scaleContent:false,scaleX:false,restoreAfterFinish:true,afterFinishInternal:function(B){B.element.hide().undoClipping();
}},arguments[1]||{}));
};
Effect.BlindDown=function(B){B=$(B);
var A=B.getDimensions();
return new Effect.Scale(B,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:A.height,originalWidth:A.width},restoreAfterFinish:true,afterSetup:function(C){C.element.makeClipping().setStyle({height:"0px"}).show();
},afterFinishInternal:function(C){C.element.undoClipping();
}},arguments[1]||{}));
};
Effect.SwitchOff=function(B){B=$(B);
var A=B.getInlineOpacity();
return new Effect.Appear(B,Object.extend({duration:0.4,from:0,transition:Effect.Transitions.flicker,afterFinishInternal:function(C){new Effect.Scale(C.element,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetup:function(D){D.element.makePositioned().makeClipping();
},afterFinishInternal:function(D){D.element.hide().undoClipping().undoPositioned().setStyle({opacity:A});
}});
}},arguments[1]||{}));
};
Effect.DropOut=function(B){B=$(B);
var A={top:B.getStyle("top"),left:B.getStyle("left"),opacity:B.getInlineOpacity()};
return new Effect.Parallel([new Effect.Move(B,{x:0,y:100,sync:true}),new Effect.Opacity(B,{sync:true,to:0})],Object.extend({duration:0.5,beforeSetup:function(C){C.effects[0].element.makePositioned();
},afterFinishInternal:function(C){C.effects[0].element.hide().undoPositioned().setStyle(A);
}},arguments[1]||{}));
};
Effect.Shake=function(D){D=$(D);
var B=Object.extend({distance:20,duration:0.5},arguments[1]||{});
var E=parseFloat(B.distance);
var C=parseFloat(B.duration)/10;
var A={top:D.getStyle("top"),left:D.getStyle("left")};
return new Effect.Move(D,{x:E,y:0,duration:C,afterFinishInternal:function(F){new Effect.Move(F.element,{x:-E*2,y:0,duration:C*2,afterFinishInternal:function(G){new Effect.Move(G.element,{x:E*2,y:0,duration:C*2,afterFinishInternal:function(H){new Effect.Move(H.element,{x:-E*2,y:0,duration:C*2,afterFinishInternal:function(I){new Effect.Move(I.element,{x:E*2,y:0,duration:C*2,afterFinishInternal:function(J){new Effect.Move(J.element,{x:-E,y:0,duration:C,afterFinishInternal:function(K){K.element.undoPositioned().setStyle(A);
}});
}});
}});
}});
}});
}});
};
Effect.SlideDown=function(C){C=$(C).cleanWhitespace();
var A=C.down().getStyle("bottom");
var B=C.getDimensions();
return new Effect.Scale(C,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:window.opera?0:1,scaleMode:{originalHeight:B.height,originalWidth:B.width},restoreAfterFinish:true,afterSetup:function(D){D.element.makePositioned();
D.element.down().makePositioned();
if(window.opera){D.element.setStyle({top:""});
}D.element.makeClipping().setStyle({height:"0px"}).show();
},afterUpdateInternal:function(D){D.element.down().setStyle({bottom:(D.dims[0]-D.element.clientHeight)+"px"});
},afterFinishInternal:function(D){D.element.undoClipping().undoPositioned();
D.element.down().undoPositioned().setStyle({bottom:A});
}},arguments[1]||{}));
};
Effect.SlideUp=function(C){C=$(C).cleanWhitespace();
var A=C.down().getStyle("bottom");
var B=C.getDimensions();
return new Effect.Scale(C,window.opera?0:1,Object.extend({scaleContent:false,scaleX:false,scaleMode:"box",scaleFrom:100,scaleMode:{originalHeight:B.height,originalWidth:B.width},restoreAfterFinish:true,afterSetup:function(D){D.element.makePositioned();
D.element.down().makePositioned();
if(window.opera){D.element.setStyle({top:""});
}D.element.makeClipping().show();
},afterUpdateInternal:function(D){D.element.down().setStyle({bottom:(D.dims[0]-D.element.clientHeight)+"px"});
},afterFinishInternal:function(D){D.element.hide().undoClipping().undoPositioned();
D.element.down().undoPositioned().setStyle({bottom:A});
}},arguments[1]||{}));
};
Effect.Squish=function(A){return new Effect.Scale(A,window.opera?1:0,{restoreAfterFinish:true,beforeSetup:function(B){B.element.makeClipping();
},afterFinishInternal:function(B){B.element.hide().undoClipping();
}});
};
Effect.Grow=function(C){C=$(C);
var B=Object.extend({direction:"center",moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.full},arguments[1]||{});
var A={top:C.style.top,left:C.style.left,height:C.style.height,width:C.style.width,opacity:C.getInlineOpacity()};
var G=C.getDimensions();
var H,F;
var E,D;
switch(B.direction){case"top-left":H=F=E=D=0;
break;
case"top-right":H=G.width;
F=D=0;
E=-G.width;
break;
case"bottom-left":H=E=0;
F=G.height;
D=-G.height;
break;
case"bottom-right":H=G.width;
F=G.height;
E=-G.width;
D=-G.height;
break;
case"center":H=G.width/2;
F=G.height/2;
E=-G.width/2;
D=-G.height/2;
break;
}return new Effect.Move(C,{x:H,y:F,duration:0.01,beforeSetup:function(I){I.element.hide().makeClipping().makePositioned();
},afterFinishInternal:function(I){new Effect.Parallel([new Effect.Opacity(I.element,{sync:true,to:1,from:0,transition:B.opacityTransition}),new Effect.Move(I.element,{x:E,y:D,sync:true,transition:B.moveTransition}),new Effect.Scale(I.element,100,{scaleMode:{originalHeight:G.height,originalWidth:G.width},sync:true,scaleFrom:window.opera?1:0,transition:B.scaleTransition,restoreAfterFinish:true})],Object.extend({beforeSetup:function(J){J.effects[0].element.setStyle({height:"0px"}).show();
},afterFinishInternal:function(J){J.effects[0].element.undoClipping().undoPositioned().setStyle(A);
}},B));
}});
};
Effect.Shrink=function(C){C=$(C);
var B=Object.extend({direction:"center",moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.none},arguments[1]||{});
var A={top:C.style.top,left:C.style.left,height:C.style.height,width:C.style.width,opacity:C.getInlineOpacity()};
var F=C.getDimensions();
var E,D;
switch(B.direction){case"top-left":E=D=0;
break;
case"top-right":E=F.width;
D=0;
break;
case"bottom-left":E=0;
D=F.height;
break;
case"bottom-right":E=F.width;
D=F.height;
break;
case"center":E=F.width/2;
D=F.height/2;
break;
}return new Effect.Parallel([new Effect.Opacity(C,{sync:true,to:0,from:1,transition:B.opacityTransition}),new Effect.Scale(C,window.opera?1:0,{sync:true,transition:B.scaleTransition,restoreAfterFinish:true}),new Effect.Move(C,{x:E,y:D,sync:true,transition:B.moveTransition})],Object.extend({beforeStartInternal:function(G){G.effects[0].element.makePositioned().makeClipping();
},afterFinishInternal:function(G){G.effects[0].element.hide().undoClipping().undoPositioned().setStyle(A);
}},B));
};
Effect.Pulsate=function(C){C=$(C);
var B=arguments[1]||{};
var A=C.getInlineOpacity();
var E=B.transition||Effect.Transitions.sinoidal;
var D=function(F){return E(1-Effect.Transitions.pulse(F,B.pulses));
};
D.bind(E);
return new Effect.Opacity(C,Object.extend(Object.extend({duration:2,from:0,afterFinishInternal:function(F){F.element.setStyle({opacity:A});
}},B),{transition:D}));
};
Effect.Fold=function(B){B=$(B);
var A={top:B.style.top,left:B.style.left,width:B.style.width,height:B.style.height};
B.makeClipping();
return new Effect.Scale(B,5,Object.extend({scaleContent:false,scaleX:false,afterFinishInternal:function(C){new Effect.Scale(B,1,{scaleContent:false,scaleY:false,afterFinishInternal:function(D){D.element.hide().undoClipping().setStyle(A);
}});
}},arguments[1]||{}));
};
Effect.Morph=Class.create(Effect.Base,{initialize:function(C){this.element=$(C);
if(!this.element){throw (Effect._elementDoesNotExistError);
}var A=Object.extend({style:{}},arguments[1]||{});
if(!Object.isString(A.style)){this.style=$H(A.style);
}else{if(A.style.include(":")){this.style=A.style.parseStyle();
}else{this.element.addClassName(A.style);
this.style=$H(this.element.getStyles());
this.element.removeClassName(A.style);
var B=this.element.getStyles();
this.style=this.style.reject(function(D){return D.value==B[D.key];
});
A.afterFinishInternal=function(D){D.element.addClassName(D.options.style);
D.transforms.each(function(E){D.element.style[E.style]="";
});
};
}}this.start(A);
},setup:function(){function A(B){if(!B||["rgba(0, 0, 0, 0)","transparent"].include(B)){B="#ffffff";
}B=B.parseColor();
return $R(0,2).map(function(C){return parseInt(B.slice(C*2+1,C*2+3),16);
});
}this.transforms=this.style.map(function(G){var F=G[0],E=G[1],D=null;
if(E.parseColor("#zzzzzz")!="#zzzzzz"){E=E.parseColor();
D="color";
}else{if(F=="opacity"){E=parseFloat(E);
if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout)){this.element.setStyle({zoom:1});
}}else{if(Element.CSS_LENGTH.test(E)){var C=E.match(/^([\+\-]?[0-9\.]+)(.*)$/);
E=parseFloat(C[1]);
D=(C.length==3)?C[2]:null;
}}}var B=this.element.getStyle(F);
return{style:F.camelize(),originalValue:D=="color"?A(B):parseFloat(B||0),targetValue:D=="color"?A(E):E,unit:D};
}.bind(this)).reject(function(B){return((B.originalValue==B.targetValue)||(B.unit!="color"&&(isNaN(B.originalValue)||isNaN(B.targetValue))));
});
},update:function(A){var D={},B,C=this.transforms.length;
while(C--){D[(B=this.transforms[C]).style]=B.unit=="color"?"#"+(Math.round(B.originalValue[0]+(B.targetValue[0]-B.originalValue[0])*A)).toColorPart()+(Math.round(B.originalValue[1]+(B.targetValue[1]-B.originalValue[1])*A)).toColorPart()+(Math.round(B.originalValue[2]+(B.targetValue[2]-B.originalValue[2])*A)).toColorPart():(B.originalValue+(B.targetValue-B.originalValue)*A).toFixed(3)+(B.unit===null?"":B.unit);
}this.element.setStyle(D,true);
}});
Effect.Transform=Class.create({initialize:function(A){this.tracks=[];
this.options=arguments[1]||{};
this.addTracks(A);
},addTracks:function(A){A.each(function(B){B=$H(B);
var C=B.values().first();
this.tracks.push($H({ids:B.keys().first(),effect:Effect.Morph,options:{style:C}}));
}.bind(this));
return this;
},play:function(){return new Effect.Parallel(this.tracks.map(function(A){var D=A.get("ids"),C=A.get("effect"),B=A.get("options");
var E=[$(D)||$$(D)].flatten();
return E.map(function(F){return new C(F,Object.extend({sync:true},B));
});
}).flatten(),this.options);
}});
Element.CSS_PROPERTIES=$w("backgroundColor backgroundPosition borderBottomColor borderBottomStyle "+"borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth "+"borderRightColor borderRightStyle borderRightWidth borderSpacing "+"borderTopColor borderTopStyle borderTopWidth bottom clip color "+"fontSize fontWeight height left letterSpacing lineHeight "+"marginBottom marginLeft marginRight marginTop markerOffset maxHeight "+"maxWidth minHeight minWidth opacity outlineColor outlineOffset "+"outlineWidth paddingBottom paddingLeft paddingRight paddingTop "+"right textIndent top width wordSpacing zIndex");
Element.CSS_LENGTH=/^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;
String.__parseStyleElement=document.createElement("div");
String.prototype.parseStyle=function(){var B,A=$H();
if(Prototype.Browser.WebKit){B=new Element("div",{style:this}).style;
}else{String.__parseStyleElement.innerHTML='<div style="'+this+'"></div>';
B=String.__parseStyleElement.childNodes[0].style;
}Element.CSS_PROPERTIES.each(function(C){if(B[C]){A.set(C,B[C]);
}});
if(Prototype.Browser.IE&&this.include("opacity")){A.set("opacity",this.match(/opacity:\s*((?:0|1)?(?:\.\d*)?)/)[1]);
}return A;
};
if(document.defaultView&&document.defaultView.getComputedStyle){Element.getStyles=function(B){var A=document.defaultView.getComputedStyle($(B),null);
return Element.CSS_PROPERTIES.inject({},function(C,D){C[D]=A[D];
return C;
});
};
}else{Element.getStyles=function(B){B=$(B);
var A=B.currentStyle,C;
C=Element.CSS_PROPERTIES.inject({},function(D,E){D[E]=A[E];
return D;
});
if(!C.opacity){C.opacity=B.getOpacity();
}return C;
};
}Effect.Methods={morph:function(A,B){A=$(A);
new Effect.Morph(A,Object.extend({style:B},arguments[2]||{}));
return A;
},visualEffect:function(C,E,B){C=$(C);
var D=E.dasherize().camelize(),A=D.charAt(0).toUpperCase()+D.substring(1);
new Effect[A](C,B);
return C;
},highlight:function(B,A){B=$(B);
new Effect.Highlight(B,A);
return B;
}};
$w("fade appear grow shrink fold blindUp blindDown slideUp slideDown "+"pulsate shake puff squish switchOff dropOut").each(function(A){Effect.Methods[A]=function(C,B){C=$(C);
Effect[A.charAt(0).toUpperCase()+A.substring(1)](C,B);
return C;
};
});
$w("getInlineOpacity forceRerendering setContentZoom collectTextNodes collectTextNodesIgnoreClass getStyles").each(function(A){Effect.Methods[A]=Element[A];
});
Element.addMethods(Effect.Methods);


if(typeof Effect=="undefined"){throw ("controls.js requires including script.aculo.us' effects.js library");
}var Autocompleter={};
Autocompleter.Base=Class.create({baseInitialize:function(B,C,A){B=$(B);
this.element=B;
this.update=$(C);
this.hasFocus=false;
this.changed=false;
this.active=false;
this.index=0;
this.entryCount=0;
this.oldElementValue=this.element.value;
if(this.setOptions){this.setOptions(A);
}else{this.options=A||{};
}this.options.paramName=this.options.paramName||this.element.name;
this.options.tokens=this.options.tokens||[];
this.options.frequency=this.options.frequency||0.4;
this.options.minChars=this.options.minChars||1;
this.options.onShow=this.options.onShow||function(D,E){if(!E.style.position||E.style.position=="absolute"){E.style.position="absolute";
Position.clone(D,E,{setHeight:false,offsetTop:D.offsetHeight});
}Effect.Appear(E,{duration:0.15});
};
this.options.onHide=this.options.onHide||function(D,E){new Effect.Fade(E,{duration:0.15});
};
if(typeof (this.options.tokens)=="string"){this.options.tokens=new Array(this.options.tokens);
}if(!this.options.tokens.include("\n")){this.options.tokens.push("\n");
}this.observer=null;
this.element.setAttribute("autocomplete","off");
Element.hide(this.update);
Event.observe(this.element,"blur",this.onBlur.bindAsEventListener(this));
Event.observe(this.element,"keydown",this.onKeyPress.bindAsEventListener(this));
},show:function(){if(Element.getStyle(this.update,"display")=="none"){this.options.onShow(this.element,this.update);
}if(!this.iefix&&(Prototype.Browser.IE)&&(Element.getStyle(this.update,"position")=="absolute")){new Insertion.After(this.update,'<iframe id="'+this.update.id+'_iefix" '+'style="display:none;position:absolute;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0);" '+'src="javascript:false;" frameborder="0" scrolling="no"></iframe>');
this.iefix=$(this.update.id+"_iefix");
}if(this.iefix){setTimeout(this.fixIEOverlapping.bind(this),50);
}},fixIEOverlapping:function(){Position.clone(this.update,this.iefix,{setTop:(!this.update.style.height)});
this.iefix.style.zIndex=1;
this.update.style.zIndex=2;
Element.show(this.iefix);
},hide:function(){this.stopIndicator();
if(Element.getStyle(this.update,"display")!="none"){this.options.onHide(this.element,this.update);
}if(this.iefix){Element.hide(this.iefix);
}},startIndicator:function(){if(this.options.indicator){Element.show(this.options.indicator);
}},stopIndicator:function(){if(this.options.indicator){Element.hide(this.options.indicator);
}},onKeyPress:function(A){if(this.active){switch(A.keyCode){case Event.KEY_TAB:case Event.KEY_RETURN:this.selectEntry();
Event.stop(A);
case Event.KEY_ESC:this.hide();
this.active=false;
Event.stop(A);
return ;
case Event.KEY_LEFT:case Event.KEY_RIGHT:return ;
case Event.KEY_UP:this.markPrevious();
this.render();
Event.stop(A);
return ;
case Event.KEY_DOWN:this.markNext();
this.render();
Event.stop(A);
return ;
}}else{if(A.keyCode==Event.KEY_TAB||A.keyCode==Event.KEY_RETURN||(Prototype.Browser.WebKit>0&&A.keyCode==0)){return ;
}}this.changed=true;
this.hasFocus=true;
if(this.observer){clearTimeout(this.observer);
}this.observer=setTimeout(this.onObserverEvent.bind(this),this.options.frequency*1000);
},activate:function(){this.changed=false;
this.hasFocus=true;
this.getUpdatedChoices();
},onHover:function(B){var A=Event.findElement(B,"LI");
if(this.index!=A.autocompleteIndex){this.index=A.autocompleteIndex;
this.render();
}Event.stop(B);
},onClick:function(B){var A=Event.findElement(B,"LI");
this.index=A.autocompleteIndex;
this.selectEntry();
this.hide();
},onBlur:function(A){setTimeout(this.hide.bind(this),250);
this.hasFocus=false;
this.active=false;
},render:function(){if(this.entryCount>0){for(var A=0;
A<this.entryCount;
A++){this.index==A?Element.addClassName(this.getEntry(A),"selected"):Element.removeClassName(this.getEntry(A),"selected");
}if(this.hasFocus){this.show();
this.active=true;
}}else{this.active=false;
this.hide();
}},markPrevious:function(){if(this.index>0){this.index--;
}else{this.index=this.entryCount-1;
}this.getEntry(this.index).scrollIntoView(true);
},markNext:function(){if(this.index<this.entryCount-1){this.index++;
}else{this.index=0;
}this.getEntry(this.index).scrollIntoView(false);
},getEntry:function(A){return this.update.firstChild.childNodes[A];
},getCurrentEntry:function(){return this.getEntry(this.index);
},selectEntry:function(){this.active=false;
this.updateElement(this.getCurrentEntry());
},updateElement:function(F){if(this.options.updateElement){this.options.updateElement(F);
return ;
}var D="";
if(this.options.select){var A=$(F).select("."+this.options.select)||[];
if(A.length>0){D=Element.collectTextNodes(A[0],this.options.select);
}}else{D=Element.collectTextNodesIgnoreClass(F,"informal");
}var C=this.getTokenBounds();
if(C[0]!=-1){var E=this.element.value.substr(0,C[0]);
var B=this.element.value.substr(C[0]).match(/^\s+/);
if(B){E+=B[0];
}this.element.value=E+D+this.element.value.substr(C[1]);
}else{this.element.value=D;
}this.oldElementValue=this.element.value;
this.element.focus();
if(this.options.afterUpdateElement){this.options.afterUpdateElement(this.element,F);
}},updateChoices:function(C){if(!this.changed&&this.hasFocus){this.update.innerHTML=C;
Element.cleanWhitespace(this.update);
Element.cleanWhitespace(this.update.down());
if(this.update.firstChild&&this.update.down().childNodes){this.entryCount=this.update.down().childNodes.length;
for(var A=0;
A<this.entryCount;
A++){var B=this.getEntry(A);
B.autocompleteIndex=A;
this.addObservers(B);
}}else{this.entryCount=0;
}this.stopIndicator();
this.index=0;
if(this.entryCount==1&&this.options.autoSelect){this.selectEntry();
this.hide();
}else{this.render();
}}},addObservers:function(A){Event.observe(A,"mouseover",this.onHover.bindAsEventListener(this));
Event.observe(A,"click",this.onClick.bindAsEventListener(this));
},onObserverEvent:function(){this.changed=false;
this.tokenBounds=null;
if(this.getToken().length>=this.options.minChars){this.getUpdatedChoices();
}else{this.active=false;
this.hide();
}this.oldElementValue=this.element.value;
},getToken:function(){var A=this.getTokenBounds();
return this.element.value.substring(A[0],A[1]).strip();
},getTokenBounds:function(){if(null!=this.tokenBounds){return this.tokenBounds;
}var E=this.element.value;
if(E.strip().empty()){return[-1,0];
}var F=arguments.callee.getFirstDifferencePos(E,this.oldElementValue);
var H=(F==this.oldElementValue.length?1:0);
var D=-1,C=E.length;
var G;
for(var B=0,A=this.options.tokens.length;
B<A;
++B){G=E.lastIndexOf(this.options.tokens[B],F+H-1);
if(G>D){D=G;
}G=E.indexOf(this.options.tokens[B],F+H);
if(-1!=G&&G<C){C=G;
}}return(this.tokenBounds=[D+1,C]);
}});
Autocompleter.Base.prototype.getTokenBounds.getFirstDifferencePos=function(C,A){var D=Math.min(C.length,A.length);
for(var B=0;
B<D;
++B){if(C[B]!=A[B]){return B;
}}return D;
};
Ajax.Autocompleter=Class.create(Autocompleter.Base,{initialize:function(C,D,B,A){this.baseInitialize(C,D,A);
this.options.asynchronous=true;
this.options.onComplete=this.onComplete.bind(this);
this.options.defaultParams=this.options.parameters||null;
this.url=B;
},getUpdatedChoices:function(){this.startIndicator();
var A=encodeURIComponent(this.options.paramName)+"="+encodeURIComponent(this.getToken());
this.options.parameters=this.options.callback?this.options.callback(this.element,A):A;
if(this.options.defaultParams){this.options.parameters+="&"+this.options.defaultParams;
}new Ajax.Request(this.url,this.options);
},onComplete:function(A){this.updateChoices(A.responseText);
}});
Autocompleter.Local=Class.create(Autocompleter.Base,{initialize:function(B,D,C,A){this.baseInitialize(B,D,A);
this.options.array=C;
},getUpdatedChoices:function(){this.updateChoices(this.options.selector(this));
},setOptions:function(A){this.options=Object.extend({choices:10,partialSearch:true,partialChars:2,ignoreCase:true,fullSearch:false,selector:function(B){var D=[];
var C=[];
var H=B.getToken();
var G=0;
for(var E=0;
E<B.options.array.length&&D.length<B.options.choices;
E++){var F=B.options.array[E];
var I=B.options.ignoreCase?F.toLowerCase().indexOf(H.toLowerCase()):F.indexOf(H);
while(I!=-1){if(I==0&&F.length!=H.length){D.push("<li><strong>"+F.substr(0,H.length)+"</strong>"+F.substr(H.length)+"</li>");
break;
}else{if(H.length>=B.options.partialChars&&B.options.partialSearch&&I!=-1){if(B.options.fullSearch||/\s/.test(F.substr(I-1,1))){C.push("<li>"+F.substr(0,I)+"<strong>"+F.substr(I,H.length)+"</strong>"+F.substr(I+H.length)+"</li>");
break;
}}}I=B.options.ignoreCase?F.toLowerCase().indexOf(H.toLowerCase(),I+1):F.indexOf(H,I+1);
}}if(C.length){D=D.concat(C.slice(0,B.options.choices-D.length));
}return"<ul>"+D.join("")+"</ul>";
}},A||{});
}});
Field.scrollFreeActivate=function(A){setTimeout(function(){Field.activate(A);
},1);
};
Ajax.InPlaceEditor=Class.create({initialize:function(C,B,A){this.url=B;
this.element=C=$(C);
this.prepareOptions();
this._controls={};
arguments.callee.dealWithDeprecatedOptions(A);
Object.extend(this.options,A||{});
if(!this.options.formId&&this.element.id){this.options.formId=this.element.id+"-inplaceeditor";
if($(this.options.formId)){this.options.formId="";
}}if(this.options.externalControl){this.options.externalControl=$(this.options.externalControl);
}if(!this.options.externalControl){this.options.externalControlOnly=false;
}this._originalBackground=this.element.getStyle("background-color")||"transparent";
this.element.title=this.options.clickToEditText;
this._boundCancelHandler=this.handleFormCancellation.bind(this);
this._boundComplete=(this.options.onComplete||Prototype.emptyFunction).bind(this);
this._boundFailureHandler=this.handleAJAXFailure.bind(this);
this._boundSubmitHandler=this.handleFormSubmission.bind(this);
this._boundWrapperHandler=this.wrapUp.bind(this);
this.registerListeners();
},checkForEscapeOrReturn:function(A){if(!this._editing||A.ctrlKey||A.altKey||A.shiftKey){return ;
}if(Event.KEY_ESC==A.keyCode){this.handleFormCancellation(A);
}else{if(Event.KEY_RETURN==A.keyCode){this.handleFormSubmission(A);
}}},createControl:function(G,C,B){var E=this.options[G+"Control"];
var F=this.options[G+"Text"];
if("button"==E){var A=document.createElement("input");
A.type="submit";
A.value=F;
A.className="editor_"+G+"_button";
if("cancel"==G){A.onclick=this._boundCancelHandler;
}this._form.appendChild(A);
this._controls[G]=A;
}else{if("link"==E){var D=document.createElement("a");
D.href="#";
D.appendChild(document.createTextNode(F));
D.onclick="cancel"==G?this._boundCancelHandler:this._boundSubmitHandler;
D.className="editor_"+G+"_link";
if(B){D.className+=" "+B;
}this._form.appendChild(D);
this._controls[G]=D;
}}},createEditField:function(){var C=(this.options.loadTextURL?this.options.loadingText:this.getText());
var B;
if(1>=this.options.rows&&!/\r|\n/.test(this.getText())){B=document.createElement("input");
B.type="text";
var A=this.options.size||this.options.cols||0;
if(0<A){B.size=A;
}}else{B=document.createElement("textarea");
B.rows=(1>=this.options.rows?this.options.autoRows:this.options.rows);
B.cols=this.options.cols||40;
}B.name=this.options.paramName;
B.value=C;
B.className="editor_field";
if(this.options.submitOnBlur){B.onblur=this._boundSubmitHandler;
}this._controls.editor=B;
if(this.options.loadTextURL){this.loadExternalText();
}this._form.appendChild(this._controls.editor);
},createForm:function(){var B=this;
function A(D,E){var C=B.options["text"+D+"Controls"];
if(!C||E===false){return ;
}B._form.appendChild(document.createTextNode(C));
}this._form=$(document.createElement("form"));
this._form.id=this.options.formId;
this._form.addClassName(this.options.formClassName);
this._form.onsubmit=this._boundSubmitHandler;
this.createEditField();
if("textarea"==this._controls.editor.tagName.toLowerCase()){this._form.appendChild(document.createElement("br"));
}if(this.options.onFormCustomization){this.options.onFormCustomization(this,this._form);
}A("Before",this.options.okControl||this.options.cancelControl);
this.createControl("ok",this._boundSubmitHandler);
A("Between",this.options.okControl&&this.options.cancelControl);
this.createControl("cancel",this._boundCancelHandler,"editor_cancel");
A("After",this.options.okControl||this.options.cancelControl);
},destroy:function(){if(this._oldInnerHTML){this.element.innerHTML=this._oldInnerHTML;
}this.leaveEditMode();
this.unregisterListeners();
},enterEditMode:function(A){if(this._saving||this._editing){return ;
}this._editing=true;
this.triggerCallback("onEnterEditMode");
if(this.options.externalControl){this.options.externalControl.hide();
}this.element.hide();
this.createForm();
this.element.parentNode.insertBefore(this._form,this.element);
if(!this.options.loadTextURL){this.postProcessEditField();
}if(A){Event.stop(A);
}},enterHover:function(A){if(this.options.hoverClassName){this.element.addClassName(this.options.hoverClassName);
}if(this._saving){return ;
}this.triggerCallback("onEnterHover");
},getText:function(){return this.element.innerHTML;
},handleAJAXFailure:function(A){this.triggerCallback("onFailure",A);
if(this._oldInnerHTML){this.element.innerHTML=this._oldInnerHTML;
this._oldInnerHTML=null;
}},handleFormCancellation:function(A){this.wrapUp();
if(A){Event.stop(A);
}},handleFormSubmission:function(D){var B=this._form;
var C=$F(this._controls.editor);
this.prepareSubmission();
var E=this.options.callback(B,C)||"";
if(Object.isString(E)){E=E.toQueryParams();
}E.editorId=this.element.id;
if(this.options.htmlResponse){var A=Object.extend({evalScripts:true},this.options.ajaxOptions);
Object.extend(A,{parameters:E,onComplete:this._boundWrapperHandler,onFailure:this._boundFailureHandler});
new Ajax.Updater({success:this.element},this.url,A);
}else{var A=Object.extend({method:"get"},this.options.ajaxOptions);
Object.extend(A,{parameters:E,onComplete:this._boundWrapperHandler,onFailure:this._boundFailureHandler});
new Ajax.Request(this.url,A);
}if(D){Event.stop(D);
}},leaveEditMode:function(){this.element.removeClassName(this.options.savingClassName);
this.removeForm();
this.leaveHover();
this.element.style.backgroundColor=this._originalBackground;
this.element.show();
if(this.options.externalControl){this.options.externalControl.show();
}this._saving=false;
this._editing=false;
this._oldInnerHTML=null;
this.triggerCallback("onLeaveEditMode");
},leaveHover:function(A){if(this.options.hoverClassName){this.element.removeClassName(this.options.hoverClassName);
}if(this._saving){return ;
}this.triggerCallback("onLeaveHover");
},loadExternalText:function(){this._form.addClassName(this.options.loadingClassName);
this._controls.editor.disabled=true;
var A=Object.extend({method:"get"},this.options.ajaxOptions);
Object.extend(A,{parameters:"editorId="+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(C){this._form.removeClassName(this.options.loadingClassName);
var B=C.responseText;
if(this.options.stripLoadedTextTags){B=B.stripTags();
}this._controls.editor.value=B;
this._controls.editor.disabled=false;
this.postProcessEditField();
}.bind(this),onFailure:this._boundFailureHandler});
new Ajax.Request(this.options.loadTextURL,A);
},postProcessEditField:function(){var A=this.options.fieldPostCreation;
if(A){$(this._controls.editor)["focus"==A?"focus":"activate"]();
}},prepareOptions:function(){this.options=Object.clone(Ajax.InPlaceEditor.DefaultOptions);
Object.extend(this.options,Ajax.InPlaceEditor.DefaultCallbacks);
[this._extraDefaultOptions].flatten().compact().each(function(A){Object.extend(this.options,A);
}.bind(this));
},prepareSubmission:function(){this._saving=true;
this.removeForm();
this.leaveHover();
this.showSaving();
},registerListeners:function(){this._listeners={};
var A;
$H(Ajax.InPlaceEditor.Listeners).each(function(B){A=this[B.value].bind(this);
this._listeners[B.key]=A;
if(!this.options.externalControlOnly){this.element.observe(B.key,A);
}if(this.options.externalControl){this.options.externalControl.observe(B.key,A);
}}.bind(this));
},removeForm:function(){if(!this._form){return ;
}this._form.remove();
this._form=null;
this._controls={};
},showSaving:function(){this._oldInnerHTML=this.element.innerHTML;
this.element.innerHTML=this.options.savingText;
this.element.addClassName(this.options.savingClassName);
this.element.style.backgroundColor=this._originalBackground;
this.element.show();
},triggerCallback:function(B,A){if("function"==typeof this.options[B]){this.options[B](this,A);
}},unregisterListeners:function(){$H(this._listeners).each(function(A){if(!this.options.externalControlOnly){this.element.stopObserving(A.key,A.value);
}if(this.options.externalControl){this.options.externalControl.stopObserving(A.key,A.value);
}}.bind(this));
},wrapUp:function(A){this.leaveEditMode();
this._boundComplete(A,this.element);
}});
Object.extend(Ajax.InPlaceEditor.prototype,{dispose:Ajax.InPlaceEditor.prototype.destroy});
Ajax.InPlaceCollectionEditor=Class.create(Ajax.InPlaceEditor,{initialize:function($super,C,B,A){this._extraDefaultOptions=Ajax.InPlaceCollectionEditor.DefaultOptions;
$super(C,B,A);
},createEditField:function(){var A=document.createElement("select");
A.name=this.options.paramName;
A.size=1;
this._controls.editor=A;
this._collection=this.options.collection||[];
if(this.options.loadCollectionURL){this.loadCollection();
}else{this.checkForExternalText();
}this._form.appendChild(this._controls.editor);
},loadCollection:function(){this._form.addClassName(this.options.loadingClassName);
this.showLoadingText(this.options.loadingCollectionText);
var options=Object.extend({method:"get"},this.options.ajaxOptions);
Object.extend(options,{parameters:"editorId="+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(transport){var js=transport.responseText.strip();
if(!/^\[.*\]$/.test(js)){throw"Server returned an invalid collection representation.";
}this._collection=eval(js);
this.checkForExternalText();
}.bind(this),onFailure:this.onFailure});
new Ajax.Request(this.options.loadCollectionURL,options);
},showLoadingText:function(B){this._controls.editor.disabled=true;
var A=this._controls.editor.firstChild;
if(!A){A=document.createElement("option");
A.value="";
this._controls.editor.appendChild(A);
A.selected=true;
}A.update((B||"").stripScripts().stripTags());
},checkForExternalText:function(){this._text=this.getText();
if(this.options.loadTextURL){this.loadExternalText();
}else{this.buildOptionList();
}},loadExternalText:function(){this.showLoadingText(this.options.loadingText);
var A=Object.extend({method:"get"},this.options.ajaxOptions);
Object.extend(A,{parameters:"editorId="+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(B){this._text=B.responseText.strip();
this.buildOptionList();
}.bind(this),onFailure:this.onFailure});
new Ajax.Request(this.options.loadTextURL,A);
},buildOptionList:function(){this._form.removeClassName(this.options.loadingClassName);
this._collection=this._collection.map(function(D){return 2===D.length?D:[D,D].flatten();
});
var B=("value" in this.options)?this.options.value:this._text;
var A=this._collection.any(function(D){return D[0]==B;
}.bind(this));
this._controls.editor.update("");
var C;
this._collection.each(function(E,D){C=document.createElement("option");
C.value=E[0];
C.selected=A?E[0]==B:0==D;
C.appendChild(document.createTextNode(E[1]));
this._controls.editor.appendChild(C);
}.bind(this));
this._controls.editor.disabled=false;
Field.scrollFreeActivate(this._controls.editor);
}});
Ajax.InPlaceEditor.prototype.initialize.dealWithDeprecatedOptions=function(A){if(!A){return ;
}function B(C,D){if(C in A||D===undefined){return ;
}A[C]=D;
}B("cancelControl",(A.cancelLink?"link":(A.cancelButton?"button":A.cancelLink==A.cancelButton==false?false:undefined)));
B("okControl",(A.okLink?"link":(A.okButton?"button":A.okLink==A.okButton==false?false:undefined)));
B("highlightColor",A.highlightcolor);
B("highlightEndColor",A.highlightendcolor);
};
Object.extend(Ajax.InPlaceEditor,{DefaultOptions:{ajaxOptions:{},autoRows:3,cancelControl:"link",cancelText:"cancel",clickToEditText:"Click to edit",externalControl:null,externalControlOnly:false,fieldPostCreation:"activate",formClassName:"inplaceeditor-form",formId:null,highlightColor:"#ffff99",highlightEndColor:"#ffffff",hoverClassName:"",htmlResponse:true,loadingClassName:"inplaceeditor-loading",loadingText:"Loading...",okControl:"button",okText:"ok",paramName:"value",rows:1,savingClassName:"inplaceeditor-saving",savingText:"Saving...",size:0,stripLoadedTextTags:false,submitOnBlur:false,textAfterControls:"",textBeforeControls:"",textBetweenControls:""},DefaultCallbacks:{callback:function(A){return Form.serialize(A);
},onComplete:function(B,A){new Effect.Highlight(A,{startcolor:this.options.highlightColor,keepBackgroundImage:true});
},onEnterEditMode:null,onEnterHover:function(A){A.element.style.backgroundColor=A.options.highlightColor;
if(A._effect){A._effect.cancel();
}},onFailure:function(B,A){alert("Error communication with the server: "+B.responseText.stripTags());
},onFormCustomization:null,onLeaveEditMode:null,onLeaveHover:function(A){A._effect=new Effect.Highlight(A.element,{startcolor:A.options.highlightColor,endcolor:A.options.highlightEndColor,restorecolor:A._originalBackground,keepBackgroundImage:true});
}},Listeners:{click:"enterEditMode",keydown:"checkForEscapeOrReturn",mouseover:"enterHover",mouseout:"leaveHover"}});
Ajax.InPlaceCollectionEditor.DefaultOptions={loadingCollectionText:"Loading options..."};
Form.Element.DelayedObserver=Class.create({initialize:function(B,A,C){this.delay=A||0.5;
this.element=$(B);
this.callback=C;
this.timer=null;
this.lastValue=$F(this.element);
Event.observe(this.element,"keyup",this.delayedListener.bindAsEventListener(this));
},delayedListener:function(A){if(this.lastValue==$F(this.element)){return ;
}if(this.timer){clearTimeout(this.timer);
}this.timer=setTimeout(this.onTimerEvent.bind(this),this.delay*1000);
this.lastValue=$F(this.element);
},onTimerEvent:function(){this.timer=null;
this.callback(this.element,$F(this.element));
}});


if(!Control){var Control={};
}Control.Slider=Class.create({initialize:function(D,A,B){var C=this;
if(Object.isArray(D)){this.handles=D.collect(function(E){return $(E);
});
}else{this.handles=[$(D)];
}this.track=$(A);
this.options=B||{};
this.axis=this.options.axis||"horizontal";
this.increment=this.options.increment||1;
this.step=parseInt(this.options.step||"1");
this.range=this.options.range||$R(0,1);
this.value=0;
this.values=this.handles.map(function(){return 0;
});
this.spans=this.options.spans?this.options.spans.map(function(E){return $(E);
}):false;
this.options.startSpan=$(this.options.startSpan||null);
this.options.endSpan=$(this.options.endSpan||null);
this.restricted=this.options.restricted||false;
this.maximum=this.options.maximum||this.range.end;
this.minimum=this.options.minimum||this.range.start;
this.alignX=parseInt(this.options.alignX||"0");
this.alignY=parseInt(this.options.alignY||"0");
this.trackLength=this.maximumOffset()-this.minimumOffset();
this.handleLength=this.isVertical()?(this.handles[0].offsetHeight!=0?this.handles[0].offsetHeight:this.handles[0].style.height.replace(/px$/,"")):(this.handles[0].offsetWidth!=0?this.handles[0].offsetWidth:this.handles[0].style.width.replace(/px$/,""));
this.active=false;
this.dragging=false;
this.disabled=false;
if(this.options.disabled){this.setDisabled();
}this.allowedValues=this.options.values?this.options.values.sortBy(Prototype.K):false;
if(this.allowedValues){this.minimum=this.allowedValues.min();
this.maximum=this.allowedValues.max();
}this.eventMouseDown=this.startDrag.bindAsEventListener(this);
this.eventMouseUp=this.endDrag.bindAsEventListener(this);
this.eventMouseMove=this.update.bindAsEventListener(this);
this.handles.each(function(F,E){E=C.handles.length-1-E;
C.setValue(parseFloat((Object.isArray(C.options.sliderValue)?C.options.sliderValue[E]:C.options.sliderValue)||C.range.start),E);
F.makePositioned().observe("mousedown",C.eventMouseDown);
});
this.track.observe("mousedown",this.eventMouseDown);
document.observe("mouseup",this.eventMouseUp);
document.observe("mousemove",this.eventMouseMove);
this.initialized=true;
},dispose:function(){var A=this;
Event.stopObserving(this.track,"mousedown",this.eventMouseDown);
Event.stopObserving(document,"mouseup",this.eventMouseUp);
Event.stopObserving(document,"mousemove",this.eventMouseMove);
this.handles.each(function(B){Event.stopObserving(B,"mousedown",A.eventMouseDown);
});
},setDisabled:function(){this.disabled=true;
},setEnabled:function(){this.disabled=false;
},getNearestValue:function(A){if(this.allowedValues){if(A>=this.allowedValues.max()){return(this.allowedValues.max());
}if(A<=this.allowedValues.min()){return(this.allowedValues.min());
}var C=Math.abs(this.allowedValues[0]-A);
var B=this.allowedValues[0];
this.allowedValues.each(function(D){var E=Math.abs(D-A);
if(E<=C){B=D;
C=E;
}});
return B;
}if(A>this.range.end){return this.range.end;
}if(A<this.range.start){return this.range.start;
}return A;
},setValue:function(B,A){if(!this.active){this.activeHandleIdx=A||0;
this.activeHandle=this.handles[this.activeHandleIdx];
this.updateStyles();
}A=A||this.activeHandleIdx||0;
if(this.initialized&&this.restricted){if((A>0)&&(B<this.values[A-1])){B=this.values[A-1];
}if((A<(this.handles.length-1))&&(B>this.values[A+1])){B=this.values[A+1];
}}B=this.getNearestValue(B);
this.values[A]=B;
this.value=this.values[0];
this.handles[A].style[this.isVertical()?"top":"left"]=this.translateToPx(B);
this.drawSpans();
if(!this.dragging||!this.event){this.updateFinished();
}},setValueBy:function(B,A){this.setValue(this.values[A||this.activeHandleIdx||0]+B,A||this.activeHandleIdx||0);
},translateToPx:function(A){return Math.round(((this.trackLength-this.handleLength)/(this.range.end-this.range.start))*(A-this.range.start))+"px";
},translateToValue:function(A){return((A/(this.trackLength-this.handleLength)*(this.range.end-this.range.start))+this.range.start);
},getRange:function(B){var A=this.values.sortBy(Prototype.K);
B=B||0;
return $R(A[B],A[B+1]);
},minimumOffset:function(){return(this.isVertical()?this.alignY:this.alignX);
},maximumOffset:function(){return(this.isVertical()?(this.track.offsetHeight!=0?this.track.offsetHeight:this.track.style.height.replace(/px$/,""))-this.alignY:(this.track.offsetWidth!=0?this.track.offsetWidth:this.track.style.width.replace(/px$/,""))-this.alignX);
},isVertical:function(){return(this.axis=="vertical");
},drawSpans:function(){var A=this;
if(this.spans){$R(0,this.spans.length-1).each(function(B){A.setSpan(A.spans[B],A.getRange(B));
});
}if(this.options.startSpan){this.setSpan(this.options.startSpan,$R(0,this.values.length>1?this.getRange(0).min():this.value));
}if(this.options.endSpan){this.setSpan(this.options.endSpan,$R(this.values.length>1?this.getRange(this.spans.length-1).max():this.value,this.maximum));
}},setSpan:function(B,A){if(this.isVertical()){B.style.top=this.translateToPx(A.start);
B.style.height=this.translateToPx(A.end-A.start+this.range.start);
}else{B.style.left=this.translateToPx(A.start);
B.style.width=this.translateToPx(A.end-A.start+this.range.start);
}},updateStyles:function(){this.handles.each(function(A){Element.removeClassName(A,"selected");
});
Element.addClassName(this.activeHandle,"selected");
},startDrag:function(C){if(Event.isLeftClick(C)){if(!this.disabled){this.active=true;
var D=Event.element(C);
var E=[Event.pointerX(C),Event.pointerY(C)];
var A=D;
if(A==this.track){var B=Position.cumulativeOffset(this.track);
this.event=C;
this.setValue(this.translateToValue((this.isVertical()?E[1]-B[1]:E[0]-B[0])-(this.handleLength/2)));
var B=Position.cumulativeOffset(this.activeHandle);
this.offsetX=(E[0]-B[0]);
this.offsetY=(E[1]-B[1]);
}else{while((this.handles.indexOf(D)==-1)&&D.parentNode){D=D.parentNode;
}if(this.handles.indexOf(D)!=-1){this.activeHandle=D;
this.activeHandleIdx=this.handles.indexOf(this.activeHandle);
this.updateStyles();
var B=Position.cumulativeOffset(this.activeHandle);
this.offsetX=(E[0]-B[0]);
this.offsetY=(E[1]-B[1]);
}}}Event.stop(C);
}},update:function(A){if(this.active){if(!this.dragging){this.dragging=true;
}this.draw(A);
if(Prototype.Browser.WebKit){window.scrollBy(0,0);
}Event.stop(A);
}},draw:function(B){var C=[Event.pointerX(B),Event.pointerY(B)];
var A=Position.cumulativeOffset(this.track);
C[0]-=this.offsetX+A[0];
C[1]-=this.offsetY+A[1];
this.event=B;
this.setValue(this.translateToValue(this.isVertical()?C[1]:C[0]));
if(this.initialized&&this.options.onSlide){this.options.onSlide(this.values.length>1?this.values:this.value,this);
}},endDrag:function(A){if(this.active&&this.dragging){this.finishDrag(A,true);
Event.stop(A);
}this.active=false;
this.dragging=false;
},finishDrag:function(A,B){this.active=false;
this.dragging=false;
this.updateFinished();
},updateFinished:function(){if(this.initialized&&this.options.onChange){this.options.onChange(this.values.length>1?this.values:this.value,this);
}this.event=null;
}});


Ajax.currentRequests={};
Ajax.Responders.register({onCreate:function(A){if(A.options.onlyLatestOfClass&&Ajax.currentRequests[A.options.onlyLatestOfClass]){debug("Aborting former request to "+A.options.onlyLatestOfClass);
try{Ajax.currentRequests[A.options.onlyLatestOfClass].transport.abort();
}catch(B){}}Ajax.currentRequests[A.options.onlyLatestOfClass]=A;
},onComplete:function(A){if(A.options.onlyLatestOfClass){Ajax.currentRequests[A.options.onlyLatestOfClass]=null;
}}});
Object.extend(Prototype,{CommentFragment:"(?:<!--)((\n|\r|.)*?)(?:-->)"});
Object.extend(String.prototype,{stripComments:function(){return this.replace(new RegExp(Prototype.CommentFragment,"img"),"");
},extractScripts:function(){var B=new RegExp(Prototype.ScriptFragment,"img");
var A=new RegExp(Prototype.ScriptFragment,"im");
return(this.stripComments().match(B)||[]).map(function(C){return(C.match(A)||["",""])[1];
});
}});


/*
 * jQuery 1.1.4 - New Wave Javascript
 *
 * Copyright (c) 2007 John Resig (jquery.com)
 * Dual licensed under the MIT (MIT-LICENSE.txt)
 * and GPL (GPL-LICENSE.txt) licenses.
 *
 * $Date: 2007-08-23 21:49:27 -0400 (Thu, 23 Aug 2007) $
 * $Rev: 2862 $
 */
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(9(){6(1f C!="Q")E v=C;E C=19.16=9(a,c){6(19==7||!7.4a)F 1s C(a,c);F 7.4a(a,c)};6(1f $!="Q")E B=$;19.$=C;E q=/^[^<]*(<(.|\\s)+>)[^>]*$|^#(\\w+)$/;C.15=C.3v={4a:9(a,c){a=a||R;6(1f a=="1E"){E m=q.2d(a);6(m&&(m[1]||!c)){6(m[1])a=C.3c([m[1]]);G{E b=R.37(m[3]);6(b)6(b.2j!=m[3])F C().1F(a);G{7[0]=b;7.H=1;F 7}G a=[]}}G F 1s C(c).1F(a)}G 6(C.1g(a))F 1s C(R)[C.15.1L?"1L":"2f"](a);F 7.5J(a.1b==1K&&a||(a.3w||a.H&&a!=19&&!a.1t&&a[0]!=Q&&a[0].1t)&&C.2V(a)||[a])},3w:"1.1.4",7K:9(){F 7.H},H:0,21:9(a){F a==Q?C.2V(7):7[a]},1O:9(a){E b=C(a);b.5c=7;F b},5J:9(a){7.H=0;1K.3v.Y.T(7,a);F 7},J:9(a,b){F C.J(7,a,b)},45:9(a){E b=-1;7.J(9(i){6(7==a)b=i});F b},1j:9(f,d,e){E c=f;6(f.1b==3n)6(d==Q)F 7.H&&C[e||"1j"](7[0],f)||Q;G{c={};c[f]=d}F 7.J(9(a){I(E b 17 c)C.1j(e?7.S:7,b,C.4Q(7,c[b],e,a,b))})},1h:9(b,a){F 7.1j(b,a,"34")},2Q:9(e){6(1f e!="4P"&&e!=K)F 7.3K().3H(R.60(e));E t="";C.J(e||7,9(){C.J(7.2Z,9(){6(7.1t!=8)t+=7.1t!=1?7.5S:C.15.2Q([7])})});F t},82:9(){E a,2e=1a;F 7.J(9(){6(!a)a=C.3c(2e,7.2I);E b=a[0].3B(O);7.P.2p(b,7);20(b.1k)b=b.1k;b.4p(7)})},3H:9(){F 7.2J(1a,O,1,9(a){7.4p(a)})},5v:9(){F 7.2J(1a,O,-1,9(a){7.2p(a,7.1k)})},5u:9(){F 7.2J(1a,M,1,9(a){7.P.2p(a,7)})},5t:9(){F 7.2J(1a,M,-1,9(a){7.P.2p(a,7.2a)})},3L:9(){F 7.5c||C([])},1F:9(t){E b=C.3M(7,9(a){F C.1F(t,a)});F 7.1O(/[^+>] [^+>]/.1d(t)||t.U("..")>-1?C.4d(b):b)},7o:9(e){e=e!=Q?e:O;E d=7.1r(7.1F("*"));6(C.N.12){d.J(9(){7.2l$1i={};I(E a 17 7.$1i)7.2l$1i[a]=C.14({},7.$1i[a])}).49()}E r=7.1O(C.3M(7,9(a){F a.3B(e)}));6(C.N.12){d.J(9(){E c=7.2l$1i;I(E a 17 c)I(E b 17 c[a])C.1c.1r(7,a,c[a][b],c[a][b].V);7.2l$1i=K})}6(e){E f=r.1r(r.1F(\'*\')).1l(\'2b,39[@L=3i]\');d.1l(\'2b,39[@L=3i]\').J(9(i){6(7.3j)f[i].3j=7.3j;6(7.27)f[i].27=O})}F r},1l:9(t){F 7.1O(C.1g(t)&&C.2B(7,9(b,a){F t.T(b,[a])})||C.2R(t,7))},5l:9(t){F 7.1O(t.1b==3n&&C.2R(t,7,O)||C.2B(7,9(a){F(t.1b==1K||t.3w)?C.4K(a,t)<0:a!=t}))},1r:9(t){F 7.1O(C.29(7.21(),t.1b==3n?C(t).21():t.H!=Q&&(!t.W||t.W=="6s")?t:[t]))},3y:9(a){F a?C.2R(a,7).H>0:M},2G:9(a){F a==Q?(7.H?7[0].2A:K):7.1j("2A",a)},5W:9(a){F a==Q?(7.H?7[0].2W:K):7.3K().3H(a)},3S:9(){F 7.1O(1K.3v.3S.T(7,1a))},2J:9(f,d,g,e){E c=7.H>1,a;F 7.J(9(){6(!a){a=C.3c(f,7.2I);6(g<0)a.8E()}E b=7;6(d&&C.W(7,"1A")&&C.W(a[0],"3O"))b=7.4L("1w")[0]||7.4p(R.6a("1w"));C.J(a,9(){6(C.W(7,"33")){6(7.32)C.31({1G:7.32,2w:M,3G:"33"});G C.4E(7.2Q||7.5Z||7.2W||"")}G e.T(b,[c?7.3B(O):7])})})}};C.14=C.15.14=9(){E c=1a[0]||{},a=1,1M=1a.H,4D=M;6(c.1b==8d){4D=c;c=1a[1]||{}}6(1M==1){c=7;a=0}E b;I(;a<1M;a++)6((b=1a[a])!=K)I(E i 17 b){6(c==b[i])5X;6(4D&&1f b[i]==\'4P\'&&c[i])C.14(c[i],b[i]);G 6(b[i]!=Q)c[i]=b[i]}F c};C.14({8a:9(a){19.$=B;6(a)19.16=v;F C},1g:9(a){F!!a&&1f a!="1E"&&!a.W&&a.1b!=1K&&/9/i.1d(a+"")},3E:9(a){F a.3D&&!a.4z||a.4y&&a.2I&&!a.2I.4z},4E:9(a){a=C.2s(a);6(a){6(19.5N)19.5N(a);G 6(C.N.1H)19.4x(a,0);G 2T.2S(19,a)}},W:9(b,a){F b.W&&b.W.1I()==a.1I()},J:9(a,b,c){6(c){6(a.H==Q)I(E i 17 a)b.T(a[i],c);G I(E i=0,3A=a.H;i<3A;i++)6(b.T(a[i],c)===M)1J}G{6(a.H==Q)I(E i 17 a)b.2S(a[i],i,a[i]);G I(E i=0,3A=a.H,2G=a[0];i<3A&&b.2S(2G,i,2G)!==M;2G=a[++i]){}}F a},4Q:9(c,b,d,e,a){6(C.1g(b))b=b.2S(c,[e]);E f=/z-?45|7S-?7Q|1e|5y|7O-?1u/i;F b&&b.1b==3x&&d=="34"&&!f.1d(a)?b+"4t":b},18:{1r:9(b,c){C.J((c||"").2M(/\\s+/),9(i,a){6(!C.18.2N(b.18,a))b.18+=(b.18?" ":"")+a})},23:9(b,c){b.18=c!=Q?C.2B(b.18.2M(/\\s+/),9(a){F!C.18.2N(c,a)}).5w(" "):""},2N:9(t,c){F C.4K(c,(t.18||t).3s().2M(/\\s+/))>-1}},1V:9(e,o,f){I(E i 17 o){e.S["2U"+i]=e.S[i];e.S[i]=o[i]}f.T(e,[]);I(E i 17 o)e.S[i]=e.S["2U"+i]},1h:9(e,p){6(p=="1u"||p=="24"){E b={},3p,3o,d=["7J","7G","7F","7B"];C.J(d,9(){b["7A"+7]=0;b["7x"+7+"7u"]=0});C.1V(e,b,9(){6(C(e).3y(\':4N\')){3p=e.7t;3o=e.7q}G{e=C(e.3B(O)).1F(":4e").5d("27").3L().1h({3V:"1C",3k:"7n",11:"2m",7h:"0",7e:"0"}).57(e.P)[0];E a=C.1h(e.P,"3k")||"3g";6(a=="3g")e.P.S.3k="76";3p=e.74;3o=e.71;6(a=="3g")e.P.S.3k="3g";e.P.3e(e)}});F p=="1u"?3p:3o}F C.34(e,p)},34:9(h,d,g){E i,1R=[],1V=[];9 2E(a){6(!C.N.1H)F M;E b=R.2L.3b(a,K);F!b||b.44("2E")==""}6(d=="1e"&&C.N.12){i=C.1j(h.S,"1e");F i==""?"1":i}6(d.2k(/3a/i))d=x;6(!g&&h.S[d])i=h.S[d];G 6(R.2L&&R.2L.3b){6(d.2k(/3a/i))d="3a";d=d.1v(/([A-Z])/g,"-$1").2D();E e=R.2L.3b(h,K);6(e&&!2E(h))i=e.44(d);G{I(E a=h;a&&2E(a);a=a.P)1R.42(a);I(a=0;a<1R.H;a++)6(2E(1R[a])){1V[a]=1R[a].S.11;1R[a].S.11="2m"}i=d=="11"&&1V[1R.H-1]!=K?"1T":R.2L.3b(h,K).44(d)||"";I(a=0;a<1V.H;a++)6(1V[a]!=K)1R[a].S.11=1V[a]}6(d=="1e"&&i=="")i="1"}G 6(h.41){E f=d.1v(/\\-(\\w)/g,9(m,c){F c.1I()});i=h.41[d]||h.41[f]}F i},3c:9(a,c){E r=[];c=c||R;C.J(a,9(i,b){6(!b)F;6(b.1b==3x)b=b.3s();6(1f b=="1E"){E s=C.2s(b).2D(),1m=c.6a("1m"),1P=[];E a=!s.U("<1Z")&&[1,"<2b>","</2b>"]||!s.U("<6L")&&[1,"<4V>","</4V>"]||s.2k(/^<(6I|1w|6H|6F|6D)/)&&[1,"<1A>","</1A>"]||!s.U("<3O")&&[2,"<1A><1w>","</1w></1A>"]||(!s.U("<6A")||!s.U("<6y"))&&[3,"<1A><1w><3O>","</3O></1w></1A>"]||!s.U("<6x")&&[2,"<1A><1w></1w><4T>","</4T></1A>"]||C.N.12&&[1,"1m<1m>","</1m>"]||[0,"",""];1m.2W=a[1]+b+a[2];20(a[0]--)1m=1m.3Y;6(C.N.12){6(!s.U("<1A")&&s.U("<1w")<0)1P=1m.1k&&1m.1k.2Z;G 6(a[1]=="<1A>"&&s.U("<1w")<0)1P=1m.2Z;I(E n=1P.H-1;n>=0;--n)6(C.W(1P[n],"1w")&&!1P[n].2Z.H)1P[n].P.3e(1P[n]);6(/^\\s/.1d(b))1m.2p(c.60(b.2k(/^\\s*/)[0]),1m.1k)}b=C.2V(1m.2Z)}6(0===b.H&&(!C.W(b,"38")&&!C.W(b,"2b")))F;6(b[0]==Q||C.W(b,"38")||b.6u)r.Y(b);G r=C.29(r,b)});F r},1j:9(c,d,a){E e=C.3E(c)?{}:C.4q;6(d=="28"&&C.N.1H)c.P.3j;6(e[d]){6(a!=Q)c[e[d]]=a;F c[e[d]]}G 6(C.N.12&&d=="S")F C.1j(c.S,"6p",a);G 6(a==Q&&C.N.12&&C.W(c,"38")&&(d=="6n"||d=="6m"))F c.6k(d).5S;G 6(c.4y){6(a!=Q)c.6j(d,a);6(C.N.12&&/5R|32/.1d(d)&&!C.3E(c))F c.3F(d,2);F c.3F(d)}G{6(d=="1e"&&C.N.12){6(a!=Q){c.5y=1;c.1l=(c.1l||"").1v(/5T\\([^)]*\\)/,"")+(3m(a).3s()=="6d"?"":"5T(1e="+a*6c+")")}F c.1l?(3m(c.1l.2k(/1e=([^)]*)/)[1])/6c).3s():""}d=d.1v(/-([a-z])/8I,9(z,b){F b.1I()});6(a!=Q)c[d]=a;F c[d]}},2s:9(t){F(t||"").1v(/^\\s+|\\s+$/g,"")},2V:9(a){E r=[];6(1f a!="8H")I(E i=0,1M=a.H;i<1M;i++)r.Y(a[i]);G r=a.3S(0);F r},4K:9(b,a){I(E i=0,1M=a.H;i<1M;i++)6(a[i]==b)F i;F-1},29:9(a,b){6(C.N.12){I(E i=0;b[i];i++)6(b[i].1t!=8)a.Y(b[i])}G I(E i=0;b[i];i++)a.Y(b[i]);F a},4d:9(a){E r=[],4O=C.1q++;2g{I(E i=0,69=a.H;i<69;i++)6(4O!=a[i].1q){a[i].1q=4O;r.Y(a[i])}}2h(e){r=a}F r},1q:0,2B:9(b,a,c){6(1f a=="1E")a=2T("M||9(a,i){F "+a+"}");E d=[];I(E i=0,3P=b.H;i<3P;i++)6(!c&&a(b[i],i)||c&&!a(b[i],i))d.Y(b[i]);F d},3M:9(c,b){6(1f b=="1E")b=2T("M||9(a){F "+b+"}");E d=[];I(E i=0,3P=c.H;i<3P;i++){E a=b(c[i],i);6(a!==K&&a!=Q){6(a.1b!=1K)a=[a];d=d.8x(a)}}F d}});E u=8w.8u.2D();C.N={6b:(u.2k(/.+(?:8s|8q|8p|8o)[\\/: ]([\\d.]+)/)||[])[1],1H:/61/.1d(u),2t:/2t/.1d(u),12:/12/.1d(u)&&!/2t/.1d(u),3J:/3J/.1d(u)&&!/(8n|61)/.1d(u)};E x=C.N.12?"3I":"4G";C.14({8m:!C.N.12||R.8l=="8k",3I:C.N.12?"3I":"4G",4q:{"I":"8j","8i":"18","3a":x,4G:x,3I:x,2W:"2W",18:"18",2A:"2A",30:"30",27:"27",8h:"8g",28:"28",8f:"8e"}});C.J({5Y:"a.P",4C:"16.4C(a)",8c:"16.25(a,2,\'2a\')",8b:"16.25(a,2,\'4B\')",88:"16.4A(a.P.1k,a)",87:"16.4A(a.1k)"},9(i,n){C.15[i]=9(a){E b=C.3M(7,n);6(a&&1f a=="1E")b=C.2R(a,b);F 7.1O(C.4d(b))}});C.J({57:"3H",86:"5v",2p:"5u",85:"5t"},9(i,n){C.15[i]=9(){E a=1a;F 7.J(9(){I(E j=0,1M=a.H;j<1M;j++)C(a[j])[n](7)})}});C.J({5d:9(a){C.1j(7,a,"");7.84(a)},83:9(c){C.18.1r(7,c)},81:9(c){C.18.23(7,c)},80:9(c){C.18[C.18.2N(7,c)?"23":"1r"](7,c)},23:9(a){6(!a||C.1l(a,[7]).r.H)7.P.3e(7)},3K:9(){20(7.1k)7.3e(7.1k)}},9(i,n){C.15[i]=9(){F 7.J(n,1a)}});C.J(["5Q","5P","5M","5L"],9(i,n){C.15[n]=9(a,b){F 7.1l(":"+n+"("+a+")",b)}});C.J(["1u","24"],9(i,n){C.15[n]=9(h){F h==Q?(7.H?C.1h(7[0],n):K):7.1h(n,h.1b==3n?h:h+"4t")}});E A=C.N.1H&&5K(C.N.6b)<7Z?"(?:[\\\\w*2l-]|\\\\\\\\.)":"(?:[\\\\w\\7Y-\\7V*2l-]|\\\\\\\\.)",5I=1s 3C("^[/>]\\\\s*("+A+"+)"),5H=1s 3C("^("+A+"+)(#)("+A+"+)"),5G=1s 3C("^([#.]?)("+A+"*)");C.14({4w:{"":"m[2]==\'*\'||16.W(a,m[2])","#":"a.3F(\'2j\')==m[2]",":":{5P:"i<m[3]-0",5M:"i>m[3]-0",25:"m[3]-0==i",5Q:"m[3]-0==i",2H:"i==0",2P:"i==r.H-1",5E:"i%2==0",5D:"i%2","2H-3z":"a.P.4L(\'*\')[0]==a","2P-3z":"16.25(a.P.3Y,1,\'4B\')==a","7U-3z":"!16.25(a.P.3Y,2,\'4B\')",5Y:"a.1k",3K:"!a.1k",5L:"(a.5Z||a.7T||\'\').U(m[3])>=0",4N:\'"1C"!=a.L&&16.1h(a,"11")!="1T"&&16.1h(a,"3V")!="1C"\',1C:\'"1C"==a.L||16.1h(a,"11")=="1T"||16.1h(a,"3V")=="1C"\',7R:"!a.30",30:"a.30",27:"a.27",28:"a.28||16.1j(a,\'28\')",2Q:"\'2Q\'==a.L",4e:"\'4e\'==a.L",3i:"\'3i\'==a.L",4v:"\'4v\'==a.L",5C:"\'5C\'==a.L",4u:"\'4u\'==a.L",5B:"\'5B\'==a.L",5A:"\'5A\'==a.L",1X:\'"1X"==a.L||16.W(a,"1X")\',39:"/39|2b|7P|1X/i.1d(a.W)",2N:"16.1F(m[3],a).H"},"[":"16.1F(m[2],a).H"},5x:[/^\\[ *(@)([\\w-]+) *([!*$^~=]*) *(\'?"?)(.*?)\\4 *\\]/,/^(\\[)\\s*(.*?(\\[.*?\\])?[^[]*?)\\s*\\]/,/^(:)([\\w-]+)\\("?\'?(.*?(\\(.*?\\))?[^(]*?)"?\'?\\)/,1s 3C("^([:.#]*)("+A+"+)")],2R:9(a,c,b){E d,1Y=[];20(a&&a!=d){d=a;E f=C.1l(a,c,b);a=f.t.1v(/^\\s*,\\s*/,"");1Y=b?c=f.r:C.29(1Y,f.r)}F 1Y},1F:9(t,l){6(1f t!="1E")F[t];6(l&&!l.1t)l=K;l=l||R;6(!t.U("//")){t=t.2K(2,t.H)}G 6(!t.U("/")&&!l.2I){l=l.3D;t=t.2K(1,t.H);6(t.U("/")>=1)t=t.2K(t.U("/"),t.H)}E d=[l],2q=[],2P;20(t&&2P!=t){E r=[];2P=t;t=C.2s(t).1v(/^\\/\\//,"");E k=M;E g=5I;E m=g.2d(t);6(m){E o=m[1].1I();I(E i=0;d[i];i++)I(E c=d[i].1k;c;c=c.2a)6(c.1t==1&&(o=="*"||c.W.1I()==o.1I()))r.Y(c);d=r;t=t.1v(g,"");6(t.U(" ")==0)5X;k=O}G{g=/^((\\/?\\.\\.)|([>\\/+~]))\\s*(\\w*)/i;6((m=g.2d(t))!=K){r=[];E o=m[4],1q=C.1q++;m=m[1];I(E j=0,2o=d.H;j<2o;j++)6(m.U("..")<0){E n=m=="~"||m=="+"?d[j].2a:d[j].1k;I(;n;n=n.2a)6(n.1t==1){6(m=="~"&&n.1q==1q)1J;6(!o||n.W.1I()==o.1I()){6(m=="~")n.1q=1q;r.Y(n)}6(m=="+")1J}}G r.Y(d[j].P);d=r;t=C.2s(t.1v(g,""));k=O}}6(t&&!k){6(!t.U(",")){6(l==d[0])d.4s();2q=C.29(2q,d);r=d=[l];t=" "+t.2K(1,t.H)}G{E h=5H;E m=h.2d(t);6(m){m=[0,m[2],m[3],m[1]]}G{h=5G;m=h.2d(t)}m[2]=m[2].1v(/\\\\/g,"");E f=d[d.H-1];6(m[1]=="#"&&f&&f.37&&!C.3E(f)){E p=f.37(m[2]);6((C.N.12||C.N.2t)&&p&&1f p.2j=="1E"&&p.2j!=m[2])p=C(\'[@2j="\'+m[2]+\'"]\',f)[0];d=r=p&&(!m[3]||C.W(p,m[3]))?[p]:[]}G{I(E i=0;d[i];i++){E a=m[1]!=""||m[0]==""?"*":m[2];6(a=="*"&&d[i].W.2D()=="4P")a="2O";r=C.29(r,d[i].4L(a))}6(m[1]==".")r=C.4r(r,m[2]);6(m[1]=="#"){E e=[];I(E i=0;r[i];i++)6(r[i].3F("2j")==m[2]){e=[r[i]];1J}r=e}d=r}t=t.1v(h,"")}}6(t){E b=C.1l(t,r);d=r=b.r;t=C.2s(b.t)}}6(t)d=[];6(d&&l==d[0])d.4s();2q=C.29(2q,d);F 2q},4r:9(r,m,a){m=" "+m+" ";E c=[];I(E i=0;r[i];i++){E b=(" "+r[i].18+" ").U(m)>=0;6(!a&&b||a&&!b)c.Y(r[i])}F c},1l:9(t,r,h){E d;20(t&&t!=d){d=t;E p=C.5x,m;I(E i=0;p[i];i++){m=p[i].2d(t);6(m){t=t.7N(m[0].H);m[2]=m[2].1v(/\\\\/g,"");1J}}6(!m)1J;6(m[1]==":"&&m[2]=="5l")r=C.1l(m[3],r,O).r;G 6(m[1]==".")r=C.4r(r,m[2],h);G 6(m[1]=="@"){E g=[],L=m[3];I(E i=0,2o=r.H;i<2o;i++){E a=r[i],z=a[C.4q[m[2]]||m[2]];6(z==K||/5R|32|28/.1d(m[2]))z=C.1j(a,m[2])||\'\';6((L==""&&!!z||L=="="&&z==m[5]||L=="!="&&z!=m[5]||L=="^="&&z&&!z.U(m[5])||L=="$="&&z.2K(z.H-m[5].H)==m[5]||(L=="*="||L=="~=")&&z.U(m[5])>=0)^h)g.Y(a)}r=g}G 6(m[1]==":"&&m[2]=="25-3z"){E e=C.1q++,g=[],1d=/(\\d*)n\\+?(\\d*)/.2d(m[3]=="5E"&&"2n"||m[3]=="5D"&&"2n+1"||!/\\D/.1d(m[3])&&"n+"+m[3]||m[3]),2H=(1d[1]||1)-0,d=1d[2]-0;I(E i=0,2o=r.H;i<2o;i++){E j=r[i],P=j.P;6(e!=P.1q){E c=1;I(E n=P.1k;n;n=n.2a)6(n.1t==1)n.4o=c++;P.1q=e}E b=M;6(2H==1){6(d==0||j.4o==d)b=O}G 6((j.4o+d)%2H==0)b=O;6(b^h)g.Y(j)}r=g}G{E f=C.4w[m[1]];6(1f f!="1E")f=C.4w[m[1]][m[2]];f=2T("M||9(a,i){F "+f+"}");r=C.2B(r,f,h)}}F{r:r,t:t}},4C:9(c){E b=[];E a=c.P;20(a&&a!=R){b.Y(a);a=a.P}F b},25:9(a,e,c,b){e=e||1;E d=0;I(;a;a=a[c])6(a.1t==1&&++d==e)1J;F a},4A:9(n,a){E r=[];I(;n;n=n.2a){6(n.1t==1&&(!a||n!=a))r.Y(n)}F r}});C.1c={1r:9(f,d,c,b){6(C.N.12&&f.3t!=Q)f=19;6(!c.22)c.22=7.22++;6(b!=Q){E e=c;c=9(){F e.T(7,1a)};c.V=b;c.22=e.22}6(!f.$1i)f.$1i={};6(!f.$1y)f.$1y=9(){E a;6(1f C=="Q"||C.1c.4n)F a;a=C.1c.1y.T(f,1a);F a};E g=f.$1i[d];6(!g){g=f.$1i[d]={};6(f.4m)f.4m(d,f.$1y,M);G f.7M("3r"+d,f.$1y)}g[c.22]=c;7.1D[d]=O},22:1,1D:{},23:9(c,b,a){E d=c.$1i,2c,45;6(d){6(b&&b.L){a=b.4l;b=b.L}6(!b){I(b 17 d)7.23(c,b)}G 6(d[b]){6(a)4k d[b][a.22];G I(a 17 c.$1i[b])4k d[b][a];I(2c 17 d[b])1J;6(!2c){6(c.4j)c.4j(b,c.$1y,M);G c.7L("3r"+b,c.$1y);2c=K;4k d[b]}}I(2c 17 d)1J;6(!2c)c.$1y=c.$1i=K}},1z:9(c,b,d){b=C.2V(b||[]);6(!d){6(7.1D[c])C("*").1r([19,R]).1z(c,b)}G{E a,2c,15=C.1g(d[c]||K);b.42(7.4i({L:c,1S:d}));6(C.1g(d.$1y))a=d.$1y.T(d,b);6(!15&&d["3r"+c]&&d["3r"+c].T(d,b)===M)a=M;6(15&&a!==M&&!(C.W(d,\'a\')&&c=="4h")){7.4n=O;d[c]()}7.4n=M}},1y:9(b){E a;b=C.1c.4i(b||19.1c||{});E c=7.$1i&&7.$1i[b.L],2e=1K.3v.3S.2S(1a,1);2e.42(b);I(E j 17 c){2e[0].4l=c[j];2e[0].V=c[j].V;6(c[j].T(7,2e)===M){b.2u();b.2X();a=M}}6(C.N.12)b.1S=b.2u=b.2X=b.4l=b.V=K;F a},4i:9(c){E a=c;c=C.14({},a);c.2u=9(){6(a.2u)a.2u();a.7I=M};c.2X=9(){6(a.2X)a.2X();a.7H=O};6(!c.1S&&c.5r)c.1S=c.5r;6(C.N.1H&&c.1S.1t==3)c.1S=a.1S.P;6(!c.4g&&c.4F)c.4g=c.4F==c.1S?c.7C:c.4F;6(c.5p==K&&c.66!=K){E e=R.3D,b=R.4z;c.5p=c.66+(e&&e.5o||b.5o||0);c.7z=c.7v+(e&&e.5m||b.5m||0)}6(!c.3Q&&(c.5k||c.5j))c.3Q=c.5k||c.5j;6(!c.5i&&c.5g)c.5i=c.5g;6(!c.3Q&&c.1X)c.3Q=(c.1X&1?1:(c.1X&2?3:(c.1X&4?2:0)));F c}};C.15.14({3l:9(c,a,b){F c=="5f"?7.5e(c,a,b):7.J(9(){C.1c.1r(7,c,b||a,b&&a)})},5e:9(d,b,c){F 7.J(9(){C.1c.1r(7,d,9(a){C(7).49(a);F(c||b).T(7,1a)},c&&b)})},49:9(a,b){F 7.J(9(){C.1c.23(7,a,b)})},1z:9(a,b){F 7.J(9(){C.1c.1z(a,b,7)})},1W:9(){E a=1a;F 7.4h(9(e){7.3T=0==7.3T?1:0;e.2u();F a[7.3T].T(7,[e])||M})},7p:9(f,g){9 3U(e){E p=e.4g;20(p&&p!=7)2g{p=p.P}2h(e){p=7};6(p==7)F M;F(e.L=="3W"?f:g).T(7,[e])}F 7.3W(3U).5b(3U)},1L:9(f){5a();6(C.36)f.T(R,[C]);G C.2C.Y(9(){F f.T(7,[C])});F 7}});C.14({36:M,2C:[],1L:9(){6(!C.36){C.36=O;6(C.2C){C.J(C.2C,9(){7.T(R)});C.2C=K}6(C.N.3J||C.N.2t)R.4j("59",C.1L,M);6(!19.7m.H)C(19).2f(9(){C("#4b").23()})}}});C.J(("7l,7k,2f,7j,7i,5f,4h,7g,"+"7f,7d,7c,3W,5b,7b,2b,"+"4u,7a,79,78,3f").2M(","),9(i,o){C.15[o]=9(f){F f?7.3l(o,f):7.1z(o)}});E w=M;9 5a(){6(w)F;w=O;6(C.N.3J||C.N.2t)R.4m("59",C.1L,M);G 6(C.N.12){R.75("<73"+"72 2j=4b 70=O "+"32=//:><\\/33>");E a=R.37("4b");6(a)a.6Z=9(){6(R.3d!="1x")F;C.1L()};a=K}G 6(C.N.1H)C.48=3t(9(){6(R.3d=="6Y"||R.3d=="1x"){47(C.48);C.48=K;C.1L()}},10);C.1c.1r(19,"2f",C.1L)}C.15.14({6X:9(c,b,a){7.2f(c,b,a,1)},2f:9(g,e,c,d){6(C.1g(g))F 7.3l("2f",g);c=c||9(){};E f="46";6(e)6(C.1g(e)){c=e;e=K}G{e=C.2O(e);f="55"}E h=7;C.31({1G:g,L:f,V:e,2F:d,1x:9(a,b){6(b=="1U"||!d&&b=="54")h.5W(a.43);4x(9(){h.J(c,[a.43,b,a])},13)}});F 7},6W:9(){F C.2O(7)},6V:9(){}});C.J("53,52,51,50,4Z,5h".2M(","),9(i,o){C.15[o]=9(f){F 7.3l(o,f)}});C.14({21:9(e,c,a,d,b){6(C.1g(c)){a=c;c=K}F C.31({L:"46",1G:e,V:c,1U:a,3G:d,2F:b})},6U:9(d,b,a,c){F C.21(d,b,a,c,1)},6T:9(b,a){F C.21(b,K,a,"33")},77:9(c,b,a){F C.21(c,b,a,"56")},6S:9(d,b,a,c){6(C.1g(b)){a=b;b={}}F C.31({L:"55",1G:d,V:b,1U:a,3G:c})},6R:9(a){C.3u.1Q=a},6Q:9(a){C.14(C.3u,a)},3u:{1D:O,L:"46",1Q:0,4Y:"6P/x-6O-38-6N",4X:O,2w:O,V:K},3h:{},31:9(s){s=C.14(O,s,C.14(O,{},C.3u,s));6(s.V){6(s.4X&&1f s.V!="1E")s.V=C.2O(s.V);6(s.L.2D()=="21"){s.1G+=(s.1G.U("?")>-1?"&":"?")+s.V;s.V=K}}6(s.1D&&!C.40++)C.1c.1z("53");E f=M;E h=19.4W?1s 4W("6M.6K"):1s 58();h.6J(s.L,s.1G,s.2w);6(s.V)h.4c("7r-7s",s.4Y);6(s.2F)h.4c("6G-3Z-6E",C.3h[s.1G]||"7w, 6C 7y 6B 4J:4J:4J 6z");h.4c("X-7D-7E","58");6(s.4U)s.4U(h);6(s.1D)C.1c.1z("5h",[h,s]);E g=9(d){6(!f&&h&&(h.3d==4||d=="1Q")){f=O;6(i){47(i);i=K}E c=d=="1Q"&&"1Q"||!C.5n(h)&&"3f"||s.2F&&C.5s(h,s.1G)&&"54"||"1U";6(c=="1U"){2g{E a=C.5q(h,s.3G)}2h(e){c="4I"}}6(c=="1U"){E b;2g{b=h.4f("4S-3Z")}2h(e){}6(s.2F&&b)C.3h[s.1G]=b;6(s.1U)s.1U(a,c);6(s.1D)C.1c.1z("4Z",[h,s])}G C.3X(s,h,c);6(s.1D)C.1c.1z("51",[h,s]);6(s.1D&&!--C.40)C.1c.1z("52");6(s.1x)s.1x(h,c);6(s.2w)h=K}};6(s.2w){E i=3t(g,13);6(s.1Q>0)4x(9(){6(h){h.6w();6(!f)g("1Q")}},s.1Q)}2g{h.6v(s.V)}2h(e){C.3X(s,h,K,e)}6(!s.2w)g();F h},3X:9(s,a,b,e){6(s.3f)s.3f(a,b,e);6(s.1D)C.1c.1z("50",[a,s,e])},40:0,5n:9(r){2g{F!r.26&&6t.6r=="4v:"||(r.26>=4R&&r.26<6q)||r.26==5z||C.N.1H&&r.26==Q}2h(e){}F M},5s:9(a,c){2g{E b=a.4f("4S-3Z");F a.26==5z||b==C.3h[c]||C.N.1H&&a.26==Q}2h(e){}F M},5q:9(r,a){E b=r.4f("6o-L");E c=a=="5F"||!a&&b&&b.U("5F")>=0;V=c?r.7W:r.43;6(c&&V.3D.4y=="4I")7X"4I";6(a=="33")C.4E(V);6(a=="56")V=2T("("+V+")");F V},2O:9(a){E s=[];6(a.1b==1K||a.3w)C.J(a,9(){s.Y(2y(7.6l)+"="+2y(7.2A))});G I(E j 17 a)6(a[j]&&a[j].1b==1K)C.J(a[j],9(){s.Y(2y(j)+"="+2y(7))});G s.Y(2y(j)+"="+2y(a[j]));F s.5w("&")}});C.15.14({1o:9(b,a){F b?7.1B({1u:"1o",24:"1o",1e:"1o"},b,a):7.1l(":1C").J(9(){7.S.11=7.2r?7.2r:"";6(C.1h(7,"11")=="1T")7.S.11="2m"}).3L()},1p:9(b,a){F b?7.1B({1u:"1p",24:"1p",1e:"1p"},b,a):7.1l(":4N").J(9(){7.2r=7.2r||C.1h(7,"11");6(7.2r=="1T")7.2r="2m";7.S.11="1T"}).3L()},5O:C.15.1W,1W:9(a,b){F C.1g(a)&&C.1g(b)?7.5O(a,b):a?7.1B({1u:"1W",24:"1W",1e:"1W"},a,b):7.J(9(){C(7)[C(7).3y(":1C")?"1o":"1p"]()})},6i:9(b,a){F 7.1B({1u:"1o"},b,a)},6h:9(b,a){F 7.1B({1u:"1p"},b,a)},6g:9(b,a){F 7.1B({1u:"1W"},b,a)},6f:9(b,a){F 7.1B({1e:"1o"},b,a)},89:9(b,a){F 7.1B({1e:"1p"},b,a)},6e:9(c,a,b){F 7.1B({1e:a},c,b)},1B:9(d,h,f,g){F 7.1n(9(){E c=C(7).3y(":1C"),1Z=C.5V(h,f,g),5U=7;I(E p 17 d){6(d[p]=="1p"&&c||d[p]=="1o"&&!c)F C.1g(1Z.1x)&&1Z.1x.T(7);6(p=="1u"||p=="24"){1Z.11=C.1h(7,"11");1Z.2z=7.S.2z}}6(1Z.2z!=K)7.S.2z="1C";7.2v=C.14({},d);C.J(d,9(a,b){E e=1s C.2Y(5U,1Z,a);6(b.1b==3x)e.3R(e.1Y()||0,b);G e[b=="1W"?c?"1o":"1p":b](d)});F O})},1n:9(a,b){6(!b){b=a;a="2Y"}F 7.J(9(){6(!7.1n)7.1n={};6(!7.1n[a])7.1n[a]=[];7.1n[a].Y(b);6(7.1n[a].H==1)b.T(7)})}});C.14({5V:9(b,a,c){E d=b&&b.1b==8G?b:{1x:c||!c&&a||C.1g(b)&&b,1N:b,35:c&&a||a&&a.1b!=8F&&a};d.1N=(d.1N&&d.1N.1b==3x?d.1N:{8D:8C,8B:4R}[d.1N])||8A;d.2U=d.1x;d.1x=9(){C.68(7,"2Y");6(C.1g(d.2U))d.2U.T(7)};F d},35:{62:9(p,n,b,a){F b+a*p},4H:9(p,n,b,a){F((-67.8z(p*67.8y)/2)+0.5)*a+b}},1n:{},68:9(b,a){a=a||"2Y";6(b.1n&&b.1n[a]){b.1n[a].4s();E f=b.1n[a][0];6(f)f.T(b)}},3N:[],2Y:9(f,e,g){E z=7;E y=f.S;z.a=9(){6(e.3q)e.3q.T(f,[z.2x]);6(g=="1e")C.1j(y,"1e",z.2x);G{y[g]=5K(z.2x)+"4t";6(g=="1u"||g=="24")y.11="2m"}};z.65=9(){F 3m(C.1h(f,g))};z.1Y=9(){E r=3m(C.34(f,g));F r&&r>-8v?r:z.65()};z.3R=9(c,b){z.4M=(1s 64()).63();z.2x=c;z.a();C.3N.Y(9(){F z.3q(c,b)});6(C.3N.H==1){E d=3t(9(){E a=C.3N;I(E i=0;i<a.H;i++)6(!a[i]())a.8t(i--,1);6(!a.H)47(d)},13)}};z.1o=9(){6(!f.2i)f.2i={};f.2i[g]=C.1j(f.S,g);e.1o=O;z.3R(0,7.1Y());6(g!="1e")y[g]="8r";C(f).1o()};z.1p=9(){6(!f.2i)f.2i={};f.2i[g]=C.1j(f.S,g);e.1p=O;z.3R(7.1Y(),0)};z.3q=9(a,c){E t=(1s 64()).63();6(t>e.1N+z.4M){z.2x=c;z.a();6(f.2v)f.2v[g]=O;E b=O;I(E i 17 f.2v)6(f.2v[i]!==O)b=M;6(b){6(e.11!=K){y.2z=e.2z;y.11=e.11;6(C.1h(f,"11")=="1T")y.11="2m"}6(e.1p)y.11="1T";6(e.1p||e.1o)I(E p 17 f.2v)C.1j(y,p,f.2i[p])}6(b&&C.1g(e.1x))e.1x.T(f);F M}G{E n=t-7.4M;E p=n/e.1N;z.2x=C.35[e.35||(C.35.4H?"4H":"62")](p,n,a,(c-a),e.1N);z.a()}F O}}})})();',62,541,'||||||if|this||function|||||||||||||||||||||||||||||||var|return|else|length|for|each|null|type|false|browser|true|parentNode|undefined|document|style|apply|indexOf|data|nodeName||push|||display|msie||extend|fn|jQuery|in|className|window|arguments|constructor|event|test|opacity|typeof|isFunction|css|events|attr|firstChild|filter|div|queue|show|hide|mergeNum|add|new|nodeType|height|replace|tbody|complete|handle|trigger|table|animate|hidden|global|string|find|url|safari|toUpperCase|break|Array|ready|al|duration|pushStack|tb|timeout|stack|target|none|success|swap|toggle|button|cur|opt|while|get|guid|remove|width|nth|status|checked|selected|merge|nextSibling|select|ret|exec|args|load|try|catch|orig|id|match|_|block||rl|insertBefore|done|oldblock|trim|opera|preventDefault|curAnim|async|now|encodeURIComponent|overflow|value|grep|readyList|toLowerCase|color|ifModified|val|first|ownerDocument|domManip|substr|defaultView|split|has|param|last|text|multiFilter|call|eval|old|makeArray|innerHTML|stopPropagation|fx|childNodes|disabled|ajax|src|script|curCSS|easing|isReady|getElementById|form|input|float|getComputedStyle|clean|readyState|removeChild|error|static|lastModified|checkbox|selectedIndex|position|bind|parseFloat|String|oWidth|oHeight|step|on|toString|setInterval|ajaxSettings|prototype|jquery|Number|is|child|ol|cloneNode|RegExp|documentElement|isXMLDoc|getAttribute|dataType|append|styleFloat|mozilla|empty|end|map|timers|tr|el|which|custom|slice|lastToggle|handleHover|visibility|mouseover|handleError|lastChild|Modified|active|currentStyle|unshift|responseText|getPropertyValue|index|GET|clearInterval|safariTimer|unbind|init|__ie_init|setRequestHeader|unique|radio|getResponseHeader|relatedTarget|click|fix|removeEventListener|delete|handler|addEventListener|triggered|nodeIndex|appendChild|props|classFilter|shift|px|submit|file|expr|setTimeout|tagName|body|sibling|previousSibling|parents|deep|globalEval|fromElement|cssFloat|swing|parsererror|00|inArray|getElementsByTagName|startTime|visible|num|object|prop|200|Last|colgroup|beforeSend|fieldset|ActiveXObject|processData|contentType|ajaxSuccess|ajaxError|ajaxComplete|ajaxStop|ajaxStart|notmodified|POST|json|appendTo|XMLHttpRequest|DOMContentLoaded|bindReady|mouseout|prevObject|removeAttr|one|unload|ctrlKey|ajaxSend|metaKey|keyCode|charCode|not|scrollTop|httpSuccess|scrollLeft|pageX|httpData|srcElement|httpNotModified|after|before|prepend|join|parse|zoom|304|reset|image|password|odd|even|xml|quickClass|quickID|quickChild|setArray|parseInt|contains|gt|execScript|_toggle|lt|eq|href|nodeValue|alpha|self|speed|html|continue|parent|textContent|createTextNode|webkit|linear|getTime|Date|max|clientX|Math|dequeue|fl|createElement|version|100|NaN|fadeTo|fadeIn|slideToggle|slideUp|slideDown|setAttribute|getAttributeNode|name|method|action|content|cssText|300|protocol|FORM|location|options|send|abort|col|th|GMT|td|1970|01|cap|Since|colg|If|tfoot|thead|open|XMLHTTP|leg|Microsoft|urlencoded|www|application|ajaxSetup|ajaxTimeout|post|getScript|getIfModified|evalScripts|serialize|loadIfModified|loaded|onreadystatechange|defer|clientWidth|ipt|scr|clientHeight|write|relative|getJSON|keyup|keypress|keydown|change|mousemove|mouseup|left|mousedown|dblclick|right|scroll|resize|focus|blur|frames|absolute|clone|hover|offsetWidth|Content|Type|offsetHeight|Width|clientY|Thu|border|Jan|pageY|padding|Left|toElement|Requested|With|Right|Bottom|cancelBubble|returnValue|Top|size|detachEvent|attachEvent|substring|line|textarea|weight|enabled|font|innerText|only|uFFFF|responseXML|throw|u0128|417|toggleClass|removeClass|wrap|addClass|removeAttribute|insertAfter|prependTo|children|siblings|fadeOut|noConflict|prev|next|Boolean|maxLength|maxlength|readOnly|readonly|class|htmlFor|CSS1Compat|compatMode|boxModel|compatible|ie|ra|it|1px|rv|splice|userAgent|10000|navigator|concat|PI|cos|400|fast|600|slow|reverse|Function|Object|array|ig'.split('|'),0,{}))

/*
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 *
 * $LastChangedDate: 2007-03-05 02:15:11 +0000 (Mon, 05 Mar 2007) $
 * $Rev: 1485 $
 */

jQuery.fn._height = jQuery.fn.height;
jQuery.fn._width  = jQuery.fn.width;

/**
 * If used on document, returns the document's height (innerHeight)
 * If used on window, returns the viewport's (window) height
 * See core docs on height() to see what happens when used on an element.
 *
 * @example $("#testdiv").height()
 * @result 200
 *
 * @example $(document).height()
 * @result 800
 *
 * @example $(window).height()
 * @result 400
 *
 * @name height
 * @type Object
 * @cat Plugins/Dimensions
 */
jQuery.fn.height = function() {
	if ( this[0] == window )
		return self.innerHeight ||
			jQuery.boxModel && document.documentElement.clientHeight ||
			document.body.clientHeight;

	if ( this[0] == document )
		return Math.max( document.body.scrollHeight, document.body.offsetHeight );

	return this._height(arguments[0]);
};

/**
 * If used on document, returns the document's width (innerWidth)
 * If used on window, returns the viewport's (window) width
 * See core docs on height() to see what happens when used on an element.
 *
 * @example $("#testdiv").width()
 * @result 200
 *
 * @example $(document).width()
 * @result 800
 *
 * @example $(window).width()
 * @result 400
 *
 * @name width
 * @type Object
 * @cat Plugins/Dimensions
 */
jQuery.fn.width = function() {
	if ( this[0] == window )
		return self.innerWidth ||
			jQuery.boxModel && document.documentElement.clientWidth ||
			document.body.clientWidth;

	if ( this[0] == document )
		return Math.max( document.body.scrollWidth, document.body.offsetWidth );

	return this._width(arguments[0]);
};

/**
 * Returns the inner height value (without border) for the first matched element.
 * If used on document, returns the document's height (innerHeight)
 * If used on window, returns the viewport's (window) height
 *
 * @example $("#testdiv").innerHeight()
 * @result 800
 *
 * @name innerHeight
 * @type Number
 * @cat Plugins/Dimensions
 */
jQuery.fn.innerHeight = function() {
	return this[0] == window || this[0] == document ?
		this.height() :
		this.css('display') != 'none' ?
		 	this[0].offsetHeight - (parseInt(this.css("borderTopWidth")) || 0) - (parseInt(this.css("borderBottomWidth")) || 0) :
			this.height() + (parseInt(this.css("paddingTop")) || 0) + (parseInt(this.css("paddingBottom")) || 0);
};

/**
 * Returns the inner width value (without border) for the first matched element.
 * If used on document, returns the document's Width (innerWidth)
 * If used on window, returns the viewport's (window) width
 *
 * @example $("#testdiv").innerWidth()
 * @result 1000
 *
 * @name innerWidth
 * @type Number
 * @cat Plugins/Dimensions
 */
jQuery.fn.innerWidth = function() {
	return this[0] == window || this[0] == document ?
		this.width() :
		this.css('display') != 'none' ?
			this[0].offsetWidth - (parseInt(this.css("borderLeftWidth")) || 0) - (parseInt(this.css("borderRightWidth")) || 0) :
			this.height() + (parseInt(this.css("paddingLeft")) || 0) + (parseInt(this.css("paddingRight")) || 0);
};

/**
 * Returns the outer height value (including border) for the first matched element.
 * Cannot be used on document or window.
 *
 * @example $("#testdiv").outerHeight()
 * @result 1000
 *
 * @name outerHeight
 * @type Number
 * @cat Plugins/Dimensions
 */
jQuery.fn.outerHeight = function() {
	return this[0] == window || this[0] == document ?
		this.height() :
		this.css('display') != 'none' ?
			this[0].offsetHeight :
			this.height() + (parseInt(this.css("borderTopWidth")) || 0) + (parseInt(this.css("borderBottomWidth")) || 0)
				+ (parseInt(this.css("paddingTop")) || 0) + (parseInt(this.css("paddingBottom")) || 0);
};

/**
 * Returns the outer width value (including border) for the first matched element.
 * Cannot be used on document or window.
 *
 * @example $("#testdiv").outerWidth()
 * @result 1000
 *
 * @name outerWidth
 * @type Number
 * @cat Plugins/Dimensions
 */
jQuery.fn.outerWidth = function() {
	return this[0] == window || this[0] == document ?
		this.width() :
		this.css('display') != 'none' ?
			this[0].offsetWidth :
			this.height() + (parseInt(this.css("borderLeftWidth")) || 0) + (parseInt(this.css("borderRightWidth")) || 0)
				+ (parseInt(this.css("paddingLeft")) || 0) + (parseInt(this.css("paddingRight")) || 0);
};

/**
 * Returns how many pixels the user has scrolled to the right (scrollLeft).
 * Works on containers with overflow: auto and window/document.
 *
 * @example $("#testdiv").scrollLeft()
 * @result 100
 *
 * @name scrollLeft
 * @type Number
 * @cat Plugins/Dimensions
 */
jQuery.fn.scrollLeft = function() {
	if ( this[0] == window || this[0] == document )
		return self.pageXOffset ||
			jQuery.boxModel && document.documentElement.scrollLeft ||
			document.body.scrollLeft;

	return this[0].scrollLeft;
};

/**
 * Returns how many pixels the user has scrolled to the bottom (scrollTop).
 * Works on containers with overflow: auto and window/document.
 *
 * @example $("#testdiv").scrollTop()
 * @result 100
 *
 * @name scrollTop
 * @type Number
 * @cat Plugins/Dimensions
 */
jQuery.fn.scrollTop = function() {
	if ( this[0] == window || this[0] == document )
		return self.pageYOffset ||
			jQuery.boxModel && document.documentElement.scrollTop ||
			document.body.scrollTop;

	return this[0].scrollTop;
};

/**
 * Returns the location of the element in pixels from the top left corner of the viewport.
 *
 * For accurate readings make sure to use pixel values for margins, borders and padding.
 *
 * @example $("#testdiv").offset()
 * @result { top: 100, left: 100, scrollTop: 10, scrollLeft: 10 }
 *
 * @example $("#testdiv").offset({ scroll: false })
 * @result { top: 90, left: 90 }
 *
 * @example var offset = {}
 * $("#testdiv").offset({ scroll: false }, offset)
 * @result offset = { top: 90, left: 90 }
 *
 * @name offset
 * @param Object options A hash of options describing what should be included in the final calculations of the offset.
 *                       The options include:
 *                           margin: Should the margin of the element be included in the calculations? True by default.
 *                                   If set to false the margin of the element is subtracted from the total offset.
 *                           border: Should the border of the element be included in the calculations? True by default.
 *                                   If set to false the border of the element is subtracted from the total offset.
 *                           padding: Should the padding of the element be included in the calculations? False by default.
 *                                    If set to true the padding of the element is added to the total offset.
 *                           scroll: Should the scroll offsets of the parent elements be included in the calculations?
 *                                   True by default. When true, it adds the total scroll offsets of all parents to the
 *                                   total offset and also adds two properties to the returned object, scrollTop and
 *                                   scrollLeft. If set to false the scroll offsets of parent elements are ignored.
 *                                   If scroll offsets are not needed, set to false to get a performance boost.
 * @param Object returnObject An object to store the return value in, so as not to break the chain. If passed in the
 *                            chain will not be broken and the result will be assigned to this object.
 * @type Object
 * @cat Plugins/Dimensions
 * @author Brandon Aaron (brandon.aaron@gmail.com || http://brandonaaron.net)
 */
jQuery.fn.offset = function(options, returnObject) {
	var x = 0, y = 0, elem = this[0], parent = this[0], op, sl = 0, st = 0, options = jQuery.extend({ margin: true, border: true, padding: false, scroll: true }, options || {});
	do {
		x += parent.offsetLeft || 0;
		y += parent.offsetTop  || 0;

		// Mozilla and IE do not add the border
		if (jQuery.browser.mozilla || jQuery.browser.msie) {
			// get borders
			var bt = parseInt(jQuery.css(parent, 'borderTopWidth')) || 0;
			var bl = parseInt(jQuery.css(parent, 'borderLeftWidth')) || 0;

			// add borders to offset
			x += bl;
			y += bt;

			// Mozilla removes the border if the parent has overflow property other than visible
			if (jQuery.browser.mozilla && parent != elem && jQuery.css(parent, 'overflow') != 'visible') {
				x += bl;
				y += bt;
			}
		}

		if (options.scroll) {
			// Need to get scroll offsets in-between offsetParents
			op = parent.offsetParent;
			do {
				sl += parent.scrollLeft || 0;
				st += parent.scrollTop  || 0;

				parent = parent.parentNode;

				// Mozilla removes the border if the parent has overflow property other than visible
				if (jQuery.browser.mozilla && parent != elem && parent != op && jQuery.css(parent, 'overflow') != 'visible') {
					y += parseInt(jQuery.css(parent, 'borderTopWidth')) || 0;
					x += parseInt(jQuery.css(parent, 'borderLeftWidth')) || 0;
				}
			} while (parent != op);
		} else
			parent = parent.offsetParent;

		if (parent && (parent.tagName.toLowerCase() == 'body' || parent.tagName.toLowerCase() == 'html')) {
			// Safari doesn't add the body margin for elments positioned with static or relative
			if ((jQuery.browser.safari || (jQuery.browser.msie && jQuery.boxModel)) && jQuery.css(parent, 'position') != 'absolute') {
				x += parseInt(jQuery.css(op, 'marginLeft')) || 0;
				y += parseInt(jQuery.css(op, 'marginTop'))  || 0;
			}
			break; // Exit the loop
		}
	} while (parent);

	if ( !options.margin) {
		x -= parseInt(jQuery.css(elem, 'marginLeft')) || 0;
		y -= parseInt(jQuery.css(elem, 'marginTop'))  || 0;
	}

	// Safari and Opera do not add the border for the element
	if ( options.border && (jQuery.browser.safari || jQuery.browser.opera) ) {
		x += parseInt(jQuery.css(elem, 'borderLeftWidth')) || 0;
		y += parseInt(jQuery.css(elem, 'borderTopWidth'))  || 0;
	} else if ( !options.border && !(jQuery.browser.safari || jQuery.browser.opera) ) {
		x -= parseInt(jQuery.css(elem, 'borderLeftWidth')) || 0;
		y -= parseInt(jQuery.css(elem, 'borderTopWidth'))  || 0;
	}

	if ( options.padding ) {
		x += parseInt(jQuery.css(elem, 'paddingLeft')) || 0;
		y += parseInt(jQuery.css(elem, 'paddingTop'))  || 0;
	}

	// Opera thinks offset is scroll offset for display: inline elements
	if (options.scroll && jQuery.browser.opera && jQuery.css(elem, 'display') == 'inline') {
		sl -= elem.scrollLeft || 0;
		st -= elem.scrollTop  || 0;
	}

	var returnValue = options.scroll ? { top: y - st, left: x - sl, scrollTop:  st, scrollLeft: sl }
	                                 : { top: y, left: x };

	if (returnObject) { jQuery.extend(returnObject, returnValue); return this; }
	else              { return returnValue; }
};

/* Copyright (c) 2006 Brandon Aaron (brandon.aaron@gmail.com || http://brandonaaron.net)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
 * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
 *
 * $LastChangedDate: 2007-03-06 20:55:27 +0000 (Tue, 06 Mar 2007) $
 * $Rev: 1497 $
 */

(function($) {

$.fn.extend({
	/**
	 * Apply the mousewheel event to the elements in the jQuery object.
	 * The handler function should be prepared to take the event object
	 * and a param called 'delta'. The 'delta' param is a number
	 * either > 0 or < 0. > 0 = up and < 0 = down.
	 *
	 * @example $("p").mousewheel(function(event, delta){
	 *   if (delta > 0)
	 *     // do something on mousewheel scroll up
	 *   else if (delta < 0)
	 *     //do something on mousewheel scroll down
	 * });
	 *
	 * @name mousewheel
	 * @type jQuery
	 * @param Function handler A function to call when onmousewheel fires. Should take two params: event and delta.
	 * @cat Plugins/Mousewheel
	 * @author Brandon Aaron (brandon.aaron@gmail.com || http://brandonaaron.net)
	 */
	mousewheel: function(f) {
		if (!f.guid) f.guid = $.event.guid++;
		if (!$.event._mwCache) $.event._mwCache = [];
		
		return this.each( function() {
			if (this._mwHandlers) return this._mwHandlers.push(f);
			else this._mwHandlers = [];
			
			this._mwHandlers.push(f);
			
			var s = this;
			
			this._mwHandler = function(e) {
				e = $.event.fix(e || window.event);
				var delta = 0, returnValue = true;
				
				if (e.wheelDelta)  delta = e.wheelDelta/120;
				if (e.detail)      delta = -e.detail/3;
				if (window.opera)  delta = -e.wheelDelta;
				
				for (var i=0; i<s._mwHandlers.length; i++)
					if (s._mwHandlers[i])
						if ( s._mwHandlers[i].call(s, e, delta) === false ) {
							returnValue = false;
							e.preventDefault();
							e.stopPropagation();
						}
				
				return returnValue;
			};
			
			if (this.addEventListener)
				if ($.browser.mozilla) this.addEventListener('DOMMouseScroll', this._mwHandler, false);
				else                   this.addEventListener('mousewheel',     this._mwHandler, false);
			else
				$.event.add(this, 'mousewheel', this._mwHandler);
			
			$.event._mwCache.push( $(this) );
		});
	},
	
	/**
	 * This method removes one or all applied mousewheel events from the elements.
	 * You can remove a single handler function by passing it as the first param.
	 * If you do not pass anything, it will remove all handlers.
	 *
	 * @name unmousewheel
	 * @param Function handler The handler function to remove from the mousewheel event.
	 * @type jQuery
	 * @cat Plugins/Mousewheel
	 * @author Brandon Aaron (brandon.aaron@gmail.com || http://brandonaaron.net)
	 */
	unmousewheel: function(f) {
		return this.each( function() {
			if ( f && this._mwHandlers ) {
				for (var i=0; i<this._mwHandlers.length; i++)
					if (this._mwHandlers[i] && this._mwHandlers[i].guid == f.guid)
						delete this._mwHandlers[i];
			} else {
				if (this.addEventListener)
					if ($.browser.mozilla) this.removeEventListener('DOMMouseScroll', this._mwHandler, false);
					else                   this.removeEventListener('mousewheel',     this._mwHandler, false);
				else
					$.event.remove(this, 'mousewheel', this._mwHandler);
					
				this._mwHandlers = this._mwHandler = null;
			}
		});
	}
});

// clean-up
$(window)
	.bind('unload', function() {
		var els = $.event._mwCache || [];
		for (var i=0; i<els.length; i++)
			els[i].unmousewheel();
	});
	
})(jQuery);

/* Copyright (c) 2006 Kelvin Luck (kelvin AT kelvinluck DOT com || http://www.kelvinluck.com)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) 
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 * 
 * See http://kelvinluck.com/assets/jquery/jScrollPane/
 * $Id: jScrollPane.js 3125 2007-09-06 20:39:42Z kelvin.luck $
 */

/**
 * Replace the vertical scroll bars on any matched elements with a fancy
 * styleable (via CSS) version. With JS disabled the elements will
 * gracefully degrade to the browsers own implementation of overflow:auto.
 * If the mousewheel plugin has been included on the page then the scrollable areas will also
 * respond to the mouse wheel.
 *
 * @example jQuery(".scroll-pane").jScrollPane();
 *
 * @name jScrollPane
 * @type jQuery
 * @param Object	settings	hash with options, described below.
 *								scrollbarWidth	-	The width of the generated scrollbar in pixels
 *								scrollbarMargin	-	The amount of space to leave on the side of the scrollbar in pixels
 *								wheelSpeed		-	The speed the pane will scroll in response to the mouse wheel in pixels
 *								showArrows		-	Whether to display arrows for the user to scroll with
 *								arrowSize		-	The height of the arrow buttons if showArrows=true
 *								animateTo		-	Whether to animate when calling scrollTo and scrollBy
 *								dragMinHeight	-	The minimum height to allow the drag bar to be
 *								dragMaxHeight	-	The maximum height to allow the drag bar to be
 *								animateInterval	-	The interval in milliseconds to update an animating scrollPane (default 100)
 *								animateStep		-	The amount to divide the remaining scroll distance by when animating (default 3)
 *								maintainPosition-	Whether you want the contents of the scroll pane to maintain it's position when you re-initialise it - so it doesn't scroll as you add more content (default true)
 * @return jQuery
 * @cat Plugins/jScrollPane
 * @author Kelvin Luck (kelvin AT kelvinluck DOT com || http://www.kelvinluck.com)
 */
jQuery.jScrollPane = {
	active : []
};
jQuery.fn.jScrollPane = function(settings)
{
	settings = jQuery.extend(
		{
			scrollbarWidth : 10,
			scrollbarMargin : 5,
			wheelSpeed : 18,
			showArrows : false,
			arrowSize : 0,
			animateTo : false,
			dragMinHeight : 1,
			dragMaxHeight : 99999,
			animateInterval : 100,
			animateStep: 3,
			maintainPosition: true
		}, settings
	);
	return this.each(
		function()
		{
			var $this = jQuery(this);
			
			if (jQuery(this).parent().is('.jScrollPaneContainer')) {
				var currentScrollPosition = settings.maintainPosition ? $this.offset({relativeTo:jQuery(this).parent()[0]}).top : 0;
				var $c = jQuery(this).parent();
				var paneWidth = $c.innerWidth();
				var paneHeight = $c.outerHeight();
				var trackHeight = paneHeight;
				if ($c.unmousewheel) {
					$c.unmousewheel();
				}
				jQuery('>.jScrollPaneTrack, >.jScrollArrowUp, >.jScrollArrowDown', $c).remove();
				$this.css({'top':0});
			} else {
				var currentScrollPosition = 0;
				this.originalPadding = $this.css('paddingTop') + ' ' + $this.css('paddingRight') + ' ' + $this.css('paddingBottom') + ' ' + $this.css('paddingLeft');
				this.originalSidePaddingTotal = (parseInt($this.css('paddingLeft')) || 0) + (parseInt($this.css('paddingRight')) || 0);
				var paneWidth = $this.innerWidth();
				var paneHeight = $this.innerHeight();
				var trackHeight = paneHeight;
				$this.wrap(
					jQuery('<div></div>').attr(
						{'className':'jScrollPaneContainer'}
					).css(
						{
							'height':paneHeight+'px', 
							'width':paneWidth+'px'
						}
					)
				);
				// deal with text size changes (if the jquery.em plugin is included)
				// and re-initialise the scrollPane so the track maintains the
				// correct size
				jQuery(document).bind(
					'emchange', 
					function(e, cur, prev)
					{
						$this.jScrollPane(settings);
					}
				);
			}
			var p = this.originalSidePaddingTotal;
			$this.css(
				{
					'height':'auto',
					'width':paneWidth - settings.scrollbarWidth - settings.scrollbarMargin - p + 'px',
					'paddingRight':settings.scrollbarMargin + 'px'
				}
			);
			var contentHeight = $this.outerHeight();
			var percentInView = paneHeight / contentHeight;

			if (percentInView < .99) {
				var $container = $this.parent();
				$container.append(
					jQuery('<div></div>').attr({'className':'jScrollPaneTrack'}).css({'width':settings.scrollbarWidth+'px'}).append(
						jQuery('<div></div>').attr({'className':'jScrollPaneDrag'}).css({'width':settings.scrollbarWidth+'px'}).append(
							jQuery('<div></div>').attr({'className':'jScrollPaneDragTop'}).css({'width':settings.scrollbarWidth+'px'}),
							jQuery('<div></div>').attr({'className':'jScrollPaneDragBottom'}).css({'width':settings.scrollbarWidth+'px'})
						)
					)
				);
				
				var $track = jQuery('>.jScrollPaneTrack', $container);
				var $drag = jQuery('>.jScrollPaneTrack .jScrollPaneDrag', $container);
				
				if (settings.showArrows) {
					
					var currentArrowButton;
					var currentArrowDirection;
					var currentArrowInterval;
					var currentArrowInc;
					var whileArrowButtonDown = function()
					{
						if (currentArrowInc > 4 || currentArrowInc%4==0) {
							positionDrag(dragPosition + currentArrowDirection * mouseWheelMultiplier);
						}
						currentArrowInc ++;
					};
					var onArrowMouseUp = function(event)
					{
						jQuery('body').unbind('mouseup', onArrowMouseUp);
						currentArrowButton.removeClass('jScrollActiveArrowButton');
						clearInterval(currentArrowInterval);
						//console.log($(event.target));
						//currentArrowButton.parent().removeClass('jScrollArrowUpClicked jScrollArrowDownClicked');
					};
					var onArrowMouseDown = function() {
						//console.log(direction);
						//currentArrowButton = $(this);
						jQuery('body').bind('mouseup', onArrowMouseUp);
						currentArrowButton.addClass('jScrollActiveArrowButton');
						currentArrowInc = 0;
						whileArrowButtonDown();
						currentArrowInterval = setInterval(whileArrowButtonDown, 100);
					};
					$container
						.append(
							jQuery('<a></a>')
								.attr({'href':'javascript:;', 'className':'jScrollArrowUp'})
								.css({'width':settings.scrollbarWidth+'px'})
								.html('Scroll up')
								.bind('mousedown', function()
								{
									currentArrowButton = jQuery(this);
									currentArrowDirection = -1;
									onArrowMouseDown();
									this.blur();
									
									return false;
								})
								.bind('click', function()
								{return false}),
							jQuery('<a></a>')
								.attr({'href':'javascript:;', 'className':'jScrollArrowDown'})
								.css({'width':settings.scrollbarWidth+'px'})
								.html('Scroll down')
								.bind('mousedown', function()
								{
									currentArrowButton = jQuery(this);
									currentArrowDirection = 1;
									onArrowMouseDown();
									this.blur();
									
									return false;
								})
								.bind('click', function()
								{return false})
						);
					if (settings.arrowSize) {
						trackHeight = paneHeight - settings.arrowSize - settings.arrowSize;
						$track
							.css({'height': trackHeight+'px', top:settings.arrowSize+'px'})
					} else {
						var topArrowHeight = jQuery('>.jScrollArrowUp', $container).height();
						settings.arrowSize = topArrowHeight;
						trackHeight = paneHeight - topArrowHeight - jQuery('>.jScrollArrowDown', $container).height();
						$track
							.css({'height': trackHeight+'px', top:topArrowHeight+'px'})
					}
				}
				
				var $pane = jQuery(this).css({'position':'absolute', 'overflow':'visible'});
				
				var currentOffset;
				var maxY;
				var mouseWheelMultiplier;
				// store this in a seperate variable so we can keep track more accurately than just updating the css property..
				var dragPosition = 0;
				var dragMiddle = percentInView*paneHeight/2;
				
				// pos function borrowed from tooltip plugin and adapted...
				var getPos = function (event, c) {
					var p = c == 'X' ? 'Left' : 'Top';
					return event['page' + c] || (event['client' + c] + (document.documentElement['scroll' + p] || document.body['scroll' + p])) || 0;
				};
				
				var ignoreNativeDrag = function() {	return false; };
				
				var initDrag = function()
				{
					ceaseAnimation();
					currentOffset = $drag.offset(false);
					currentOffset.top -= dragPosition;
					maxY = trackHeight - $drag[0].offsetHeight;
					mouseWheelMultiplier = 2 * settings.wheelSpeed * maxY / contentHeight;
				};
				
				var onStartDrag = function(event)
				{
					initDrag();
					dragMiddle = getPos(event, 'Y') - dragPosition - currentOffset.top;
					jQuery('body').bind('mouseup', onStopDrag).bind('mousemove', updateScroll);
					if (jQuery.browser.msie) {
						jQuery('body').bind('dragstart', ignoreNativeDrag).bind('selectstart', ignoreNativeDrag);
					}
					return false;
				};
				var onStopDrag = function()
				{
					jQuery('body').unbind('mouseup', onStopDrag).unbind('mousemove', updateScroll);
					dragMiddle = percentInView*paneHeight/2;
					if (jQuery.browser.msie) {
						jQuery('body').unbind('dragstart', ignoreNativeDrag).unbind('selectstart', ignoreNativeDrag);
					}
				};
				var positionDrag = function(destY)
				{
					destY = destY < 0 ? 0 : (destY > maxY ? maxY : destY);
					dragPosition = destY;
					$drag.css({'top':destY+'px'});
					var p = destY / maxY;
					$pane.css({'top':((paneHeight-contentHeight)*p) + 'px'});
					$this.trigger('scroll');
				};
				var updateScroll = function(e)
				{
					positionDrag(getPos(e, 'Y') - currentOffset.top - dragMiddle);
				};
				
				var dragH = Math.max(Math.min(percentInView*(paneHeight-settings.arrowSize*2), settings.dragMaxHeight), settings.dragMinHeight);
				
				$drag.css(
					{'height':dragH+'px'}
				).bind('mousedown', onStartDrag);
				
				var trackScrollInterval;
				var trackScrollInc;
				var trackScrollMousePos;
				var doTrackScroll = function()
				{
					if (trackScrollInc > 8 || trackScrollInc%4==0) {
						positionDrag((dragPosition - ((dragPosition - trackScrollMousePos) / 2)));
					}
					trackScrollInc ++;
				};
				var onStopTrackClick = function()
				{
					clearInterval(trackScrollInterval);
					jQuery('body').unbind('mouseup', onStopTrackClick).unbind('mousemove', onTrackMouseMove);
				};
				var onTrackMouseMove = function(event)
				{
					trackScrollMousePos = getPos(event, 'Y') - currentOffset.top - dragMiddle;
				};
				var onTrackClick = function(event)
				{
					initDrag();
					onTrackMouseMove(event);
					trackScrollInc = 0;
					jQuery('body').bind('mouseup', onStopTrackClick).bind('mousemove', onTrackMouseMove);
					trackScrollInterval = setInterval(doTrackScroll, 100);
					doTrackScroll();
				};
				
				$track.bind('mousedown', onTrackClick);
				
				// if the mousewheel plugin has been included then also react to the mousewheel
				if ($container.mousewheel) {
					$container.mousewheel(
						function (event, delta) {
							initDrag();
							ceaseAnimation();
							var d = dragPosition;
							positionDrag(dragPosition - delta * mouseWheelMultiplier);
							var dragOccured = d != dragPosition;
							return !dragOccured;
						},
						false
					);					
				}
				var _animateToPosition;
				var _animateToInterval;
				function animateToPosition()
				{
					var diff = (_animateToPosition - dragPosition) / settings.animateStep;
					if (diff > 1 || diff < -1) {
						positionDrag(dragPosition + diff);
					} else {
						positionDrag(_animateToPosition);
						ceaseAnimation();
					}
				}
				var ceaseAnimation = function()
				{
					if (_animateToInterval) {
						clearInterval(_animateToInterval);
						delete _animateToPosition;
					}
				};
				var scrollTo = function(pos, preventAni)
				{
					if (typeof pos == "string") {
						$e = jQuery(pos, this);
						if (!$e.length) return;
						pos = $e.offset({relativeTo:this}).top;
					}
					ceaseAnimation();
					var destDragPosition = -pos/(paneHeight-contentHeight) * maxY;
					if (!preventAni || settings.animateTo) {
						_animateToPosition = destDragPosition;
						_animateToInterval = setInterval(animateToPosition, settings.animateInterval);
					} else {
						positionDrag(destDragPosition);
					}
				};
				$this[0].scrollTo = scrollTo;
				
				$this[0].scrollBy = function(delta)
				{
					var currentPos = -parseInt($pane.css('top')) || 0;
					scrollTo(currentPos + delta);
				};
				
				initDrag();
				
				scrollTo(-currentScrollPosition, true);
				
				jQuery.jScrollPane.active.push($this[0]);

			} else {
				$this.css(
					{
						'height':paneHeight+'px',
						'width':paneWidth-this.originalSidePaddingTotal+'px',
						'padding':this.originalPadding
					}
				);
				// remove from active list?
			}
			
		}
	)
};

// clean up the scrollTo expandos
jQuery(window)
	.bind('unload', function() {
		var els = jQuery.jScrollPane.active; 
		for (var i=0; i<els.length; i++) {
			els[i].scrollTo = els[i].scrollBy = null;
		}
	}
);

var $j=jQuery.noConflict();


function VideoPlayer(D,C,A,F,B,E,I){var J;
var H=this;
var G=["attach","detach","reset","start","startVideo","show","hide","isPlaying","isLive","isMuted","setVolume","getVolume","mute","unmute","gotoFullscreen","gotoPos","getPos","getProgId","getCurrentItemId","adEnded"];
if(!B){B=HtmlPlayer;
}J=new B(D,C,A,F,E,I);
G.each(function(K){H[K]=J[K];
});
if(window.SpringStreams){window.springSensors=new SpringStreams("tv2");
if(window.addEventListener){window.addEventListener("unload",window.springSensors.unload,false);
}else{if(window.attachEvent){window.attachEvent("unload",window.springSensors.unload);
}}if(!util.isIE()&&window.console){window.springSensors.debug=function(K){console.debug(K);
};
}else{window.springSensors.debug=function(K){debug(K);
};
}}}function ItemList(A,E){this.addItem=J;
this.getItem=K;
this.getNextItem=F;
this.getPrevItem=B;
this.checkForItemChange=G;
this.getItemCount=H;
var I=new Array();
var C=new D(0,0,100000);
function D(O,M,L,N){this.id=O;
this.timeBegin=M-E;
this.timeEnd=L-E;
this.duration=L-M;
this.title=N;
}function H(){return I.length;
}function J(O,M,L,N){I[I.length]=new D(O,M,L,N,E);
}function K(M){for(var L=0;
L<I.length;
L++){if(M==I[L].id){return I[L];
}}return false;
}function F(M){for(var L=0;
L<I.length;
L++){if(I[L].timeBegin>M){logDebug("VideoPlayer","Found next item starting at "+I[L].timeBegin+", following "+M);
return I[L];
}}return false;
}function B(M){for(var L=I.length-1;
L>=0;
L--){if(I[L].timeEnd<M){logDebug("VideoPlayer","Found previous item ending at "+I[L].timeEnd+", preceding "+M);
return I[L];
}}return false;
}function G(O,N){var L;
for(var M=0;
M<I.length;
M++){if((O>I[M].timeBegin)&&(O<I[M].timeEnd)){L=I[M];
break;
}}if(!L){L=C;
}if(N&&N.id==L.id){return false;
}else{logDebug("VideoPlayer","Found item: "+L.id);
return L;
}}}function DrmManager(){var B;
function A(){try{if(util.isIE()){if(!B){B=new ActiveXObject("DRM.GetLicense");
}}return B;
}catch(C){logError("DrmManager.getDrmObj",C);
}}this.getSystemInfo=function(){try{logDebug(A().GetSystemInfo());
return A().GetSystemInfo();
}catch(C){logError("DrmManager.getDrmObj",C);
}};
this.getDRMVersion=function(){try{logDebug(A().GetDRMVersion());
return A().GetDRMVersion();
}catch(C){logError("DrmManager.getDrmObj",C);
}};
this.getDRMSecurityVersion=function(){try{logDebug(A().GetDRMSecurityVersion());
return A().GetDRMSecurityVersion();
}catch(C){logError("DrmManager.getDrmObj",C);
}};
this.storeLicense=function(D){try{A().StoreLicense(D);
logDebug("Storing license for DRM protected video.");
}catch(C){logError("DrmManager.getDrmObj",C);
}};
}function MultiPlayer(B){this.subPlay=G;
this.swapVideos=J;
this.switchSound=H;
this.setDefaultProgram=A;
this.resetSubPlayers=F;
this.mainToMini=K;
var I=new Array();
var E;
function A(L,M){I[L]=M;
}function G(P,R,N,U,S,T){debug("Play in player"+P+"/"+N);
try{if(N){if(!(P&&R)){var L=D(N,true);
if(L){P=L.index;
R=L.target;
}}if(B[P]&&B[P].detach){B[P].detach();
}var O="progId="+N+"&playerIndex="+P+"&scope=request";
if(U!=null&&U==false){O+="&autostart=false";
}if(S){O+="&startPos="+S;
}if(T){O+="&bandwidth="+T;
}var M="ajax/playSub.do";
if(N){userNav.open(M,R,O);
}}else{}}catch(Q){logError("MultiPlayer.subPlay",Q);
}}function F(){for(var L=1;
L<B.length;
L++){if(B[L]&&B[L].detach){B[L].detach();
}}}function J(O,Q,L,N){try{var T=mainPlayer.getProgId();
var R=mainPlayer.isPlaying()||!util.isIE();
var M=mainPlayer.isLive();
var S=mainPlayer.getPos();
if(M){S=null;
}debug("Switching "+T+" in main player with "+L+" in player "+O);
userNav.play(L,null,N,false);
if(T&&M){G(O,Q,T,R,S);
}else{if(I[O]){G(O,Q,I[O]);
}else{B[O].hide();
if(!C()){$(Q).innerHTML="";
}}}}catch(P){logError("MultiPlayer.swapVideos",P);
}}function K(){if(mainPlayer.isPlaying()&&mainPlayer.isLive()){var L=D(mainPlayer.getProgId());
if(L){G(L.index,L.target,mainPlayer.getProgId());
}}}function D(L,M){if(!($("nettavisen")||(B[2]&&B[2].isPlaying&&B[2].isPlaying()))){tiles.stopTextFeed("nettavisen");
return{index:2,target:"videoContainer2"};
}else{if(!(B[1]&&B[1].isPlaying&&B[1].isPlaying())){return{index:1,target:"videoContainer1"};
}else{if(M){tiles.stopTextFeed("nettavisen");
return{index:2,target:"videoContainer2"};
}else{return null;
}}}}function C(){var N=true;
for(var M=1;
M<B[M];
M++){if(B[M].isPlaying&&B[M].isPlaying()){N=false;
}}if(N&&$("leftTab")){var L="ajax/leftTab.do?pngStyle=dark";
userNav.open(L,"leftTab");
}return N;
}function H(L,N){try{debug("Muted: "+N+" - "+L);
if(N){if(E!=null&&L!=0&&E!=L){if(!B[E].isMuted(true)){B[E].unmute();
debug("X multiPlayer is unmuting player "+E);
}}E=L;
}else{for(var M=0;
M<B.length;
M++){if(M!=L&&B[M]&&B[M].mute){if(!B[M].isMuted(true)&&M!=L){B[M].mute();
E=M;
debug("Y multiPlayer is muting player "+M);
}}}B[L].unmute();
debug("Z multiPlayer is unmuting player "+L);
}debug("lastMutedIndex: "+E);
}catch(O){logError("MultiPlayer.switchSound",O);
}}}function DummyPlayer(A,B){if(B&&B.onClick){Event.observe("videoPanel"+A,"click",function(C){B.onClick();
Event.stop(C);
},false);
}else{Event.observe("videoPanel"+A,"click",function(C){Event.stop(C);
},false);
}}function BandwidthTester(O,R,S,N,G,L,M){if(L){logError=L;
}if(M){logDebug=M;
}this.runBwTest=A;
this.run=I;
this.ee=E;
this.displayResult=B;
var K="hidden";
var T="0px";
var C="";
var P=false;
var H="http://webtv.tv2.no/multimedia/webtv/images/bandwidth/bwtest850.jpg";
var J=861137;
var Q="http://webtv.tv2.no/multimedia/webtv/images/bandwidth/bwtest150.jpg";
var D=156518;
var F=1.1;
if(G){H=Q;
J=D;
}if(!N){N=25000;
}function A(){E();
I({formField:$("bandwidth"),onStart:function(){Element.hide($("resultText"));
Element.hide($("testDelayed"));
Element.hide($("testFailed"));
Element.show($("bwStartMessage"));
Element.hide($("bandwidthSubmit"));
Element.hide($("startButton"));
},onComplete:function(V){try{B(V);
Element.hide($("testDelayed"));
Element.hide($("testFailed"));
Element.hide($("bwStartMessage"));
Element.show($("resultText"));
Element.show($("startButton"));
Element.show($("measureText"));
Element.show($("bandwidthSubmit"));
if(P){Element.hide("bwManual");
}$("bwSelect").options[0].selected=true;
}catch(U){logError("BandwidthTester.runBwTest",U);
}},onTimeout:function(){Element.hide($("resultText"));
Element.hide($("testFailed"));
Element.show($("bwStartMessage"));
Element.show($("testDelayed"));
Element.show($("bwManual"));
Element.hide($("bandwidthSubmit"));
Element.hide($("startButton"));
},onError:function(V,U){Element.hide($("resultText"));
Element.hide($("bwStartMessage"));
Element.hide($("testDelayed"));
Element.show($("testFailed"));
Element.show($("bwManual"));
Element.hide($("bandwidthSubmit"));
Element.hide($("startButton"));
}});
}function E(){if(window.event&&window.event.ctrlKey&&window.event.altKey&&window.event.shiftKey){K="visible";
T="";
C="bwtestImg";
P=true;
}}function I(W){try{var U;
var Y=document.createElement("img");
Y.id="bwtestImg";
Y.style.visibility=K;
Y.style.height=T;
Y.className=C;
if(P){Event.observe(Y,"click",function(){document.body.removeChild($("bwtestImg"));
Element.show("bwManual");
},false);
}document.body.appendChild(Y);
if(W.onTimeout){U=window.setTimeout(function(){W.onTimeout();
},N);
}try{if(videoPlayers){videoPlayers.each(function(Z){if(Z&&Z.hide){Z.hide();
}});
}}catch(X){}if(W.onStart){W.onStart();
}var V=new Date();
Y.src=H+"?"+Math.round(Math.random()*10000);
logDebug("bwtest started",V);
Event.observe("bwtestImg","load",function(){try{var a=new Date();
clearInterval(U);
logDebug("bwtest finished",a);
var Z=(a-V)/1000;
if(Y.fileSize>0){J=Y.fileSize;
}var b=Math.round(J*8*F/(100*(a-V)))*100;
if(b>10000){b=Math.round(b/1000)*1000;
}if(W.formField){if(W.formField.value!=null){W.formField.value=b;
}else{W.formField.innerHTML=b;
}}else{logDebug("runBwTest.finished","No valid form field to update.");
}logDebug("Bandwidth: ",b);
if(W.onComplete){W.onComplete(b);
}if(!P){document.body.removeChild(Y);
}}catch(c){logError("runBwTest.finished",c);
}},false);
}catch(X){logError("BandwidthTester.run",X);
}}function B(Y){try{var V="";
var X=Y;
if(X>S){X=S;
}for(var U=O.length-1;
U>=0;
U--){if(X>=O[U]){X=O[U];
V=R[U];
break;
}}$("highestBw").innerHTML=X;
$("bwDescription").innerHTML=V;
$("bw").innerHTML=Y;
}catch(W){logError("BandwidthTester.displayResult",W);
}}}function getFlashVersion(){var E=navigator.userAgent.indexOf("MSIE")>=0&&navigator.userAgent.indexOf("Opera")<0&&navigator.userAgent.indexOf("Mac")<0;
function D(){var G;
var H;
var I;
try{H=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
G=C(H.GetVariable("$version"));
}catch(I){}if(!G){try{H=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
G=6;
H.AllowScriptAccess="always";
G=C(H.GetVariable("$version"));
}catch(I){}}if(!G){try{H=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
G=C(H.GetVariable("$version"));
}catch(I){}}if(!G){try{H=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
G=3;
}catch(I){}}if(!G){try{H=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
G=2;
}catch(I){G=-1;
}}return G;
}function C(H){try{tempArray=H.split(" ");
return tempArray[1].split(",")[0];
}catch(G){return -1;
}}var B=-1;
if(navigator.plugins!=null&&navigator.plugins.length>0){if(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]){var F=navigator.plugins["Shockwave Flash 2.0"]?" 2.0":"";
var A=navigator.plugins["Shockwave Flash"+F].description;
B=A.split(" ")[2].split(".")[0];
}}else{if(E){B=D();
}}return B;
}

function HtmlPlayer(Ac,Af,I,V){if(Ac==null){Ac=0;
}var p=navigator.userAgent.indexOf("MSIE")>=0&&navigator.userAgent.indexOf("Opera")<0&&navigator.userAgent.indexOf("Mac")<0;
var Aa=navigator.userAgent.indexOf("Gecko")>=0&&navigator.userAgent.indexOf("Opera")<0&&navigator.userAgent.indexOf("Win")>0;
this.ie=p;
var i;
var r=false;
var G;
var P;
var T;
var Ag;
var AG;
var J=0;
var x;
var F;
var AW;
var AO;
var AM=false;
var M;
var A;
var v=false;
var j="";
var AK="";
var Q="";
var AY="";
var K;
var AN;
var Ad;
var h;
var Ae=false;
var W="";
var d="";
var R="90";
var k=false;
var AA=false;
var AU;
var AQ=false;
var Ai=false;
var AP=this;
var Y=null;
this.vp=Y;
var O=false;
var Aj;
var q=5000;
var o=16000;
var n=16000;
var l=60000;
var y=Math.round(Math.random()*10000);
var Z='<OBJECT id="bufferAnimation" codebase="http://active.macromedia.com/flash/cabs/swflash.cab#version=8,0,0,0" type="application/x-shockwave-flash" data="{flashPath}"><PARAM name="movie" value="{flashPath}"><PARAM name="quality" value="high"><PARAM name="wmode" value="transparent"></OBJECT><div id="bufferAd">{startAd}</div><div id="emptyBufferAd"></div>';
var AX;
var s;
var B=60;
var AL=-30;
var Ab=15;
var AD=-7.5;
var C=new Object();
try{C.debug=logDebug;
C.error=logError;
}catch(w){C.error=function(Al,Am){if(location.href.indexOf("debug=true")>0){alert(Al+": "+Am.message);
}};
C.debug=function(Al,e){if(location.href.indexOf("debug=true")>0&&$("debugList")){$("debugList").innerHTML=$("debugList").innerHTML+"<li>"+Al+": "+e+"</li>";
}};
}this.attach=function(){try{var Ao=false;
if(Aa&&navigator.mimeTypes){var Al="";
for(var Am=0;
Am<navigator.mimeTypes.length;
Am++){var Ap=navigator.mimeTypes[Am].type;
if(Ap!=null&&Ap.indexOf("x-ms-wmp")>=0){Ao=true;
}}}if(p||Ao){AQ=true;
if(Aa){Y=new WmvGeckoCorePlayer("video"+Ac,C);
}else{Y=new WmvIECorePlayer("video"+Ac,C);
}}else{AQ=false;
Y=new WmvSimpleCorePlayer("video"+Ac,C);
if(Aa){Ai=true;
}}if(AQ){Event.observe("playButton"+Ac,"click",function(Aq){if(!(Element.visible("videoAdEnd"+Ac)||Element.visible("videoAdStart"+Ac))){if(G&&V&&V.onReplay&&!AP.isPlaying()){V.onReplay(Ac,V.playerContainer,s);
}else{Y.togglePlay();
}}Event.stop(Aq);
},false);
Event.observe("volDownButton"+Ac,"click",function(Aq){Y.volumeDown(10);
Element.addClassName($("muteButton"+Ac),"soundButton");
Element.removeClassName($("muteButton"+Ac),"muteButton");
Event.stop(Aq);
},false);
Event.observe("volUpButton"+Ac,"click",function(Aq){Y.volumeUp(10);
Element.addClassName($("muteButton"+Ac),"soundButton");
Element.removeClassName($("muteButton"+Ac),"muteButton");
Event.stop(Aq);
},false);
Event.observe("muteButton"+Ac,"click",function(Aq){c();
Event.stop(Aq);
},false);
Event.observe("prevButton"+Ac,"click",function(Aq){Ah();
Event.stop(Aq);
},false);
Event.observe("nextButton"+Ac,"click",function(Aq){AZ();
Event.stop(Aq);
},false);
Event.observe("toolsButton"+Ac,"click",function(Aq){E();
Event.stop(Aq);
},false);
Event.observe("fullscreenButton"+Ac,"click",function(Aq){Y.gotoFullscreen();
Event.stop(Aq);
},false);
Event.observe("sliderButton"+Ac,"mousedown",function(){z();
},true);
Event.observe("sliderButton"+Ac,"mouseup",function(){L();
},true);
Y.onStatusChange=AS;
Y.onBufferingStart=X;
Y.onPosChange=u;
Y.onVideoStart=AR;
Y.onVideoEnd=a;
Y.onVideoChange=Ak;
Y.onPlayStateChange=AE;
Y.onCeased=AP.detach;
if(V&&V.onPlayerClick){Y.onPlayerClick=V.onPlayerClick;
}else{if(!Af){Y.onPlayerClick=m;
}}Event.observe(window,"unload",function(){Y.stop(true);
},false);
}else{Element.addClassName("videoPanel"+Ac,"controlsBuiltIn");
Event.observe("playButton"+Ac,"click",function(Aq){Event.stop(Aq);
},false);
Event.observe("volDownButton"+Ac,"click",function(Aq){Event.stop(Aq);
},false);
Event.observe("volUpButton"+Ac,"click",function(Aq){Event.stop(Aq);
},false);
Event.observe("muteButton"+Ac,"click",function(Aq){Event.stop(Aq);
},false);
Event.observe("fullscreenButton"+Ac,"click",function(Aq){Event.stop(Aq);
},false);
}if($("miniMaxiButton"+Ac)){Event.observe("miniMaxiButton"+Ac,"click",AI,false);
}Event.observe("stopButton"+Ac,"click",function(Aq){AP.hide();
Event.stop(Aq);
},false);
if($("switchToButton"+Ac)){if(V&&V.onSwitchClick){Event.observe("switchToButton"+Ac,"click",function(Aq){V.onSwitchClick(Ac,g(),s,AP.getPos());
Event.stop(Aq);
},false);
}else{Event.observe("switchToButton"+Ac,"click",function(Aq){Event.stop(Aq);
},false);
}}if($("selectorButton"+Ac)){if(V&&V.onSelectorClick){Event.observe("selectorButton"+Ac,"click",function(Aq){AF(V.onSelectorClick(Ac));
Event.stop(Aq);
},false);
}else{Event.observe("selectorButton"+Ac,"click",function(Aq){Event.stop(Aq);
},false);
}}if(V&&V.onMouseOver){Event.observe("bg"+Ac,"mouseover",function(Aq){V.onMouseOver(Ac);
Event.stop(Aq);
},false);
Event.observe("video"+Ac,"mouseover",function(Aq){V.onMouseOver(Ac);
Event.stop(Aq);
},false);
}if(V&&V.onMouseOut){Event.observe("bg"+Ac,"mouseout",function(Aq){V.onMouseOut(Ac);
Event.stop(Aq);
},false);
Event.observe("video"+Ac,"mouseout",function(Aq){V.onMouseOut(Ac);
Event.stop(Aq);
},false);
}}catch(An){C.error("HtmlPlayer.attach",An);
}};
if(!I){AP.attach();
}this.start=function(An){if(Ai&&!Af){var Am=document.createElement("p");
Am.className="upgradeMessage";
Am.innerHTML=$MR("sumo.web.video.upgrademessage");
$("videoPanel"+Ac).appendChild(Am);
Element.addClassName("videoPanel"+Ac,"upgradeable");
}try{AP.hideStartAd();
AP.hideEndAd(false);
if(An.live==null){An.live=false;
}D({"live":An.live});
this.reset(true);
if(!Ae){AM=false;
AW=An.live;
s=An.progId;
AY=An.programTitle==null?"":An.programTitle;
AO=An.items;
if(An.adCategory&&An.adCategory.length>0&&AQ){if(An.endAdPos&&An.endAdPos.length>0){j=An.endAdPos;
Q=An.adCategory;
}if(false&&(An.startAdPos&&An.startAdPos.length>0)){var Al=false;
A={"metaUrl":An.metaUrl,"progId":An.progId,"hostProgId":An.hostProgId,"live":An.live,"timeBegin":An.timeBegin,"startPos":An.startPos};
C.debug("HtmlPlayer.start","Retrieving start ad");
N(An.adCategory,[An.startAdPos,An.endAdPos,An.bannerAdPos],null,function(Aq){if(Aq){AK=Aq[An.endAdPos];
C.debug("HtmlPlayer.start","getAds finished");
if(!AM){if(Aq[An.startAdPos].toLowerCase().indexOf("enablewaitforad")>0&&getFlashVersion()>=8){S(Aq[An.startAdPos]);
C.debug("HtmlPlayer.start","Start ad retrieved, enableWaitForAd found - waiting for startVideo() from ad");
v=true;
try{window.clearTimeout(M);
Al=true;
}catch(Ar){}M=window.setTimeout(AP.startVideo,o);
}else{C.debug("HtmlPlayer.start","Start ad retrieved (or failed), enableWaitForAd not found");
if(An.bufferFlash){var As=Z.replace(/{flashPath}/ig,An.bufferFlash).replace(/{startAd}/ig,Aq[An.startAdPos]);
S(As);
}AP.startVideo();
}if(An.bannerAdPos){var Ap=Aq[An.bannerAdPos];
if(Ap&&Ap.length>0){if(An.onShowExternalAd){An.onShowExternalAd(Ap);
}else{if($(An.bannerAdElement)){$(An.bannerAdElement).innerHTML=Ap;
}}}}}}else{AP.startVideo(An.metaUrl,An.progId,An.hostProgId,An.live,An.timeBegin,An.startPos,An.programTitle,An.paused,An.muted);
}});
if(!Al){M=window.setTimeout(AP.startVideo,q);
}}else{C.debug("HtmlPlayer.start","No start ad, starting immediately.");
if(An.bufferFlash&&An.bufferFlash.length>0&&AQ){S(Z.replace(/{flashPath}/ig,An.bufferFlash).replace(/{startAd}/ig,""));
}else{if(An.bufferContent&&An.bufferContent.length>0&&AQ){S(An.bufferContent);
}}AP.startVideo(An.metaUrl,An.progId,An.hostProgId,An.live,An.timeBegin,An.startPos,An.programTitle,An.paused,An.muted);
}}else{C.debug("HtmlPlayer.start","No ads, starting immediately.");
if(An.bufferFlash&&An.bufferFlash.length>0&&AQ){S(Z.replace(/{flashPath}/ig,An.bufferFlash).replace(/{startAd}/ig,""));
}else{if(An.bufferContent&&An.bufferContent.length>0&&AQ){S(An.bufferContent);
}}this.startVideo(An.metaUrl,An.progId,An.hostProgId,An.live,An.timeBegin,An.startPos,An.programTitle,An.paused,An.muted);
}}}catch(Ao){C.error("HtmlPlayer.start",Ao);
}};
this.reset=function(){try{if(Y){Y.stop();
if($("video"+Ac)){$("video"+Ac).style.visibility="hidden";
}}i=false;
r=false;
G=false;
P=false;
AG=0;
J=0;
x=true;
F=false;
AW=false;
AM=false;
v=false;
j="";
AK="";
Q="";
y=Math.round(Math.random()*10000000);
s=0;
AY="";
A=null;
AO=null;
K=null;
h=null;
Ae=false;
W="";
d="";
O=false;
Aj=null;
k=false;
AA=false;
AU=null;
if(T){T.setValue(0);
}if(Ag){Ag.setValue(0);
}if($("playerStatus"+Ac)){$("playerStatus"+Ac).innerHTML="";
}if($("timeElapsed"+Ac)){$("timeElapsed"+Ac).innerHTML="";
}if($("duration"+Ac)){$("duration"+Ac).innerHTML="";
}if($("muteButton"+Ac)){Element.addClassName($("muteButton"+Ac),"soundButton");
Element.removeClassName($("muteButton"+Ac),"muteButton");
}try{window.clearTimeout(M);
}catch(Al){}try{window.clearTimeout(AX);
}catch(Al){}}catch(Al){C.error("HtmlPlayer.reset",Al);
}};
this.detach=function(){try{C.debug("HtmlPlayer","Player "+Ac+" going to sleep.");
if(Y&&Y.reset){Y.reset();
}AP.reset();
Y=null;
}catch(Al){C.error("HtmlPlayer.detach",Al);
}};
this.startVideo=function(As,Al,Am,Ar,An,Ap,At,Au,Aq){try{window.clearTimeout(M);
}catch(Ao){}AA=Aq;
if(As&&As.length>16){AW=Ar;
AY=At==null?"":At;
s=Al;
if(AW==null){AW=false;
}if(v){A={"metaUrl":As,"progId":Al,"hostProgId":Am,"live":AW,"timeBegin":An,"startPos":Ap};
M=window.setTimeout(AP.startVideo,o);
}else{Y.start(As,Al,Am,AW,An,Ap,Au);
if(Af||Aq){Y.mute();
}M=window.setTimeout(AP.hideStartAd,n);
AM=true;
v=false;
A=null;
}}else{if(A&&!AM){Y.start(A.metaUrl,A.progId,A.hostProgId,A.live,A.timeBegin,A.startPos,A.paused);
if(Af||Aq){Y.mute();
}M=window.setTimeout(AP.hideStartAd,n);
AM=true;
v=false;
A=null;
}}};
this.showMaxi=function(){try{Element.removeClassName($("videoPanel"+Ac),"mini");
Element.removeClassName($("videoPanel"+Ac),"maxi");
}catch(Al){}Element.addClassName($("videoPanel"+Ac),"maxi");
$("videoPanel"+Ac).style.display="block";
};
this.showMini=function(){try{Element.removeClassName($("videoPanel"+Ac),"mini");
Element.removeClassName($("videoPanel"+Ac),"maxi");
}catch(Al){}Element.addClassName($("videoPanel"+Ac),"mini");
$("videoPanel"+Ac).style.display="block";
};
this.toggleSize=function(){AI();
};
this.show=function(e){if(e){$("video"+Ac).style.display="block";
}else{$("videoPanel"+Ac).style.display="block";
}};
this.hide=function(Al){if($("video"+Ac)){if(true||p){try{if(Al){$("video"+Ac).style.display="none";
}else{AP.hideEndAd(false);
AP.hideStartAd();
try{Y.stop(true);
}catch(Am){}$("videoPanel"+Ac).style.display="none";
try{window.clearTimeout(M);
}catch(Am){}try{window.clearTimeout(AX);
}catch(Am){}if(V&&V.onHide){V.onHide();
}}}catch(Am){C.error("HtmlPlayer.hide",Am);
}}else{stopNonIE();
$("videoPanel"+Ac).style.display="none";
try{window.clearTimeout(M);
}catch(Am){}try{window.clearTimeout(AX);
}catch(Am){}if(V&&V.onHide){V.onHide();
}}}};
this.isPlaying=function(){try{if(Y){return Y.isPlaying();
}else{return false;
}}catch(Al){return false;
}};
this.isLive=function(){return AW;
};
this.isMuted=function(Am){try{if(Am){return k;
}else{return Y.isMuted();
}}catch(Al){return false;
}};
this.setVolume=function(e){Y.setVolume(e);
};
this.getVolume=function(){return Y.getVolume();
};
this.mute=function(){Element.addClassName($("muteButton"+Ac),"muteButton");
Element.removeClassName($("muteButton"+Ac),"soundButton");
return Y.mute();
};
this.unmute=function(){Y.unmute();
Element.addClassName($("muteButton"+Ac),"soundButton");
Element.removeClassName($("muteButton"+Ac),"muteButton");
};
this.gotoFullscreen=function(){Y.gotoFullscreen();
};
this.gotoPos=function(e){if(!AW){Y.gotoPos(e);
}};
this.getPos=function(e){if(Y){return Y.getPos();
}else{return 0;
}};
this.getProgId=function(){return s;
};
this.getCurrentItemId=function(){if(K&&K.id!=0){return K.id;
}};
this.hideStartAd=function(){$("video"+Ac).style.visibility="visible";
$("videoAdStart"+Ac).style.display="none";
if($("videoAdStart"+Ac).innerHTML.length>0){window.setTimeout(function(){$("videoAdStart"+Ac).innerHTML="";
},10);
}try{window.clearTimeout(M);
}catch(Al){}};
this.hideEndAd=function(e){if(e==true||e==null){AP.hide();
}$("videoAdEnd"+Ac).innerHTML="";
$("videoAdEnd"+Ac).style.display="none";
};
this.hideToMini=function(){AP.hideEndAd();
try{window.clearTimeout(M);
}catch(Al){}AP.showMini();
};
this.adEnded=function(){if(AU){AU();
}AU=null;
};
function X(){i=true;
}function AE(An,Al){try{if(An<3||An==8||An==10){Element.addClassName($("playButton"+Ac),"playButton");
Element.removeClassName($("playButton"+Ac),"pauseButton");
Element.removeClassName($("playButton"+Ac),"stopButton");
}else{if(false&&AW){Element.addClassName($("playButton"+Ac),"stopButton");
Element.removeClassName($("playButton"+Ac),"pauseButton");
Element.removeClassName($("playButton"+Ac),"playButton");
}else{Element.addClassName($("playButton"+Ac),"pauseButton");
Element.removeClassName($("playButton"+Ac),"stopButton");
Element.removeClassName($("playButton"+Ac),"playButton");
}}if(An==6){r=true;
D({"buffering":true});
}else{r=false;
D({"buffering":false});
}}catch(Am){C.debug("HtmlPlayer.playStateChange",Am);
}}function m(e){Y.gotoFullscreen();
}function AR(){AP.hideStartAd();
G=true;
if(Af||AA){AP.setVolume(R);
AP.mute();
}}function a(){if(AK.length>0&&AK.toLowerCase().indexOf("enablewaitforad")>0){C.debug("HtmlPlayer.start","Retrieving end ad");
AT();
}else{if(!Af){AP.hide();
}}if(V&&V.onVideoEnd){var e;
if(K!=null){e=K.id;
}V.onVideoEnd(Ac,s,e);
}}function Ak(Ao,An,Am,e){var Al;
if(Am.getItemInfo("DartAdId")){if(!h){Al={"ct":"ads/preroll","stream":Am.sourceURL};
}else{Al={"ct":"ads/postroll","stream":Am.sourceURL};
}}else{if(Am.getItemInfo("progId")){Al={"ct":"content","stream":"/TV2stream/Sumo_OnDemand"+AV(Am.name)};
switch(Am.getItemInfo("progId")+""){case"82015":Al["stream"]="/TV2stream/Sumo_Live/TV_2";
break;
case"82016":Al["stream"]="/TV2stream/Sumo_Live/Zebra";
break;
case"82017":Al["stream"]="/TV2stream/Sumo_Live/Filmkanalen";
break;
case"82018":Al["stream"]="/TV2stream/Sumo_Live/Nyhetskanalen";
break;
case"303655":Al["stream"]="/TV2stream/Sumo_Live/Science_Fiction";
break;
case"324298":Al["stream"]="/TV2stream/Sumo_Live/TV_2_HD_beta";
break;
case"115210":Al["stream"]="/TV2stream/Sumo_Live/TV_2_Sport";
break;
}}else{}}h=Al;
if(window.springSensors&&Al){if(Ad){Ad.stop();
}Ad=window.springSensors.track($("video"+Ac),h);
}if(Al){C.debug(Al.ct+": "+Al.stream);
}}function AV(Al){var e="/";
if(Al.length>0){return e+Al.replace(/[^a-zA-Z0-9]+/g,"_").replace(/^_|_$/,"");
}else{return"";
}}function D(e){if(e.live!=null){if(e.live){Element.addClassName("videoControls"+Ac,"live");
}else{Element.removeClassName("videoControls"+Ac,"live");
}}if(e.buffering!=null){if(e.buffering){Element.addClassName("videoControls"+Ac,"buffering");
}else{Element.removeClassName("videoControls"+Ac,"buffering");
}}if(e.statusMsg!=null){if(e.statusMsg){Element.addClassName("videoControls"+Ac,"statusMsg");
}else{Element.removeClassName("videoControls"+Ac,"statusMsg");
}}}function AC(e){$("playerStatus"+Ac).innerHTML=e;
$("playerStatus"+Ac).title=e;
D({"statusMsg":true});
}function U(){if(Element.hasClassName("videoControls"+Ac,"statusMsg")){D({"statusMsg":false});
}}function E(){if(O){if(Aj){AC(Aj);
}else{D({"statusMsg":false});
}Aj=null;
window.clearTimeout(AX);
O=false;
Event.stopObserving("playerStatus"+Ac,"click",AJ,false);
}else{var e=Y.getBitrate();
if(e!=null){O=true;
if($("videoControls"+Ac).className.indexOf("statusMsg")>=0){Aj=$("playerStatus"+Ac).innerHTML;
}if(V&&V.onQualityClick){AC($MR("sumo.web.video.status.quality1")+Math.round(e/10000)*10+$MR("sumo.web.video.status.quality2"));
}else{AC($MR("sumo.web.video.status.quality1")+Math.round(e/10000)*10+$MR("sumo.web.video.status.quality2.noDetails"));
}Event.observe($("playerStatus"+Ac),"click",AJ,false);
$("playerStatus"+Ac).style.cursor="pointer";
AX=window.setTimeout(E,10000);
}}}function AJ(){if(V&&V.onQualityClick){V.onQualityClick();
}Event.stopObserving("playerStatus"+Ac,"click",AJ,false);
$("playerStatus"+Ac).style.cursor="default";
}function c(){if(Y.toggleMute()){Element.addClassName($("muteButton"+Ac),"muteButton");
Element.removeClassName($("muteButton"+Ac),"soundButton");
k=true;
if(V&&V.onMuteChange){V.onMuteChange(Ac,true);
}}else{Element.addClassName($("muteButton"+Ac),"soundButton");
Element.removeClassName($("muteButton"+Ac),"muteButton");
if(V&&V.onMuteChange){V.onMuteChange(Ac,false);
}k=false;
}}function AS(Am,Ao,An){try{window.clearTimeout(AX);
}catch(Ap){}switch(Am){case Y.MSG_WMP_ERROR:AP.hideStartAd();
var Aq=$MR("sumo.web.video.status.wmperror1");
W=Ao;
var Al=4294967295+An+1;
d=Al.toString(16).toUpperCase();
if(V&&V.onError){Aq+=$MR("sumo.web.video.status.wmperror2");
Event.observe($("playerStatus"+Ac),"click",f,false);
$("playerStatus"+Ac).style.cursor="pointer";
}AC(Aq);
break;
case Y.MSG_OPENING:AC($MR("sumo.general.video.status.startingvideo")+AY);
break;
case Y.MSG_CHECKS_IF_STARTED:AC($MR("sumo.general.video.status.checkstarted"));
break;
case Y.MSG_TRIES_AGAIN:AC($MR("sumo.general.video.status.notstarted"));
break;
case Y.MSG_PROGRAM_ERROR:C.debug(Ao);
if(V&&V.onProgramError){V.onProgramError(Ao,An,s);
}break;
}}function f(){if(V&&V.onError){V.onError(W,d,s);
}Event.stopObserving("playerStatus"+Ac,"click",f,false);
$("playerStatus"+Ac).style.cursor="default";
}function u(At,Am,An,Aq,Ao){try{if(r&&Ao<100){$("timeElapsed"+Ac).innerHTML=$MR("sumo.general.video.status.buffering");
$("duration"+Ac).innerHTML=Ao+" %";
if(At==0){AC("Henter video ("+Ao+" % fullført)");
}}else{if(!O){if(AW){AC(AY);
}else{D({"statusMsg":false});
}}if(!(F)){if(An&&An.length>0){if(An.length>7){$("timeElapsed"+Ac).innerHTML=An.substring(1);
}else{$("timeElapsed"+Ac).innerHTML=An;
}}else{$("timeElapsed"+Ac).innerHTML="00:00";
}}if(!AW){if(Aq.length>7){Aq=Aq.substring(1);
}$("duration"+Ac).innerHTML=Aq;
var As=At/Am;
if(AO&&Y.getActualProgId()==s){var Ap=AO.checkForItemChange(At,K);
if(Ap){K=Ap;
var Au=AO.getPrevItem(At);
var Al=AO.getNextItem(At);
if(Au){$("prevButton"+Ac).title=$MR("sumo.general.video.control.skipto")+" «"+Au.title+"»";
}else{$("prevButton"+Ac).title=$MR("sumo.general.video.control.skipback");
}if(Al){$("nextButton"+Ac).title=$MR("sumo.general.video.control.skipto")+" «"+Al.title+"»";
}else{$("nextButton"+Ac).title=$MR("sumo.general.video.control.skipforward");
}if(V.onItemChange){V.onItemChange(s,Ap.id);
}}}if(T&&T.setValue&&!F){x=false;
T.setValue(As,0);
x=true;
}if(Ag){Ag.setValue(As);
}if(Am!=AG&&$("sliderButton"+Ac)){if(T){T.dispose();
}Ag=new b("progressBar"+Ac,"slider"+Ac,"sliderButton"+Ac);
T=new Control.Slider("sliderButton"+Ac,"slider"+Ac,{onChange:function(e){if(x){if(Y){Y.gotoPos(e*AG);
}F=false;
C.debug("slider.onChange",e);
}},onSlide:function(e){t=e*AG;
var Aw=Math.floor(t/3600);
(Aw==0)?Aw="":Aw=Aw+":";
var Ax=t%3600;
var Ay=Math.floor(Ax/60);
(Ay<10)?Ay="0"+Ay+":":Ay=Ay+":";
var Av=Math.floor(Ax%60);
if(Av<10){Av="0"+Av;
}$("timeElapsed"+Ac).innerHTML=Aw+Ay+Av;
}});
F=false;
AG=Am;
}}}}catch(Ar){C.debug("posChange",Ar);
}}function Ah(){var Al=Y.getPos();
if(AO&&!AW){var e=AO.getPrevItem(Al);
if(e){Y.gotoPos(e.timeBegin);
}else{if(Y.getDuration()<360){Y.shiftPos(AD);
}else{Y.shiftPos(AL);
}}}else{if(Y.getDuration()<360){Y.shiftPos(AD);
}else{Y.shiftPos(AL);
}}}function AZ(){var Al=Y.getPos();
if(AO&&!AW){var e=AO.getNextItem(Al);
if(e){Y.gotoPos(e.timeBegin);
}else{if(Y.getDuration()<360){Y.shiftPos(Ab);
}else{Y.shiftPos(B);
}}}else{if(Y.getDuration()<360){Y.shiftPos(Ab);
}else{Y.shiftPos(B);
}}}function z(){F=true;
C.debug("slider","start dragging/"+F);
}function L(){F=false;
}function AI(Al){if($("miniMaxiButton"+Ac)){if(Element.hasClassName($("videoPanel"+Ac),"mini")){Element.removeClassName($("videoPanel"+Ac),"mini");
Element.addClassName($("videoPanel"+Ac),"maxi");
}else{Element.removeClassName($("videoPanel"+Ac),"maxi");
Element.addClassName($("videoPanel"+Ac),"mini");
}}Event.stop(Al);
return false;
}this.toggleSelectorButton=AF;
function AF(e){if($("selectorButton"+Ac)){if(e){Element.removeClassName($("selectorButton"+Ac),"hideSelectorButton");
Element.addClassName($("selectorButton"+Ac),"showSelectorButton");
}else{Element.removeClassName($("selectorButton"+Ac),"showSelectorButton");
Element.addClassName($("selectorButton"+Ac),"hideSelectorButton");
}}return false;
}function b(An,Al,Aq){try{var Ap=$(An);
if($(Al).currentStyle){var Am=parseInt($(Al).currentStyle.width);
var Ar=parseInt($(Aq).currentStyle.width);
}else{var Am=parseInt($(Al).offsetWidth);
var Ar=parseInt($(Aq).offsetWidth);
}}catch(Ao){C.error("HtmlPlayer.ProgressBar constructor",Ao);
}this.setValue=function(e){if(Ap&&Am&&Ar){Ap.style.width=Math.round(((Am-Ar)*e)+(Ar/2))+"px";
}};
}function AB(Am,Al,e,An){}function N(Al,e,Am,An){}function S(Al){try{if(Al){$("videoAdStart"+Ac).innerHTML=Al;
}if($("videoAdStart"+Ac).innerHTML.length>0){$("videoAdStart"+Ac).style.display="block";
AU=AP.startVideo;
}}catch(Am){C.error("HtmlPlayer.showStartAd",Am);
}}function AT(){try{if(AK.length>0){$("videoAdEnd"+Ac).innerHTML=AK;
$("videoAdEnd"+Ac).style.display="block";
AU=AP.hideEndAd;
M=window.setTimeout(AP.adEnded,l);
}else{AP.hide();
}}catch(Al){C.error("HtmlPlayer.showEndAd",Al);
}}function g(){if(V&&V.playerContainer){return V.playerContainer;
}else{return $("videoPanel"+Ac).parentNode.id;
}}function H(Am,Ao,e,Aq,An,Ap){logDebug("Util.writeCookie",Am+"/"+Ao+"/"+e+"/"+An+"/"+Ap);
var Al=Am+"="+escape(Ao)+((e)?"; expires="+e.toGMTString():"")+((Aq)?"; path="+Aq:"")+((An)?"; domain="+An:"")+((Ap)?"; secure":"");
document.cookie=Al;
}function AH(Am){var Al=document.cookie;
var Ao=Am+"=";
var An=Al.indexOf("; "+Ao);
if(An==-1){An=Al.indexOf(Ao);
if(An!=0){return null;
}}else{An+=2;
}var e=document.cookie.indexOf(";",An);
if(e==-1){e=Al.length;
}return unescape(Al.substring(An+Ao.length,e));
}}

function SilverlightPlayer(J,G,i,f,B,b){if(J==null){J=0;
}var R=navigator.userAgent.indexOf("MSIE")>=0&&navigator.userAgent.indexOf("Opera")<0&&navigator.userAgent.indexOf("Mac")<0;
var C=navigator.userAgent.indexOf("Gecko")>=0&&navigator.userAgent.indexOf("Opera")<0&&navigator.userAgent.indexOf("Win")>0;
var H="4.0.50524.0";
var I="3.0.40624.0";
var P="";
if(Silverlight.isInstalled(H)){P="sl4/";
if(B){P="player-beta/";
}}var h=SilverlightPlayer.xapUrl||$MR("sumo.web.video.xap.url").replace(/{subdir}/ig,P);
this.ie=R;
var E;
var Q;
var N;
var L;
var T;
var S;
var F;
var O="video"+J;
var g="videoPanel"+J;
var V=false;
var W;
var a;
if(!f){f=new Object();
}var d=this;
var K=new Object();
try{K.debug=logDebug;
K.error=logError;
}catch(Z){K.error=function(j,k){if(location.href.indexOf("debug=true")>0){alert(j+": "+k.message);
}};
K.debug=function(j,e){if(location.href.indexOf("debug=true")>0&&$("debugList")){$("debugList").innerHTML=$("debugList").innerHTML+"<li>"+j+": "+e+"</li>";
}};
}this.attach=function(){try{}catch(j){K.error("SilverlightPlayer.attach",j);
}};
if(!i){d.attach();
}function M(){this.PlayerClosed=function(){setTimeout(d.hide,10);
};
if(b==null||b){this.PlaybackCompleted=function(){if(f.onVideoEnd){f.onVideoEnd(J,L);
}if(!G){setTimeout(d.hide,10);
}};
}this.PlayerLoaded=function(){V=true;
try{W=$("video"+J).Content.Player;
}catch(e){K.debug("SilverlightPlayer.onLoaded","Script hook not found.");
}};
this.PlaylistEntryChanged=function(j){if(j.Ended){if(F){F.stop();
F=null;
debug("Tracking stopped because stream ended.");
}}else{var m={"stream":j.Url};
var l;
try{l=j.StreamType;
}catch(k){l=j.EntryType;
}switch(l){case 2:m["ct"]="ads/preroll";
break;
case 3:m["ct"]="ads/midroll";
break;
case 4:m["ct"]="ads/postroll";
break;
default:m["ct"]="content";
switch(j.Id+""){case"82015":m["stream"]="/TV2stream/Sumo_Live/TV_2";
break;
case"82016":m["stream"]="/TV2stream/Sumo_Live/Zebra";
break;
case"82017":m["stream"]="/TV2stream/Sumo_Live/Filmkanalen";
break;
case"82018":m["stream"]="/TV2stream/Sumo_Live/Nyhetskanalen";
break;
case"303655":m["stream"]="/TV2stream/Sumo_Live/Science_Fiction";
break;
case"324298":m["stream"]="/TV2stream/Sumo_Live/TV_2_HD";
break;
case"115210":m["stream"]="/TV2stream/Sumo_Live/TV_2_Premier_League_HD";
break;
case"115210":m["stream"]="/TV2stream/Sumo_Live/TV_2_Sport";
break;
default:m["stream"]="/TV2stream/Sumo_OnDemand"+Y(j.Title);
}break;
}K.debug(m.ct+": "+m.stream);
if(F!=null){F.stop();
debug("Tracking stopped.");
}debug("Tracking starts.");
if(window.springSensors){F=window.springSensors.track($("video"+J),m,c);
}}};
}var X=new M();
var c={"getMeta":function(e){return{"pl":"TV 2 Sumo","pv":W?W.getVersion():"n/a","sx":screen.width,"sy":screen.height};
},"getPosition":function(e){if(W){return W.getPos();
}else{return 0;
}},"getDuration":function(e){if(W){return W.getDuration();
}else{return 0;
}}};
function Y(j){var e="/";
if(j.length>0){return e+j.replace(/[^a-zA-Z0-9]+/g,"_").replace(/^_|_$/,"");
}else{return"";
}}function A(j){$(g).innerHTML=$MR("sumo.web.video.upgrademessage.silverlight.4.itcrowd");
Event.stop(j);
}function U(){$(g).innerHTML=$MR("sumo.web.video.upgrademessage.silverlight.4.zebra");
Event.observe("emailLink","click",A,false);
if(!a){a=window.setInterval(D,5000);
}}function D(){if(Silverlight.isInstalled(H)){window.clearInterval(a);
a=null;
insertSlObject();
}else{K.debug("SilverlightPlayer","Not installed yet");
}}this.reset=function(){try{E=false;
V=false;
Q=null;
N=null;
L=null;
if(W){W.stop();
}}catch(j){K.error("SilverlightPlayer.reset",j);
}};
this.detach=function(){try{K.debug("SilverlightPlayer","Player "+J+" going to sleep.");
d.reset();
}catch(j){K.error("SilverlightPlayer.detach",j);
}};
this.start=function(e){Q=e.items;
d.startVideo(e.metaUrl,e.progId,e.hostProgId,e.live,e.timeBegin,e.timeEnd,e.startPos,e.programTitle,e.paused,e.widescreen,e.muted,e.isDrm,e.licensingServer,e.matchId,e.channelId,e.adCategory);
};
this.startVideo=function(r,q,n,u,v,o,AE,y,AB,k,m,j,AD,AA,l,AC){try{function p(e){if(e==null){return"";
}else{return e.replace(/,/ig,"\\,").replace(/=/ig,"\\=");
}}function t(e,AF){var AG=document.createElement("param");
AG.setAttribute("name",e);
AG.setAttribute("value",AF);
return AG;
}function s(AF){util.writeCookie("allowSl3","true",null,"/");
w();
Event.stop(AF);
}function w(){var AH="";
if(f.useLiveMenu!=null&&f.useLiveMenu==false){AH=",useLiveMenu=false";
}var AG="autoPlay=true,assetId="+q+",startPos="+AE+AH+",atHome=true,openSumoOnNavigation=false,muted="+(true&&(m||G));
K.debug("SilverlightPlayer.startVideo","initParams: "+AG);
while($(g).firstChild){$(g).removeChild($(g).firstChild);
}var e;
if(R){var AF='<object type="application/x-silverlight-2" data="data:application/x-silverlight-2," id="video'+J+'" class="videoObject silverlightObject">';
AF+='<param name="EnableGPUAcceleration" value="true"/>';
if(document.location.href.indexOf("enableCacheVisualization=true")>0){AF+='<param name="EnableCacheVisualization" value="true"/>';
}AF+='<param name="Framerate" value="25"/>';
AF+='<param name="IsWindowLess" value="false"/>';
AF+='<param name="AllowHtmlPopupWindow" value="true"/>';
AF+='<param name="EnableHtmlAccess" value="true"/></object>';
$(g).innerHTML+=AF;
e=$("video"+J);
e.callbackObj=X;
e.InitParams=AG;
e.Source=h;
}else{e=document.createElement("object");
e.setAttribute("id","video"+J);
e.className="videoObject silverlightObject";
e.setAttribute("type","application/x-silverlight-2");
e.setAttribute("data","data:application/x-silverlight-2,");
e.appendChild(t("Source",h));
e.appendChild(t("InitParams",AG));
e.appendChild(t("MinRuntimeVersion",I));
e.appendChild(t("EnableGPUAcceleration","true"));
e.appendChild(t("AllowHtmlPopupWindow","true"));
if(document.location.href.indexOf("enableCacheVisualization=true")>0){e.appendChild(t("EnableCacheVisualization","true"));
}e.appendChild(t("Framerate","25"));
e.appendChild(t("IsWindowLess","false"));
e.appendChild(t("EnableHtmlAccess","true"));
e.callbackObj=X;
$(g).appendChild(e);
}}E=u;
L=q;
if(E==null){E=false;
}if(j==null){j=false;
}if(k==null){k=true;
}if(AD==null){AD="";
}if(v==null){v=0;
}if(o==null){o=0;
}if(G||m){startAsmuted=true;
}if(Silverlight.isInstalled(H)){w();
}else{if(Silverlight.isInstalled(I)){if(util.readCookie("allowSl3")=="true"){w();
}else{$(g).innerHTML=$MR("sumo.web.video.upgrademessage.silverlight.4");
Event.observe("sl3ContinueLink","click",s,false);
Event.observe("emailLink","click",A,false);
if(!a){a=window.setInterval(D,5000);
}}}else{if(f.allowFallback){var x=location.href;
if(x.indexOf("?")==-1){x+="?";
}else{x+="&";
}if(x.indexOf("progId=")==-1){x+="progId="+q+"&";
}x+="useLegacyPlayer=true";
$(g).innerHTML=$MR("sumo.web.video.upgrademessage.silverlight.recommend").replace(/{legacyLink}/ig,x);
}else{$(g).innerHTML=$MR("sumo.web.video.upgrademessage.silverlight");
}if(!a){a=window.setInterval(D,5000);
}}}}catch(z){K.error("SilverlightPlayer.startVideo",z);
}};
this.show=function(e){if($("videoControls"+J)){$("videoControls"+J).style.display="none";
}$("videoPanel"+J).style.display="block";
};
this.hide=function(j){try{if(W){if(W.IsPlaying){W.Stop();
}$("videoPanel"+J).style.display="none";
}if(f&&f.onHide){f.onHide();
}$("videoPanel"+J).style.display="none";
}catch(k){K.error("SilverlightPlayer.hide",k);
}};
this.isPlaying=function(){try{if(W){return W.IsPlaying;
}else{return false;
}}catch(j){return false;
}};
this.isLive=function(){return E;
};
this.isMuted=function(k){try{if(k){return T;
}else{return W.IsMuted;
}}catch(j){return false;
}};
this.setVolume=function(e){if(W){W.Volume=e/100;
}};
this.getVolume=function(){if(W){return Math.round(W.Volume*100);
}};
this.mute=function(){S=true;
if(W){return !(W.IsMuted=true);
}};
this.unmute=function(){S=true;
if(W){return !(W.IsMuted=false);
}};
this.gotoFullscreen=function(){if(W){W.gotoFullscreen();
}};
this.gotoPos=function(e){if(W&&!E){W.gotoPos(e);
}};
this.getPos=function(){if(W){return W.getPos();
}};
this.getProgId=function(){return L;
};
this.getCurrentItemId=function(){if(N&&N.id!=0){return N.id;
}};
this.adEnded=function(){};
}

function Html5Player(H,F,X,W,A,U){if(H==null){H=0;
}var O=navigator.userAgent.indexOf("MSIE")>=0&&navigator.userAgent.indexOf("Opera")<0&&navigator.userAgent.indexOf("Mac")<0;
var B=navigator.userAgent.indexOf("Gecko")>=0&&navigator.userAgent.indexOf("Opera")<0&&navigator.userAgent.indexOf("Win")>0;
this.ie=O;
var D;
var N;
var K;
var J;
var Q;
var P;
var E;
var L="video"+H;
var Y="videoPanel"+H;
var S=false;
var M;
var C=false;
var V=this;
var I=new Object();
try{I.debug=logDebug;
I.error=logError;
}catch(T){I.error=function(Z,a){if(location.href.indexOf("debug=true")>0){alert(Z+": "+a.message);
}};
I.debug=function(a,Z){if(location.href.indexOf("debug=true")>0&&$("debugList")){$("debugList").innerHTML=$("debugList").innerHTML+"<li>"+a+": "+Z+"</li>";
}};
}this.attach=function(){try{}catch(Z){I.error("Html5Player.attach",Z);
}};
if(!X){V.attach();
}this.reset=function(){try{D=false;
S=false;
N=null;
K=null;
J=null;
V.hide();
}catch(Z){I.error("Html5Player.reset",Z);
}};
this.detach=function(){try{I.debug("Html5Player","Player "+H+" going to sleep.");
V.reset();
}catch(Z){I.error("Html5Player.detach",Z);
}};
this.start=function(Z){N=Z.items;
V.startVideo(Z.metaUrl,Z.progId,Z.hostProgId,Z.live,Z.timeBegin,Z.timeEnd,Z.startPos,Z.programTitle,Z.paused,Z.widescreen,Z.muted,Z.isDrm,Z.licensingServer,Z.matchId,Z.channelId,Z.adCategory);
};
this.startVideo=function(i,h,d,k,l,f,s,m,p,a,c,Z,r,o,b,q){try{function g(e){if(e==null){return"";
}else{return e.replace(/,/ig,"\\,").replace(/=/ig,"\\=");
}}function j(e,t){var u=document.createElement("param");
u.setAttribute("name",e);
u.setAttribute("value",t);
return u;
}D=k;
J=h;
if(D==null){D=false;
}if(Z==null){Z=false;
}if(a==null){a=true;
}M=document.createElement("video");
M.setAttribute("id",L);
M.className="videoObject silverlightObject";
M.autoplay=true;
M.controls=true;
M.muted=c||F;
C=M.muted;
M.src="http://wapb.tv2.no/wap/fvideor/billing/adactus?go=/&PROGID="+J;
M.addEventListener("volumechange",R,false);
M.addEventListener("ended",G,false);
while($(Y).firstChild){$(Y).removeChild($(Y).firstChild);
}$(Y).appendChild(M);
}catch(n){I.error("SilverlightPlayer.startVideo",n);
}};
function R(){if(C!=M.muted){if(P){P=false;
}else{Q=muted;
if(W.onMuteChange){W.onMuteChange(H,muted);
}}C=M.muted;
}}function G(){if(U==null||U){if(W.onVideoEnd){var Z;
if(K!=null){Z=K.id;
}W.onVideoEnd(H,J,Z);
}V.hide();
}}this.show=function(Z){$("videoPanel"+H).style.display="block";
};
this.hide=function(){try{if(M){var a=M.parentNode;
a.removeChild(M);
$("videoPanel"+H).style.display="none";
if(W&&W.onHide){W.onHide();
}}M=null;
}catch(Z){I.error("Html5Player.hide",Z);
}};
this.isPlaying=function(){try{return M!=null;
}catch(Z){return false;
}};
this.isLive=function(){return D;
};
this.isMuted=function(a){try{if(a){return Q;
}else{return M.muted;
}}catch(Z){return false;
}};
this.setVolume=function(Z){if(M){M.volume=Z/100;
}};
this.getVolume=function(){if(M){return Math.round(M.volume*100);
}};
this.mute=function(){P=true;
var Z=M.muted;
if(M){M.muted=true;
}return Z;
};
this.unmute=function(){P=true;
var Z=M.muted;
if(M){M.muted=false;
}return Z;
};
this.gotoFullscreen=function(){};
this.gotoPos=function(Z){if(sp&&!D){sp.gotoPos(Z);
}};
this.getPos=function(){return 0;
};
this.getProgId=function(){return J;
};
this.getCurrentItemId=function(){if(K&&K.id!=0){return K.id;
}};
}

function WmvIECorePlayer(Z,I){I.debug("WmvIECorePlayer created");
var o;
this.p=o;
var N="";
var Q;
var B;
var c=false;
var F;
var D;
var i=500;
var P=this;
var J;
var m;
var Y;
var T=true;
var S;
var C=false;
var h;
var t;
var q;
var X;
var s;
var R=false;
var j=false;
var U=0;
var E=0;
var A=0;
var V={0:"Undefined",1:"Stopped",2:"Paused",3:"Playing",4:"ScanForward",5:"ScanReverse",6:"Buffering",7:"Waiting",8:"MediaEnded",9:"Transitioning",10:"Ready",11:"Reconnecting"};
var M={0:"Undefined",1:"PlaylistChanging",2:"PlaylistLocating",3:"PlaylistConnecting",4:"PlaylistLoading",5:"PlaylistOpening",6:"PlaylistOpenNoMedia",7:"PlaylistChanged",8:"MediaChanging",9:"MediaLocating",10:"MediaConnecting",11:"MediaLoading",12:"MediaOpening",13:"MediaOpen",14:"BeginCodecAcquisition",15:"EndCodecAcquisition",16:"BeginLicenseAcquisition",17:"EndLicenseAcquisition",18:"BeginIndividualization",19:"EndIndividualization",20:"MediaWaiting",21:"OpeningUnknownURL"};
try{var r=$(Z);
var l='<object id="'+Z+'" class="'+r.className+'" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6">';
l+='<param name="stretchToFit" value="true"><param name="uiMode" value="none"><param name="url" value="http://webtv.tv2.no/webtv/webtv/images/pixel.gif"><param name="autoStart" value="false">';
l+='<param name="enableContextMenu" value="true"><param name="volume" value="85"><param name="windowlessVideo" value="false">';
l+="</object>";
r.outerHTML=l;
o=$(Z);
o.attachEvent("OpenStateChange",a);
o.attachEvent("PlayStateChange",O);
o.attachEvent("StatusChange",g);
o.attachEvent("Error",d);
o.attachEvent("Buffering",H);
o.attachEvent("Click",n);
}catch(u){I.error("Player.constructor",u);
I.error("Player.constructor","Could not access HTML element for WMP");
}function a(w){if(location.href.indexOf("debugStates=true")>0){I.debug("Player.wmpOpenStChg",w+": "+M[w]);
}if(w==14||w==16||w==18){U++;
}if(w==15||w==17||w==19){U--;
}if(P.openStateChange){P.openStateChange(w,t);
}if(w==13&&o.currentMedia){var x=o.currentMedia.getItemInfo("entry-type");
if(x=="error"){var e=o.currentMedia.getItemInfo("title");
var p=o.currentMedia.getItemInfo("abstract");
P.onStatusChange(P.MSG_PROGRAM_ERROR,e,p);
}if(!x){x="program";
}I.debug("Player.wmpOpenStChg","Media changing: "+o.currentMedia.getItemInfo("entry-type"));
if(P.onVideoChange){P.onVideoChange(o.currentMedia.name,x,o.currentMedia,o.URL);
}if(j){o.settings.mute=true;
}}t=w;
}function n(p,x,w,e){if(P.onPlayerClick&&p==1){P.onPlayerClick(p,x,w,e);
}}function O(e){if(location.href.indexOf("debugStates=true")>0){I.debug("Player.wmpPlayStChg",e+": "+V[e]);
}if(P.onPlayStateChange){P.onPlayStateChange(e,h);
}if(e==3&&D&&D>0&&(Q==P.getActualProgId())){P.gotoPos(D);
D=null;
}if((e==10||e==0)&&!P.finished&&P.started){I.debug("Player.wmpPlayStChg","fire event onVideoEnd");
P.finished=true;
if(P.onVideoEnd){P.onVideoEnd();
}}if(j){o.settings.mute=true;
}h=e;
}function g(){if(P.onStatusChange&&o.playState!=6){P.onStatusChange(P.MSG_WMP_STATUS,o.status,o.playState);
}}function d(){var x="";
var w=0;
for(var p=0;
p<o.error.errorCount;
p++){var e=o.error.item(p);
x+=e.errorDescription+" / ";
w=e.errorCode;
I.error("Player.p ("+o.id+") ",e.errorCode+": "+e.errorDescription);
}x=x.substring(0,x.length-4);
o.error.clearErrorQueue();
if(T&&P.onStatusChange){P.onStatusChange(P.MSG_WMP_ERROR,x,w);
}}function H(){}function W(){I.debug("Player.tryLive","Attempt "+E);
try{var p=6;
if(E<p){if(E==0){o.URL=N;
o.controls.play();
}else{o.controls.play();
}E++;
k();
}else{if(E==p){T=true;
E++;
k();
}}}catch(w){I.debug("CorePlayer.tryLive","Player element probably missing.");
if(P.onCeased){P.onCeased();
}}}function k(){try{var w=false;
var p;
var z=0;
A++;
if(P.onStatusChange){P.onStatusChange(P.MSG_CHECKS_IF_STARTED);
}p=o.openState;
w=(o.error.errorCount>0);
if(w){z=o.error.item(0).errorCode+"";
}}catch(y){I.debug("CorePlayer.evaluateLiveAttempt1","Player element probably missing.");
return ;
}if(A>20&&U<=0){try{A=0;
v();
I.debug("Player.evaluateLive","Nothing seems to be happening, giving up for a while");
if(P.onStatusChange){P.onStatusChange(P.MSG_TRIES_AGAIN);
}}catch(y){I.error("CorePlayer.evaluateLiveAttempt2",y);
}}else{if(p==13){try{I.debug("Player.evaluateLive","Video opening");
var x=parseFloat(o.currentMedia.getItemInfo("author"));
if(!x){x=0;
}if(!B){B=Q;
}if(x>0&&!(Q==x||B==x)){I.debug("Player.evaluateLive","progId mismatch: "+Q+"/"+B+"/"+x);
if(P.onStatusChange){P.onStatusChange(P.MSG_WRONG_PROGRAM);
}P.stop();
v();
}else{I.debug("Player.evaluateLive","Correct progId or no streamProgId: "+Q+"/"+B+"/"+x);
J=window.setInterval(b,i);
if(P.onBufferingStart){P.onBufferingStart();
}T=true;
}}catch(y){I.error("CorePlayer.evaluateLiveAttempt3",y);
}}else{try{if(w&&(z=="-2147014835"||z=="-1072885299")&&o.controls.currentPosition==0){I.debug("Player.evaluateLive","Error in player, show probably not started");
o.error.clearErrorQueue();
v();
if(P.onStatusChange){P.onStatusChange(P.MSG_TRIES_AGAIN);
}}else{m=window.setTimeout(k,1000);
}}catch(y){I.error("CorePlayer.evaluateLiveAttempt4",y);
}}}}function v(){var e=5000;
Y=window.setTimeout(W,e);
}function K(){if(J){window.clearInterval(J);
}if(m){window.clearInterval(m);
}if(Y){window.clearInterval(Y);
}}function b(){if(!o){if(P.onCeased){P.onCeased();
}return ;
}if(o.openState==13&&o.playState!=10){if(P.onPosChange){P.onPosChange(o.controls.currentPosition,o.currentMedia.duration,o.controls.currentPositionString,o.currentMedia.durationString,o.network.bufferingProgress);
}if(!o.fullScreen){o.uiMode="none";
}if(o.playState==6&&P.onStatusChange&&o.network.bufferingProgress<100){P.onStatusChange(P.MSG_WMP_BUFFERING,o.network.bufferingProgress);
}if(G()){I.debug("Player.statusUpdater","First buffering finished");
P.started=true;
if(R){o.controls.pause();
}if(P.onVideoStart){P.onVideoStart();
}}}if(j){o.settings.mute=true;
}if(L()&&P.onPacketsReceived){P.onPacketsReceived();
}}function G(){if(o.controls.currentPosition==0){if(S==0&&o.network.sourceProtocol!="http"&&o.network.bufferingProgress==100){S=1;
return true;
}else{return false;
}}else{if(S==0){S=1;
return true;
}else{return false;
}}}function L(){if(!C&&o.network.receivedPackets>0){C=true;
return true;
}else{return false;
}}function f(){}this.MSG_WMP_STATUS=0;
this.MSG_WMP_BUFFERING=1;
this.MSG_WMP_ERROR=2;
this.MSG_OPENING=101;
this.MSG_NO_CONNECTION=102;
this.MSG_WRONG_PROGRAM=103;
this.MSG_CHECKS_IF_STARTED=104;
this.MSG_TRIES_AGAIN=105;
this.MSG_PROGRAM_ERROR=106;
this.progId=Q;
this.started=false;
this.finished=false;
this.start=function(w,p,AB,y,AA,z,x){if(!o){if(P.onCeased){P.onCeased();
}return ;
}try{K();
P.finished=false;
P.started=false;
S=0;
C=false;
h=-1;
t=-1;
q=100;
X=0;
s=0;
E=0;
U=0;
N=w;
Q=p;
B=AB;
c=y;
F=AA;
D=z;
if(c==null){c=false;
}if(P.onStatusChange){P.onStatusChange(P.MSG_OPENING);
}if(c){W();
}else{J=window.setInterval(b,i);
o.URL=N;
o.controls.play();
if(x&&!c){R=true;
}else{R=false;
}if(P.onBufferingStart){P.onBufferingStart();
}}I.debug("Player.start","Started");
}catch(AC){I.error("CorePlayer.start",AC);
}};
this.reset=function(e){K();
if(e&&o){o.close();
}};
this.play=function(){try{if(o.openState==13){o.controls.play();
}P.finished=false;
}catch(p){I.error("Player.play",p);
}};
this.pause=function(){try{if(o.openState==13&&!c){o.controls.pause();
}}catch(p){I.error("Player.pause",p);
}};
this.stop=function(w){try{window.clearInterval(m);
}catch(p){}try{window.clearInterval(Y);
}catch(p){}try{o.controls.stop();
if(w){o.close();
}}catch(p){}};
this.togglePlay=function(){try{I.debug("Player.togglePlay",o.openState+"/"+o.playState);
if(o.openState==13){if(c){if(o.playState==3){o.controls.stop();
return true;
}else{if(o.playState==1){o.controls.play();
return false;
}}}else{if(o.playState==3){o.controls.pause();
return true;
}else{if(o.playState==2||o.playState==1){o.controls.play();
return false;
}}}}else{if(o.openState==6){o.controls.stop();
o.controls.play();
}else{return false;
}}}catch(p){I.error("Player.playToggle",p);
return false;
}};
this.gotoFullscreen=function(){try{if(o.playState==3){o.uiMode="full";
o.fullScreen=true;
}}catch(p){I.error("gotoFullscreen",p);
}};
this.isFullscreen=function(){return o.fullScreen;
};
this.getBitrate=function(){try{return o.network.bitRate;
}catch(p){I.error("CorePlayer.getBitrate",p);
}};
this.volumeUp=function(p){try{if(!p){p=10;
}P.unmute();
var x=o.settings.volume+p;
if(x>100){x=100;
}o.settings.volume=x;
return x;
}catch(w){I.error("volumeUp",w);
}};
this.setVolume=function(w){try{o.settings.volume=w;
}catch(p){I.error("setVolume",p);
}};
this.getVolume=function(){try{return o.settings.volume;
}catch(p){I.error("getVolume",p);
}};
this.volumeDown=function(p){try{if(!p){p=10;
}P.unmute();
var x=o.settings.volume-p;
if(x<0){x=0;
}o.settings.volume=x;
return x;
}catch(w){I.error("volumeDown",w);
}};
this.toggleMute=function(){try{o.settings.mute=!o.settings.mute;
j=!j;
I.debug("Player.toggleMute",o.settings.mute);
return o.settings.mute;
}catch(p){I.error("toggleMute",p);
}};
this.mute=function(){try{var w=o.settings.mute;
o.settings.mute=true;
j=true;
return w;
}catch(p){I.error("mute",p);
}};
this.unmute=function(){try{var w=o.settings.mute;
o.settings.mute=false;
j=false;
return w;
}catch(p){I.error("unmute",p);
}};
this.isMuted=function(){try{return o.settings.mute;
}catch(p){I.error("ismuted",p);
}};
this.getPos=function(){try{return o.controls.currentPosition;
}catch(p){I.error("Coreplayer.getPos",p);
}};
this.getDuration=function(){try{return o.currentMedia.duration;
}catch(p){I.error("Coreplayer.getDuration",p);
}};
this.gotoPos=function(p){try{o.controls.currentPosition=p;
}catch(w){I.error("gotoPos",w);
if(!P.started){o.close();
}}};
this.shiftPos=function(x){try{var p=o.controls.currentPosition+x;
if(p+x/2<o.currentMedia.duration){o.controls.currentPosition=p;
}}catch(w){I.error("shiftPos",w);
if(!P.started){o.close();
}}};
this.isPlaying=function(){try{return !(o.playState<2||o.playState==8||o.playState==10);
}catch(p){I.error("CorePlayer.isPlaying",p);
return false;
}};
this.isLive=function(){return c;
};
this.getActualProgId=function(){if(o.currentMedia){return o.currentMedia.getItemInfo("progId");
}else{return false;
}};
this.onStatusChange=null;
this.onPosChange=null;
this.onBufferProgress=null;
this.onPlayStateChange=null;
this.onOpenStateChange=null;
this.onQualityChange=null;
this.onPlayerClick=null;
this.onBufferingStart=null;
this.onVideoStart=null;
this.onPacketsReceived=null;
this.onVideoEnd=null;
this.onVideoChange=null;
this.onCeased=null;
}

function WmvSimpleCorePlayer(I,J,x,i){J.debug("WmvSimpleCorePlayer created");
var AA;
var P;
var AB="";
this.p=AA;
var S="";
var X;
var B;
var r=false;
var D;
var C;
var a=false;
var n=false;
var W=this;
try{AA=$(I);
P=AA.parentNode;
AB=AA.className;
}catch(AD){J.error("SimplePlayer",AD);
J.error("SimplePlayer","Could not access HTML element for WMP");
}var U=0;
var q=1;
var G=2;
var k=101;
var h=102;
var O=103;
var g=104;
var L=105;
this.MSG_STATUS=U;
this.MSG_BUFFERING=q;
this.MSG_ERROR=G;
this.MSG_OPENING=k;
this.MSG_NO_CONNECTION=h;
this.MSG_WRONG_PROGRAM=O;
this.MSG_CHECKS_IF_STARTED=g;
this.MSG_TRIES_AGAIN=L;
this.getProgId=AE;
this.getStarted=c;
this.getFinished=T;
this.start=j;
this.play=l;
this.pause=A;
this.stop=b;
this.togglePlay=K;
this.gotoFullscreen=Q;
this.isFullscreen=F;
this.isSubtitled=u;
this.getBitrate=v;
this.volumeUp=Z;
this.setVolume=V;
this.getVolume=N;
this.volumeDown=M;
this.toggleMute=AC;
this.mute=R;
this.unmute=m;
this.isMuted=E;
this.getPos=d;
this.getDuration=Y;
this.gotoPos=t;
this.shiftPos=f;
this.isPlaying=s;
this.isLive=H;
this.disableSubtitles=AF;
this.enableSubtitles=z;
function AE(){return X;
}function c(){return started;
}function T(){}function j(AI,AG,AL,AH,AK,AJ,e,p){r=AH;
X=AG;
B=AL;
S=AI;
a=e;
D=AK;
C=AJ;
n=p;
y();
}function y(){var e;
if(navigator.userAgent.toLowerCase().indexOf("mac")>0&&navigator.userAgent.toLowerCase().indexOf("gecko")>0){J.debug("SimplePlayer","Creating plugin code for Firefox on MacOS");
e=document.createElement("embed");
e.id=I;
e.setAttribute("class",AB+" controlsBuiltIn");
e.setAttribute("type","application/x-mplayer2");
e.setAttribute("scale","tofit");
e.setAttribute("src",S);
e.setAttribute("filename",S);
if(a){e.setAttribute("autoplay","false");
}else{e.setAttribute("autoplay","true");
}e.setAttribute("controller","true");
if(C){vpNonIE.setAttribute("currentPosition",C);
}e.setAttribute("pluginspage","http://www.microsoft.com/windows/windowsmedia/player/wmcomponents.mspx");
}else{J.debug("VideoPlayer","Creating standards-compliant plugin code");
var p;
e=document.createElement("object");
e.id=I;
e.setAttribute("class",AB+" controlsBuiltIn");
if(navigator.userAgent.toLowerCase().indexOf("opera")>=0&&navigator.userAgent.toLowerCase().indexOf("win")>0){e.setAttribute("type","application/x-ms-wmp");
}else{e.setAttribute("type","application/x-mplayer2");
}p='<param name="stretchToFit" value="1"><param name="displaySize" value="4"><param name="autoSize" value="0"><param name="allowChangeDisplaySize" value="1">';
if(i&&i.showControls){p+='<param name="showControls" value="1"><param name="showStatusBar" value="1">';
}else{p+='<param name="showControls" value="0"><param name="showStatusBar" value="0">';
}if(C){p+='<param name="currentPosition" value="'+C+'">';
}if(n){p+='<param name="mute" value="1">';
}else{p+='<param name="volume" value="90">';
}if(a){p+='<param name="autoStart" value="0"><param name="AUTOPLAY" value="false">';
}else{p+='<param name="autoStart" value="1"><param name="AUTOPLAY" value="true">';
}p+='<param name="enableContextMenu" value="1">';
p+='<param name="windowlessVideo" value="0"><param name="src" value="'+S+'">';
p+='<param name="SCALE" value="tofit">';
if(x){p+='<param name="captioningID" value="'+x+'">';
}if(!r){p+='<param name="showTracker" value="1">';
}else{p+='<param name="showTracker" value=0">';
}e.innerHTML=p;
}P.replaceChild(e,AA);
started=true;
Event.observe(e,"click",W.onPlayerClick,false);
AA=e;
}function w(AG,AI,e,AK,AH,AJ){logDebug("Util.writeCookie",AG+"/"+AI+"/"+e+"/"+AH+"/"+AJ);
var p=AG+"="+escape(AI)+((e)?"; expires="+e.toGMTString():"")+((AK)?"; path="+AK:"")+((AH)?"; domain="+AH:"")+((AJ)?"; secure":"");
document.cookie=p;
}function o(AG){var p=document.cookie;
var AI=AG+"=";
var AH=p.indexOf("; "+AI);
if(AH==-1){AH=p.indexOf(AI);
if(AH!=0){return null;
}}else{AH+=2;
}var e=document.cookie.indexOf(";",AH);
if(e==-1){e=p.length;
}return unescape(p.substring(AH+AI.length,e));
}function l(){return false;
}function A(){return false;
}function b(p){var e=document.createElement("div");
e.id=I;
e.setAttribute("class",AB+" controlsBuiltIn");
if(AA){P.replaceChild(e,AA);
}AA=e;
}function K(){return false;
}function Q(){return false;
}function F(){return false;
}function u(){return true;
}function z(){return false;
}function AF(){return false;
}function v(){return 0;
}function Z(e){return false;
}function V(e){return false;
}function N(){return 100;
}function M(e){return false;
}function AC(){return false;
}function R(){return false;
}function m(){return false;
}function E(){return false;
}function d(){return false;
}function Y(){return false;
}function t(e){return false;
}function f(e){return false;
}function s(){return Element.visible(P);
}function H(){return r;
}this.getActualProgId=function(){return false;
};
this.onStatusChange=null;
this.onPosChange=null;
this.onBufferProgress=null;
this.onPlayStateChange=null;
this.onOpenStateChange=null;
this.onQualityChange=null;
this.onPlayerClick=null;
this.onBufferingStart=null;
this.onVideoStart=null;
this.onVideoEnd=null;
this.onCeased=null;
}

function WmvGeckoCorePlayer(Z,H){H.debug("WmvGeckoCorePlayer created");
var o;
this.p=o;
var O="";
var Q;
var B;
var d=false;
var F;
var D;
var i=500;
var P=this;
var I;
var m;
var Y;
var T=true;
var S;
var C=false;
var h;
var t;
var q;
var X;
var s;
var R=false;
var j=false;
var U=0;
var c=false;
var L;
var E=0;
var A=0;
var v=navigator.userAgent.indexOf("WebKit")>0&&navigator.userAgent.indexOf("Win")>0;
var N={0:"Undefined",1:"PlaylistChanging",2:"PlaylistLocating",3:"PlaylistConnecting",4:"PlaylistLoading",5:"PlaylistOpening",6:"PlaylistOpenNoMedia",7:"PlaylistChanged",8:"MediaChanging",9:"MediaLocating",10:"MediaConnecting",11:"MediaLoading",12:"MediaOpening",13:"MediaOpen",14:"BeginCodecAcquisition",15:"EndCodecAcquisition",16:"BeginLicenseAcquisition",17:"EndLicenseAcquisition",18:"BeginIndividualization",19:"EndIndividualization",20:"MediaWaiting",21:"OpeningUnknownURL"};
var V={0:"Undefined",1:"Stopped",2:"Paused",3:"Playing",4:"ScanForward",5:"ScanReverse",6:"Buffering",7:"Waiting",8:"MediaEnded",9:"Transitioning",10:"Ready",11:"Reconnecting"};
try{var r=$(Z);
var K=r.parentNode;
var b=document.createElement("object");
b.setAttribute("id",Z);
b.setAttribute("class",r.className);
b.setAttribute("type","application/x-ms-wmp");
b.setAttribute("pluginspage","http://port25.technet.com/pages/windows-media-player-firefox-plugin-download.aspx");
var l='<param name="stretchToFit" value="true"><param name="uiMode" value="none"><param name="url" value="http://webtv.tv2.no/webtv/webtv/images/pixel.gif"><param name="autoStart" value="false">';
l+='<param name="enableContextMenu" value="true"><param name="volume" value="85"><param name="windowlessVideo" value="false">';
l+="</object>";
b.innerHTML=l;
K.replaceChild(b,r);
o=$(Z);
}catch(u){H.error("WmvGeckoCorePlayer.constructor",u);
H.error("WmvGeckoCorePlayer.constructor","Could not access HTML element for WMP");
}function n(p,y,x,e){if(P.onPlayerClick&&p==1){P.onPlayerClick(p,y,x,e);
}}function W(){H.debug("WmvGeckoCorePlayer.tryLive","Attempt "+E);
try{var p=6;
if(E<p){if(E==0){o.URL=O;
o.controls.play();
}else{o.controls.play();
}E++;
k();
}else{if(E==p){T=true;
E++;
k();
}}}catch(x){H.debug("WmvGeckoCorePlayer.tryLive","Player element probably missing.");
if(P.onCeased){P.onCeased();
}}}function k(){try{var x=false;
var p;
var AA=0;
A++;
if(P.onStatusChange){P.onStatusChange(P.MSG_CHECKS_IF_STARTED);
}p=o.openState;
x=(o.error.errorCount>0);
if(x){AA=o.error.item(0).errorCode+"";
}}catch(z){H.debug("WmvGeckoCorePlayer.evaluateLiveAttempt1","Player element probably missing.");
return ;
}if(A>20&&U<=0){try{A=0;
w();
H.debug("WmvGeckoCorePlayer.evaluateLive","Nothing seems to be happening, giving up for a while");
if(P.onStatusChange){P.onStatusChange(P.MSG_TRIES_AGAIN);
}}catch(z){H.error("WmvGeckoCorePlayer.evaluateLiveAttempt2",z);
}}else{if(p==13){try{H.debug("WmvGeckoCorePlayer.evaluateLive","Video opening");
var y=parseFloat(o.currentMedia.getItemInfo("author"));
if(!y){y=0;
}if(!B){B=Q;
}if(y>0&&!(Q==y||B==y)){H.debug("WmvGeckoCorePlayer.evaluateLive","progId mismatch: "+Q+"/"+B+"/"+y);
if(P.onStatusChange){P.onStatusChange(P.MSG_WRONG_PROGRAM);
}P.stop();
w();
}else{H.debug("WmvGeckoCorePlayer.evaluateLive","Correct progId or no streamProgId: "+Q+"/"+B+"/"+y);
I=window.setInterval(a,i);
if(P.onBufferingStart){P.onBufferingStart();
}T=true;
}}catch(z){H.error("WmvGeckoCorePlayer.evaluateLiveAttempt3",z);
}}else{try{if(x&&(AA=="-2147014835"||AA=="-1072885299")&&o.controls.currentPosition==0){H.debug("WmvGeckoCorePlayer.evaluateLive","Error in player, show probably not started");
o.error.clearErrorQueue();
w();
if(P.onStatusChange){P.onStatusChange(P.MSG_TRIES_AGAIN);
}}else{m=window.setTimeout(k,1000);
}}catch(z){H.error("WmvGeckoCorePlayer.evaluateLiveAttempt4",z);
}}}}function w(){var e=5000;
Y=window.setTimeout(W,e);
}function J(){if(I){window.clearInterval(I);
}if(m){window.clearInterval(m);
}if(Y){window.clearInterval(Y);
}}function a(){if(!o||!o.controls){if(P.onCeased){P.onCeased();
}return ;
}f();
if(o.openState==13&&o.playState!=10){if(P.onPosChange){P.onPosChange(o.controls.currentPosition,o.currentMedia.duration,o.controls.currentPositionString,o.currentMedia.durationString,o.network.bufferingProgress);
}if(!o.fullScreen){o.uiMode="none";
}if(o.playState==6&&P.onStatusChange&&o.network.bufferingProgress<100){P.onStatusChange(P.MSG_WMP_BUFFERING,o.network.bufferingProgress);
}if(G()){H.debug("WmvGeckoCorePlayer.statusUpdater","First buffering finished");
P.started=true;
if(R){o.controls.pause();
}if(P.onVideoStart){P.onVideoStart();
}}}if(M()&&P.onPacketsReceived){P.onPacketsReceived();
}}function G(){if(o.controls.currentPosition==0){if(S==0&&o.network.sourceProtocol!="http"&&o.network.bufferingProgress==100){S=1;
return true;
}else{return false;
}}else{if(S==0){S=1;
return true;
}else{return false;
}}}function M(){if(!C&&o.network.receivedPackets>0){C=true;
return true;
}else{return false;
}}function f(){var y=o.playState;
var p=o.openState;
if(o.error.errorCount>0){g();
}var z;
if(o.currentMedia){z=o.currentMedia.getItemInfo("entry-type");
}if(y==3&&D&&D>0&&(Q==P.getActualProgId())){P.gotoPos(D);
D=null;
}if(y!=h){if(P.onPlayStateChange){P.onPlayStateChange(y,h);
}if((y==10||y==0)&&!P.finished&&P.started&&!c){H.debug("WmvGeckoCorePlayer.handleStateChanges","fire event onVideoEnd for "+Z);
P.finished=true;
if(P.onVideoEnd){P.onVideoEnd();
}}if(y==3&&S==0&&D&&D>0&&(!P.getActualProgId()||Q==P.getActualProgId())){P.gotoPos(D);
D=null;
}h=y;
}if(p!=t){t=p;
}if(o.currentMedia&&!(L&&L.sourceURL==o.currentMedia.sourceURL)){L=o.currentMedia;
if(z=="error"){var e=o.currentMedia.getItemInfo("title");
var x=o.currentMedia.getItemInfo("abstract");
if(P.onStatusChange){P.onStatusChange(P.MSG_PROGRAM_ERROR,e,x);
}}if(!z){z="program";
}H.debug("WmvGeckoCorePlayer.handleStateChanges","Media changing: "+o.currentMedia.getItemInfo("entry-type"));
if(P.onVideoChange){P.onVideoChange(o.currentMedia.name,z,o.currentMedia,o.URL);
}if(j){o.settings.mute=true;
}}}function g(){var y="";
var x=0;
for(var p=0;
p<o.error.errorCount;
p++){var e=o.error.item(p);
y+=e.errorDescription+" / ";
x=e.errorCode;
H.error("WmvGeckoCorePlayer.p ("+o.id+")",e.errorCode+": "+e.errorDescription);
}y=y.substring(0,y.length-4);
o.error.clearErrorQueue();
if(T&&P.onStatusChange){P.onStatusChange(P.MSG_WMP_ERROR,y,x);
}}this.MSG_WMP_STATUS=0;
this.MSG_WMP_BUFFERING=1;
this.MSG_WMP_ERROR=2;
this.MSG_OPENING=101;
this.MSG_NO_CONNECTION=102;
this.MSG_WRONG_PROGRAM=103;
this.MSG_CHECKS_IF_STARTED=104;
this.MSG_TRIES_AGAIN=105;
this.MSG_PROGRAM_ERROR=106;
this.progId=Q;
this.started=false;
this.finished=false;
this.start=function(x,p,AC,z,AB,AA,y){J();
if(!o){if(P.onCeased){P.onCeased();
}return ;
}try{o.style.visibility="visible";
window.setTimeout(function(){try{var AE=0;
P.finished=false;
P.started=false;
c=false;
L=null;
S=0;
C=false;
h=-1;
t=-1;
q=100;
X=0;
s=0;
E=0;
U=0;
O=x;
Q=p;
B=AC;
d=z;
F=AB;
D=AA;
if(d==null){d=false;
}if(P.onStatusChange){P.onStatusChange(P.MSG_OPENING);
}if(d){W();
}else{I=window.setInterval(a,i);
o.URL=O;
o.controls.play();
if(y){R=true;
}else{R=false;
}if(P.onBufferingStart){P.onBufferingStart();
}}H.debug("WmvGeckoCorePlayer.start","Started");
}catch(AF){H.error("WmvGeckoCorePlayer.delayedStart",AF);
}},500);
}catch(AD){H.error("WmvGeckoCorePlayer.start",AD);
}};
this.reset=function(e){J();
if(e&&o){o.close();
}};
this.play=function(){try{if(o.openState==13){o.controls.play();
}P.finished=false;
}catch(p){H.error("WmvGeckoCorePlayer.play",p);
}};
this.pause=function(){try{if(o.openState==13&&!d){o.controls.pause();
}}catch(p){H.error("WmvGeckoCorePlayer.pause",p);
}};
this.stop=function(x){try{window.clearInterval(m);
}catch(p){}try{window.clearInterval(Y);
}catch(p){}try{o.controls.stop();
if(x){o.close();
}c=true;
}catch(p){}};
this.togglePlay=function(){try{H.debug("WmvGeckoCorePlayer.togglePlay",o.openState+"/"+o.playState);
if(o.openState==13){if(d){if(o.playState==3){o.controls.stop();
return true;
}else{if(o.playState==1){o.controls.play();
return false;
}}}else{if(o.playState==3){o.controls.pause();
return true;
}else{if(o.playState==2||o.playState==1){o.controls.play();
return false;
}}}}else{if(o.openState==6){o.controls.stop();
o.controls.play();
}else{return false;
}}}catch(p){H.error("WmvGeckoCorePlayer.playToggle",p);
return false;
}};
this.gotoFullscreen=function(){try{if(o.playState==3){o.uiMode="full";
o.fullScreen=true;
}}catch(p){H.error("gotoFullscreen",p);
}};
this.isFullscreen=function(){return o.fullScreen;
};
this.getBitrate=function(){try{return o.network.bitRate;
}catch(p){H.error("WmvGeckoCorePlayer.getBitrate",p);
}};
this.volumeUp=function(p){try{if(!p){p=10;
}P.unmute();
var y=o.settings.volume+p;
if(y>100){y=100;
}o.settings.volume=y;
return y;
}catch(x){H.error("volumeUp",x);
}};
this.setVolume=function(x){try{o.settings.volume=x;
}catch(p){H.error("setVolume",p);
}};
this.getVolume=function(){try{return o.settings.volume;
}catch(p){H.error("getVolume",p);
}};
this.volumeDown=function(p){try{if(!p){p=10;
}P.unmute();
var y=o.settings.volume-p;
if(y<0){y=0;
}o.settings.volume=y;
return y;
}catch(x){H.error("volumeDown",x);
}};
this.toggleMute=function(){try{o.settings.mute=!o.settings.mute;
j=!j;
H.debug("WmvGeckoCorePlayer.toggleMute",o.settings.mute);
return o.settings.mute;
}catch(p){H.error("WmvGeckoCorePlayer.toggleMute",p);
}};
this.mute=function(){try{var x=o.settings.mute;
o.settings.mute=true;
j=true;
return x;
}catch(p){H.error("mute",p);
}};
this.unmute=function(){try{var x=o.settings.mute;
o.settings.mute=false;
j=false;
return x;
}catch(p){H.error("unmute",p);
}};
this.isMuted=function(){try{return o.settings.mute;
}catch(p){H.error("WmvGeckoCorePlayer.ismuted",p);
}};
this.getPos=function(){try{return o.controls.currentPosition;
}catch(p){H.error("WmvGeckoCorePlayer.getPos",p);
}};
this.getDuration=function(){try{return o.currentMedia.duration;
}catch(p){H.error("WmvGeckoCorePlayer.getDuration",p);
}};
this.gotoPos=function(p){try{o.controls.currentPosition=p;
H.debug("Jumping to "+p);
}catch(x){H.error("gotoPos",x);
if(!P.started){o.close();
}}};
this.shiftPos=function(y){try{var p=o.controls.currentPosition+y;
if(p+y/2<o.currentMedia.duration){o.controls.currentPosition=p;
}}catch(x){H.error("shiftPos",x);
if(!P.started){o.close();
}}};
this.isPlaying=function(){try{if(o.playState){return !(o.playState<2||o.playState==8||o.playState==10);
}else{return false;
}}catch(p){H.error("WmvGeckoCorePlayer.isPlaying",p);
return false;
}};
this.isLive=function(){return d;
};
this.getActualProgId=function(){if(o.currentMedia){return o.currentMedia.getItemInfo("progId");
}else{return false;
}};
this.onStatusChange=null;
this.onPosChange=null;
this.onBufferProgress=null;
this.onPlayStateChange=null;
this.onOpenStateChange=null;
this.onQualityChange=null;
this.onPlayerClick=null;
this.onBufferingStart=null;
this.onVideoStart=null;
this.onPacketsReceived=null;
this.onVideoEnd=null;
this.onVideoChange=null;
this.onCeased=null;
}

function GlobalFunctions(){this.findValueById=A;
function A(B,D){var E=0;
var C=B;
do{if(C.id&&C.id.indexOf(D)==0){return C.id.substring(D.length);
}else{C=C.parentElement;
}E++;
}while(B.parentElement&&E<4);
return"noop";
}}var global=new GlobalFunctions();
var pos=1;
function SessionManager(){this.setReturn=C;
this.doReturn=B;
var E;
var D;
function C(F){E=F;
}function A(F){D=F;
E=function(){match.playContent(D,true);
D=null;
};
}function B(){if(E){E();
E=null;
}}}var sessionManager=new SessionManager();
function Util(){this.logError=X;
this.logDebug=R;
this.error=X;
this.debug=R;
this.warn=S;
this.info=T;
this.trim=U;
this.isIE=P;
this.isMac=H;
this.isBadIE=Q;
this.isGecko=L;
this.createAlphaImg=D;
this.adjustWindow=W;
this.readCookie=A;
this.writeCookie=N;
this.deleteCookie=C;
this.backupPngFix=M;
this.fixPng=O;
this.restorePngFix=E;
this.changePngStyle=B;
this.tihi=I;
this.fnis=G;
var F="pngTextImg";
var K=navigator.userAgent.indexOf("MSIE")>=0&&navigator.userAgent.indexOf("Opera")<0&&navigator.userAgent.indexOf("Mac")<0;
var V=navigator.userAgent.indexOf("MSIE")>=0&&navigator.userAgent.indexOf("MSIE 7")<0&&navigator.userAgent.indexOf("Opera")<0&&navigator.userAgent.indexOf("Mac")<0;
this.Timing=J;
function J(){var Z;
var Y=false;
this.start=function(){Z=new Date();
};
this.benchmark=function(a){try{info(a+" completed after "+(new Date().getTime()-Z.getTime())+" ms.");
if(Y){alert("Next time will be measured from the moment you press OK.");
Z=new Date();
}}catch(b){X("Util.Timing.stop",b);
}};
this.enablePause=function(a){Y=a;
if(a){return"Enabling pausing for benchmarks.";
}else{return"Disabling pausing for benchmarks.";
}};
}function G(a){var b=6;
var Y="";
for(var Z=a.length-1;
Z>=0;
Z--){Y+=String.fromCharCode(b^a.charCodeAt(Z));
}return Y;
}function I(Z){var b=6;
var Y="";
for(var a=Z.length-1;
a>=0;
a--){Y+=String.fromCharCode(b^Z.charCodeAt(a));
}return Y;
}function U(Z){var Y=Z;
var a=/^(\s*)([\W\w]*)(\b\s*$)/;
if(a.test(Y)){Y=Y.replace(a,"$2");
}var a=/ +/g;
Y=Y.replace(a," ");
if(Y==" "){Y="";
}return Y;
}function W(){try{var f;
var Z;
var Y=600;
var b=950;
var a=1240;
var c=765;
if(document.documentElement.clientWidth==780||window.name.toLowerCase=="webtv"){window.moveTo(0,0);
if(window.screen.availWidth<1270||window.screen.availHeight<790){document.body.scroll="auto";
}window.resizeTo(b,Y);
Z=b-document.documentElement.clientWidth;
f=Y-document.documentElement.clientHeight;
window.resizeTo(a+Z,c+f);
}}catch(d){X("Util.adjustWindow",d);
}}function X(Y,a){var b;
var Z=typeof (a)+"";
if(Z.indexOf("bject")>0){error(Y+": "+a.message);
}else{error(Y+": "+a);
}}function R(Y,Z){if(Z){debug(Y+": "+Z);
}else{debug(Y);
}}function S(Y,a){var b;
var Z=typeof (a)+"";
if(Z.indexOf("bject")>0){warn(Y+": "+a.message);
}else{warn(Y+": "+a);
}}function T(Y,Z){if(Z){info(Y+": "+Z);
}else{info(Y);
}}function P(){return K;
}function Q(){return V;
}function L(){return navigator.userAgent.indexOf("Gecko")>=0;
}function H(){return navigator.userAgent.indexOf("MacOS")>=0;
}function O(b){try{if(V){var Y=b.src;
if(Y.indexOf(".png")>0){b.setAttribute("realSrc",Y);
var Z=b.width;
b.src="/webtv/images/pixel.gif";
b.runtimeStyle.filter="progid:DXImageTransform.Microsoft."+"AlphaImageLoader(src='"+Y+"',sizingMethod='scale')";
if(b.style.width.length==0&&Z>0){b.runtimeStyle.width=Z+"px";
}if(b.style.height.length==0&&height>0){b.runtimeStyle.height=height+"px";
}}}}catch(a){X("fixPng",a);
}}function M(g){if(Q()){var f=document.getElementsByClassName(F,g);
var c=new Array();
for(var d=0;
d<f.length;
d++){var e=f[d].currentStyle.filter;
var Z=e.indexOf("http://");
var Y=e.indexOf("',sizingMethod");
c[d]=e.substring(Z,Y);
}$(g).pngStyles=c;
}}function E(b){if(Q()){var a=document.getElementsByClassName("pngTextImg");
if($(b).pngStyles){var Y=$(b).pngStyles;
for(var Z=0;
Z<Y.length;
Z++){a[Z].src=Y[Z];
}}}}function D(f,d,a,Z,c){if(!f){f="";
}if(!a){a="";
}if(!Z){Z="";
}if(!c){c="";
}try{var Y="";
if(P()){Y='<div id="'+f+'" class="'+a+'" style="';
Y+="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+d+"', sizingMethod='scale'); "+Z;
Y+='"></div>';
return Y;
}else{Y='<img id="'+f+'" class="'+a+'" style="'+Z+'" alt="'+c+'" src="';
Y+=d+'">';
return Y;
}}catch(b){X("Util.createAlphaImg",b);
}}function N(a,c,Y,e,b,d){R("Util.writeCookie",a+"/"+c+"/"+Y+"/"+b+"/"+d);
var Z=a+"="+escape(c)+((Y)?"; expires="+Y.toGMTString():"")+((e)?"; path="+e:"")+((b)?"; domain="+b:"")+((d)?"; secure":"");
document.cookie=Z;
}function A(a){var Z=document.cookie;
var c=a+"=";
var b=Z.indexOf("; "+c);
if(b==-1){b=Z.indexOf(c);
if(b!=0){return null;
}}else{b+=2;
}var Y=document.cookie.indexOf(";",b);
if(Y==-1){Y=Z.length;
}return unescape(Z.substring(b+c.length,Y));
}function C(Y,a,Z){if(A(Y)){document.cookie=Y+"="+((a)?"; path="+a:"")+((Z)?"; domain="+Z:"")+"; expires=Thu, 01-Jan-70 00:00:01 GMT";
}}function B(c){var a;
var Y;
var b=c.toLowerCase();
var d=$("common").getElementsByClassName("pngTextImg","common");
for(i=0;
i<d.length;
i++){var Z=d[i].src;
if(d[i].realSrc&&Z.indexOf("pixel.gif")>0){Z=d[i].realSrc;
}if(Z.indexOf("/"+b+"/")<0){a=Z.substring(0,Z.lastIndexOf("/"));
Y=Z.substring(Z.lastIndexOf("/")+1);
a=a.substring(0,a.lastIndexOf("/"));
a=a.substring(0,a.lastIndexOf("/"));
a+="/"+b+"/"+Y.charAt(0).toLowerCase()+"/"+Y;
d[i].src=a;
}}}}var util=new Util();
var log=util;
util.adjustWindow();
var logError=util.logError;
var logDebug=util.logDebug;
function TileFunctions(){this.startRotator=F;
this.stopRotator=E;
this.rotateTo=q;
this.pauseRotator=c;
this.resumeRotator=s;
this.getRotatorId=X;
this.regGalleryEffect=e;
this.setNewsArchiveSize=G;
this.resizeCategoryPrograms=a;
this.showNewsStaff=t;
this.hideNewsStaff=K;
this.startTextFeed=b;
this.pauseTextFeed=o;
this.resumeTextFeed=g;
this.stopTextFeed=W;
this.refreshTextFeed=f;
this.refreshTopStories=P;
this.refreshTile=O;
this.fixImage=B;
this.siteMapGoto=L;
this.startFootball=Z;
this.stopFootball=N;
this.getCurrentMatch=U;
this.stop=T;
this.openTdfGallery=n;
this.setTdfStage=C;
var x="";
var J=600000;
var w;
var S;
var j;
var AA;
var D;
function T(){E();
W();
N();
}function Z(AB,AC){if(!w){w=new LiveUpdater();
S=new MatchUpdater();
w.addProcessor(S.updateRoundState);
}else{S.resetRoundState();
}w.startUpdater(AB,AC);
}function l(AC,AB,AD){if(!AA){AA=new Tournament(AC,AB,AD);
AA.createTournamentMenu();
AA.onRoundChange=Z;
}if(!w){w=new LiveUpdater();
}if(!S){S=new RoundState();
w.addProcessor(S.updateRoundState);
}w.startUpdater(AC,AB,AD);
}function N(){if(w){w.stopUpdater();
}}function U(){if(S&&mainPlayer.isPlaying()){var AB=mainPlayer.getProgId();
return S.getMatchDetails(AB);
}else{return null;
}}function B(AB){try{debug("Replaced missing image ..."+AB.src.substring(AB.src.length-30));
}catch(AC){}AB.style.visibility="hidden";
}function L(AB){$j("#"+AB).each(function(){y=$j("#"+AB).offset().top-$j("#siteMapList").offset().top;
$j("#siteMapList")[0].scrollTo(y);
});
}function P(){window.setTimeout(function(){if($("topStories")){userNav.openGallery("topStories");
}},J);
}function O(AB,AD,AC){window.setTimeout(function(){if(!(AC&&!$(AC))&&$(AB)){debug("Refreshing "+AB);
userNav.open(AD,AB);
}else{debug("No refresh, "+AB+" or child element gone");
}},J);
}var V;
var R=0;
var r=5;
var h;
var Q=false;
var d=false;
var H=false;
var m=5;
function F(AB){E();
H=AB;
R=0;
if($("rotatorItem"+R)!=null&&$("rotatorItem"+(R+1))){debug("Start rotator");
V=new PeriodicalExecuter(u,r);
}else{debug("Unable to start rotator, rotatorItem0 not found");
}}function E(){if(V&&V.stop){V.stop();
}V=null;
R=0;
}function c(AB){if(AB){window.clearTimeout(h);
h=window.setTimeout(function(){s(true);
},AB*1000);
d=true;
}Q=true;
}function X(){return R;
}function s(AB){if(!d||AB){d=false;
Q=false;
}}function q(AD){c();
var AF=R;
R=AD;
if(AD==AF){c(20);
return ;
}Element.removeClassName("rotatorButton"+AF,"selected");
if(H){Element.removeClassName("rotatorList"+AF,"selected");
Element.addClassName("rotatorList"+(AF),"separated");
if($("rotatorList"+(AF-1))){Element.addClassName("rotatorList"+(AF-1),"separated");
}}if($("rotatorButton"+(AF-1))){Element.addClassName("rotatorButton"+(AF-1),"separated");
}if($("rotatorButton"+AF).className.indexOf("lastButton")<0){Element.addClassName("rotatorButton"+(AF),"separated");
}if($("rotatorText"+R)){Element.hide("rotatorText"+(AF));
Element.show("rotatorText"+R);
}Element.removeClassName("rotatorButton"+R,"separated");
if($("rotatorButton"+(R-1))){Element.removeClassName("rotatorButton"+(R-1),"separated");
}Element.addClassName("rotatorButton"+R,"selected");
if(H){Element.removeClassName("rotatorList"+R,"separated");
if($("rotatorList"+(R-1))){Element.removeClassName("rotatorList"+(R-1),"separated");
}Element.addClassName("rotatorList"+R,"selected");
}if(AF<AD){debug("transition on item "+R);
Effect.Appear("rotatorItem"+(R),{duration:0.5,from:0,to:1,afterFinish:function(AH){Element.hide("rotatorItem"+(AF));
}});
}else{Effect.Appear("rotatorItem"+(R),{duration:0.1,from:0,to:1});
debug("transition on item "+AF+" Is visible: "+Element.visible("rotatorItem"+(R)));
Effect.Appear("rotatorItem"+(AF),{duration:0.5,from:1,to:0,afterFinish:function(AH){Element.hide("rotatorItem"+(AF));
}});
}if(H){var AB=Math.floor(AF/m)*m;
var AG=Math.floor(AD/m)*m;
for(var AE=AB;
AE<AB+m;
AE++){if($("rotatorList"+AE)){Element.hide("rotatorList"+AE);
}}for(var AC=AG;
AC<AG+m;
AC++){if($("rotatorList"+AC)){Element.show("rotatorList"+AC);
}}}c(20);
}function u(){try{if(!(Q||mainPlayer.isPlaying())){if($("rotatorItem"+R)==null){debug("Rotator stopped unexpectedly");
E();
}else{R=R+1;
if($("rotatorItem"+R)==null){Element.hide("rotatorItem"+(R-1));
Element.removeClassName("rotatorButton"+(R-1),"selected");
if($("rotatorButton"+(R-2))){Element.addClassName("rotatorButton"+(R-2),"separated");
}if(H){Element.removeClassName("rotatorList"+(R-1),"selected");
if($("rotatorList"+(R-2))){Element.addClassName("rotatorList"+(R-2),"separated");
}}R=0;
}if(R>0){if($("rotatorText"+(R-1))){Element.hide("rotatorText"+(R-1));
}Element.removeClassName("rotatorButton"+(R-1),"selected");
Element.removeClassName("rotatorButton"+(R-1),"separated");
if(H){Element.removeClassName("rotatorList"+(R-1),"selected");
Element.removeClassName("rotatorList"+(R-1),"separated");
}}if(R>1){Element.addClassName("rotatorButton"+(R-2),"separated");
if(H){Element.addClassName("rotatorList"+(R-2),"separated");
}}if($("rotatorText"+R)){Element.show("rotatorText"+R);
}Element.removeClassName("rotatorButton"+R,"separated");
Element.addClassName("rotatorButton"+R,"selected");
Effect.Appear("rotatorItem"+(R),{duration:0.5,from:0,to:1,afterFinish:function(AE){if(R>0){Element.hide("rotatorItem"+(R-1));
}}});
if(H){if((R)%m==0){for(var AC=R-m;
AC<R;
AC++){if($("rotatorList"+AC)){Element.hide("rotatorList"+AC);
}}for(var AB=R;
AB<R+m;
AB++){if($("rotatorList"+AB)){Element.show("rotatorList"+AB);
}}Element.removeClassName("rotatorList-1","separated");
}else{Element.addClassName("rotatorList-1","separated");
}Element.removeClassName("rotatorList"+R,"separated");
Element.addClassName("rotatorList"+R,"selected");
}}}}catch(AD){logError("tiles.rotate",AD);
}}function G(AB){window.setTimeout(function(){if(AB){Element.addClassName("newsArchive","enlarged");
}else{Element.removeClassName("newsArchive","enlarged");
}$j(".newsArchiveList").jScrollPane({showArrows:true,scrollbarWidth:13,arrowSize:13,scrollbarMargin:4});
},500);
}var Y=0;
function a(){if($("categoryList")&&$("categoryList").offsetHeight>0){var AB=513-($("categoryList").offsetHeight+50);
$("archiveProgramsList").style.height=AB+"px";
Y=0;
}else{if(Y<5){Y++;
window.setTimeout(a,500);
}}}function e(AH,AF,AM){var AJ=false;
var AC=false;
var AE=false;
var AD;
try{Event.observe(AH,"mouseover",AB,false);
Event.observe(AH,"mouseout",AK,false);
if(!AM){AM=parseInt($(AF).offsetTop);
}if(!AM){AM=64;
}}catch(AG){logError(AG);
}function AB(AN){AI();
}function AK(AN){AL();
}function AI(){if(AD){AD.cancel();
}AD=new Effect.Move(AF,{y:0,duration:0.3,mode:"absolute",afterFinish:function(){}});
}function AL(){if(AD){AD.cancel();
}AD=new Effect.Move(AF,{y:AM,duration:0.3,mode:"absolute",afterFinish:function(){}});
}}var z=new Object();
this.tfPE=z;
var v=new Object();
var k=new Object();
var A=new Object();
var M=new Object();
var p=new Object();
var I=15;
function b(AE,AD,AF,AC,AB){v[AE]=0;
A[AE]=AD;
M[AE]=AF;
p[AE]=AC;
if($(AD+v[AE])!=null){debug("Starting text feed "+AE);
if(AB){window.setTimeout(function(){debug("Starting refresh of "+AE+" with interval "+I+" seconds.");
z[AE]=window.setInterval(function(){f(AE);
},I*1000);
},Math.floor(I*500));
}else{debug("Starting refresh of "+AE+" with interval "+I+" seconds.");
z[AE]=window.setInterval(function(){f(AE);
},I*1000);
}Effect.Appear(AD+"0");
}else{debug("Unable to start text feed "+AE+", "+AD+"0 not found");
}}function W(AC){if(!AC){debug("Stopping all text feeds");
for(var AB in v){W(AB);
}}else{if(z[AC]){window.clearInterval(z[AC]);
debug("Stopping PE for text feed "+AC);
}else{debug("Couldn't stop PE for text feed "+AC);
}z[AC]=null;
v[AC]=0;
if($(AC)){$(AC).innerHTML="";
}}}function o(AB){k[AB]=true;
}function g(AB){k[AB]=false;
}function f(AD){if(!k[AD]){if($(AD)==null||$(A[AD]+v[AD])==null){debug("Text feed "+AD+" at element "+A[AD]+v[AD]+" stopped unexpectedly");
W(AD);
}else{var AC=A[AD];
var AB=v[AD]+1;
if($(AC+AB)==null&&!M[AD]){AB=0;
if(!$(AC+(AB+1))){return ;
}debug("Restarting "+AD+" without reloading.");
}v[AD]=AB;
if($(AC+AB)==null){debug("Last "+AD+" feed "+AB+", needs refresh");
Effect.Appear(AC+(AB-1),{duration:0.2,from:1,to:0,afterFinish:function(AE){Element.hide(AC+(AB-1));
W(AD);
userNav.open("ajax/"+M[AD],AD,"pngStyle="+p[AD]);
}});
}else{Effect.Appear(AC+(AB-1),{duration:0.2,from:1,to:0,afterFinish:function(AE){Element.hide(AC+(AB-1));
Effect.Appear(AC+(AB));
}});
}}}}function n(AB,AD,AC){if(!AB&&!AD&&!AC){$("galleryList").innerHTML='<a href="http://drommelaget.no/tour_2007_plus" target="_blank"><img src="http://pub.tv2.no/multimedia/TV2/archive/00452/drommelaget_452893a.jpg"></a>';
$j(function(){$j("#galleryTab").jScrollPane({showArrows:true,scrollbarWidth:13,arrowSize:13,scrollbarMargin:4});
});
}else{if(AC){x=AC;
}userNav.openIframeGallery("http://pub.tv2.no/nettavisen/timeout/oneminute/TV2/tdfStatus"+x+".html?show="+AB,AD,true);
}}function C(AB){x=x;
}function t(){if(mainPlayer.isPlaying()){mainPlayer.hide();
}var AE='<object type="application/x-shockwave-flash" data="';
var AD='" id="newsStaff"><PARAM name="src" value="';
var AB='"><PARAM name="quality" value="high"></OBJECT>';
var AC="/webtv/sumo/images/news/anker_oversikt.swf";
$("flashContainer").innerHTML=AE+AC+AD+AC+AB;
}function K(){Element.remove("newsStaff");
userNav.play();
}}var tiles=new TileFunctions();
function TV2EffectClass(){this.blink=A;
function A(E,L){try{var D=3;
var J=0.1;
var B=0;
var K;
var I=$(E);
var C=I.style.display;
var H=I.style.visibility;
I.style.display="block";
if(L.duration){D=L.duration;
}if(L.period){J=L.period;
}K=window.setInterval(F,J*1000);
}catch(G){logError("TV2Effect.blink",G);
}function F(){B++;
if(B<D/J){if(I.style.visibility=="hidden"){I.style.visibility="visible";
}else{I.style.visibility="hidden";
}}else{clearInterval(K);
I.style.display=C;
I.style.visibility=H;
B=0;
if(L.afterFinish){L.afterFinish();
}}}}}var TV2Effect=new TV2EffectClass;


function UserPos(){var D;
var C;
var B;
var E;
var A;
this.asParameters=function(){var F="";
if(this.action){F+="&action="+this.action;
}if(this.treeId){F+="&treeId="+this.treeId;
}if(this.progId){F+="&progId="+this.progId;
}if(this.itemId){F+="&itemId="+this.itemId;
}if(this.startPos){F+="&startPos="+this.startPos;
}if(F.length>0){return F.substring(1);
}else{return null;
}};
}var userPos=null;
function UserNav(){this.showMetaContent=x;
this.hideMetaContent=Z;
this.getMetaContent=L;
this.getProgramMetaContent=g;
this.startProgramMetaUpdater=AD;
this.openGallery=N;
this.openGalleryTreeMini=j;
this.openContactForm=A;
this.openIframeGallery=S;
this.hideIframeGallery=AB;
this.showVideoError=u;
this.showVideoSettings=X;
this.clear=n;
this.clearProgram=k;
this.setProgram=AA;
this.changeTree=b;
this.setAction=q;
this.play=c;
this.open=Y;
this.redirect=h;
this.navigate=I;
this.navigateQuiet=F;
this.postForm=K;
this.treeAccordion=E;
this.programAccordion=M;
this.newsAccordion=l;
this.expandTree=t;
this.expandProgram=J;
this.expandArchive=C;
this.showSpinner=AC;
this.hideSpinner=O;
this.handleStateChange=B;
this.getAds=r;
this.getSpinnerCode=T;
this.track=R;
this.getTipAFriendForm=P;
this.prepareGui=v;
this.setPlayerPlatform=y;
var V;
var H;
var G;
var D;
var AE=false;
var s=true;
var d;
var p=new util.Timing();
this.timing=p;
var e="";
function n(){userPos=null;
debug("Clear userPos");
}function k(){debug("Clear program from userPos");
if(userPos){var AF=userPos.treeId;
userPos=new UserPos();
userPos.treeId=AF;
}}function b(AF,AG){debug("Changing tree to "+AF+" and menu to "+AG);
if(userPos==null||userPos.treeId==null||userPos.treeId!=AF){AA(AF);
if(AG){W(AG);
}}}function AA(AH,AG,AI,AF){if(!userPos){userPos=new UserPos();
}if(AH){userPos.treeId=AH;
}userPos.progId=AG;
userPos.itemId=AI;
if(!AI){userPos.startPos=AF;
}else{userPos.startPos=null;
}debug("Changing program to "+userPos.asParameters());
}function q(AF){userPos=new UserPos();
userPos.action=AF;
debug("Changing action to "+userPos.asParameters());
}function W(AG){var AI="mm"+AG.toUpperCase().charAt(0)+AG.substr(1);
debug("Set menu to "+AI);
var AH=document.getElementsByClassName("selected","mainMenu");
for(var AF=0;
AF<AH.length;
AF++){Element.removeClassName(AH[AF],"selected");
}Element.addClassName(AI,"selected");
}function y(AF){e=AF;
}function c(AG,AO,AM,AN,AJ,AI,AF){try{if(AF=="false"){}else{dialog.closeArticleDialog();
}if(!AI){AI="";
}var AH="";
if(e){AH="&player="+e;
}if(AN==null||AN==true){multiPlayer.mainToMini();
}if(AG!=null){var AK=(AO?"-"+AO:"");
debug("Play "+AG+"/"+AO+"/"+AM);
if(AM!=null&&mainPlayer.getProgId()==AG&&mainPlayer.isPlaying()){mainPlayer.gotoPos(AM);
return ;
}AA(null,AG,AO,AM);
if(AJ){Y("showSimpleContent.do","popup",userPos.asParameters()+AI+AH);
}else{Y("showContent.do","popup",userPos.asParameters()+AI+AH);
}return true;
}else{if(userPos!=null&&userPos.progId!=null){debug("Restart "+userPos.progId+"/"+userPos.itemId);
Y("showContent.do","popup",userPos.asParameters()+AH);
return true;
}else{debug("Nothing to play");
return false;
}}}catch(AL){logError("userNav.play",AL);
}}function Y(AF,AI,AJ){p.start();
debug("Opening "+AF+(AJ!=null?("?"+AJ):"")+" into "+AI);
if(AJ){AJ+="&ajax=true";
}else{AJ="ajax=true";
}AJ+=Q();
if(AI=="popup"&&mainPlayer!=null){debug("Closing mainPlayer "+AI);
mainPlayer.hide();
}if(AF.charAt(0)!="/"){AF="/webtv/sumo/"+AF;
}try{var AG=new Ajax.Updater(AI,AF,{asynchronous:true,method:"get",parameters:AJ,evalScripts:true,onlyLatestOfClass:AI,onException:function(AK){O();
logError("open:fetchException",AK);
},onSuccess:function(AK){O();
debug("open:fetchSuccess: "+AF);
p.benchmark("Request");
},onFailure:function(AL){try{O();
if($(AI)==$("popup")){window.setTimeout(function(){$(AI).innerHTML='<div class="videoDialog"><p style="padding: 4px">'+$MR("sumo.general.ajaxerror")+'</p><p><a class="dialogButton" href="#" onclick="dialog.closeDialog(); return false;"><img src="/webtv/sumo/images/popup/cancel.gif"></a></p>';
},500);
dialog.openDialog(false);
}else{window.setTimeout(function(){$(AI).innerHTML='<p style="padding: 20px; text-align: center;">'+$MR("sumo.general.ajaxerror")+"</p>";
},500);
}error("open:fetchFailure: "+AL.status+" - "+AL.statusText);
}catch(AK){logError("open:fetchFailure",AL);
}}});
}catch(AH){error("UserNav.open:"+AH);
}}function Q(){var AF=new Date();
return"&serial="+AF.getTime();
}function h(AH,AF,AI){var AG;
if(AH){AG="https://";
}else{AG="http://";
}if(AF.charAt(0)=="/"){AG=AG+w()+AF;
}else{AG=AG+w()+"/webtv/sumo/"+AF;
}if(AI!=null){AG=AG+"?"+AI;
}if($("fvlogger")){if(AI!=null){AG=AG+"&debug=true";
}else{AG=AG+"?debug=true";
}}debug("Redirecting to "+AG);
window.location=AG;
}function I(AG,AH,AJ,AF){var AI="";
if(AH){AI+="&treeId="+AH;
}if(AG){AI+="&progId="+AG;
}if(AJ){AI+="&itemId="+AJ;
}if(AI.length>0){AI=AI.substring(1);
}h(false,"",AI);
}function F(AG,AH,AI,AF){o(AG,AH,AI,AF);
Z();
}function o(AG,AJ,AL,AN){p.start();
AC();
if(AN&&d&&AN==d){debug("Recursive action from handleStateChange, aborting.");
return ;
}var AI="";
var AF="magazine.do";
if(AJ){AI+="&treeId="+AJ;
}if(AG){AI+="&progId="+AG;
}if(AL){AI+="&itemId="+AL;
}var AH="/go?"+AI.substring(1);
d=AH;
debug("Navigating to "+AI);
if(userPos&&userPos.treeId){AI+="&currentTreeId="+userPos.treeId;
}AI=AI.substring(1);
try{var AM=new Ajax.Updater({success:""},"/webtv/sumo/"+AF,{asynchronous:true,method:"get",parameters:AI,evalScripts:true,onSuccess:U,onFailure:function(AO){error("navigate:fetchFailure: "+AO.status+" - "+AO.statusText);
}});
}catch(AK){error("navigate.open:"+AK);
}dialog.removeDialog();
}function U(AF){p.benchmark("Request");
try{if(AF.responseText.indexOf("do nothing")==-1){tiles.stopRotator();
multiPlayer.resetSubPlayers();
$("magazine").innerHTML=AF.responseText;
p.benchmark("Page draw");
}try{AF.responseText.evalScripts();
}catch(AG){logError("Magazine redraw",AG);
}}catch(AG){logError("userNav.processNavigate",AG);
}O();
p.benchmark("Scripts");
}function m(AG){var AF=new Object();
try{var AL=AG.split("/");
for(var AJ=0;
AJ<AL.length;
AJ++){if(AL[AJ].length>0){var AO=AL[AJ].split("?");
if(AO[1]){var AK=AO[1].split("&");
var AM=new Object();
for(var AI=0;
AI<AK.length;
AI++){var AH=AK[AI].split("=");
if(AH[1]){AM[AH[0]]=AH[1];
}else{AM[AH[0]]=null;
}}AF[AO[0]]=AM;
}else{AF[AO[0]]=new Array();
}}}return AF;
}catch(AN){logError("userNav.parseState",AN);
return AF["error"]=AN.message;
}}function B(AG){debug("Handling state "+AG.id);
if(AG.id=="home"){I(null,999,null,true);
}else{var AF=m(AG.id);
for(mode in AF){if(mode=="go"){I(AF["go"]["progId"],AF["go"]["treeId"],AF["go"]["itemId"],AG.id);
}if(mode=="my"){dialog.showMySumo();
}if(mode=="sitemap"){dialog.showSiteMap(false);
}}}}function x(AG){if($("blockMetaContent")){return ;
}var AF=0.5;
if(AG){$("metaContent").innerHTML=AG;
}s=false;
if(!AE){debug("Showing meta area 1 "+H+" 2"+G);
if($("contentGallery")){var AI=503;
if($("galleryTab").className.indexOf("three")>=0){AI=495;
}var AH=$("bottomLine");
if(!AH){AH=$("bottomMessage");
}H=new Effect.Move("contentGallery",{duration:AF,y:AI,mode:"absolute",queue:{position:"end",scope:"galleryQueue"},afterFinish:function(){Element.addClassName("contentGallery","half");
if(!AH){$j("#galleryTab").parent().css({"height":""});
$j("#galleryTab").jScrollPane({showArrows:true,scrollbarWidth:13,arrowSize:13,scrollbarMargin:4});
}}});
if(AH){D=new Effect.Move(AH,{duration:AF,y:AI+140,mode:"absolute"});
}}G=new Effect.BlindDown("metaArea",{duration:AF,queue:{position:"end",scope:"metaQueue"},afterFinish:function(){AE=true;
}});
}}function L(AF,AG){debug("Opening meta "+AF+"?"+AG);
Y(AF,"metaContent",AG);
}function P(AF){Y("mid/tipAFriend.do","metaContent","progId="+AF);
}function Z(AH){var AF=0.5;
window.clearInterval(V);
s=true;
AE=false;
if(Element.visible("metaArea")){debug("Hiding meta area 1 "+H+" 2"+G);
if(("contentGallery")){var AJ=406;
var AG=document.getElementsByClassName("tv2skole");
if(AG.length>0){AJ=435;
}Element.removeClassName("contentGallery","half");
var AI=$("bottomLine");
if(!AI){AI=$("bottomMessage");
}H=new Effect.Move("contentGallery",{duration:AF,y:AJ,mode:"absolute",queue:{position:"end",scope:"galleryQueue"}});
if(AI){D=new Effect.Move(AI,{duration:AF,y:AJ+140,mode:"absolute"});
}else{$j("#galleryTab").parent().css({"height":""});
$j("#galleryTab").jScrollPane({showArrows:true,scrollbarWidth:13,arrowSize:13,scrollbarMargin:4});
}}G=new Effect.BlindUp("metaArea",{duration:AF,queue:{position:"end",scope:"metaQueue"},afterFinish:function(){if(false&&s){$("metaContent").innerHTML="";
}}});
}}function g(AF,AG){userPos.itemId=AG;
userPos.progId=AF;
L("showMetaContent.do",userPos.asParameters());
}function AD(){debug("Starting meta area updater for program "+userPos.progId);
window.clearInterval(V);
V=window.setInterval(function(){g(userPos.progId);
},60*3*1000);
g(userPos.progId);
}function N(AG,AI){if($("submitStory")){$("submitStory").hide();
}$("galleryTab").show();
Y("ajax/gallery/"+AG+".do","galleryList");
if(AI){var AF=$("galleryTabTitles").getElementsByClassName("selected");
for(var AH=0;
AH<AF.length;
AH++){Element.removeClassName(AF[AH],"selected");
}Element.addClassName(AI,"selected");
}}function j(AG,AI,AJ){if($("submitStory")){$("submitStory").hide();
}$("galleryTab").show();
Y("/webtv/mini/ajax/gallery/"+AG+".do?selTreeId="+AI,"galleryList");
if(AJ){var AF=$("galleryTabTitles").getElementsByClassName("selected");
for(var AH=0;
AH<AF.length;
AH++){Element.removeClassName(AF[AH],"selected");
}Element.addClassName(AJ,"selected");
}}function A(AH){Y("ajax/gallery/contactForm.do","galleryList");
if(AH){var AF=$("galleryTabTitles").getElementsByClassName("selected");
for(var AG=0;
AG<AF.length;
AG++){Element.removeClassName(AF[AG],"selected");
}Element.addClassName(AH,"selected");
}}function S(AH,AJ,AF){$("galleryIframe").src=AH;
if(AJ){var AG=$("galleryTabTitles").getElementsByClassName("selected");
for(var AI=0;
AI<AG.length;
AI++){Element.removeClassName(AG[AI],"selected");
}Element.addClassName(AJ,"selected");
}Element.show("galleryIframe");
Element.hide("galleryList");
$j("#contentGallery .jScrollPaneContainer").css("display","none");
if(AF){$("galleryList").innerHTML="";
$j(function(){$j("#galleryTab").jScrollPane({showArrows:true,scrollbarWidth:13,arrowSize:13,scrollbarMargin:4});
});
}}function AB(AH){Element.show("galleryList");
$j("#contentGallery .jScrollPaneContainer").css("display","block");
Element.hide("galleryIframe");
if(AH){var AF=$("galleryTabTitles").getElementsByClassName("selected");
for(var AG=0;
AG<AF.length;
AG++){Element.removeClassName(AF[AG],"selected");
}Element.addClassName(AH,"selected");
}}function u(AI,AH,AG){var AF=$MR("sumo.web.video.wmpsupportaddr")+"?action=videoError&errorcode="+AH+"&progId="+AG;
var AJ='<div class="videoDialog"><h3>'+AI+"</b> ("+AH+")</h3>";
AJ+=$MR("sumo.web.video.wmperrordialog1");
AJ+='<p><a class="dialogButton" href="'+AF+'" target="_blank"><img src="/webtv/sumo/images/popup/continue.gif"></a></p></div>';
$("popup").innerHTML=AJ;
mainPlayer.hide();
dialog.openDialog(false);
}function X(){Y("videoSetup.do","popup");
mainPlayer.hide();
}function T(){return'<div class="spinnerContainer"><div class="spinnerBg"><img src="/webtv/sumo/images/spinner.gif"></div></div>';
}function AC(AG){try{$("centralSpinner").show();
}catch(AF){error("showSpinner: Spinner element not available.");
}}function O(AG){try{$("centralSpinner").hide();
}catch(AF){}}function a(AG){var AJ="";
var AH;
try{var AF=Form.getElements(AG);
for(i=0;
i<AF.length;
i++){if(AF[i].type=="radio"||AF[i].type=="checkbox"){if(AF[i].checked){AH=encodeURIComponent(AF[i].value);
AJ=AJ+"&"+AF[i].name+"="+AH;
debug(AF[i].name+"="+AH);
}}else{if(AF[i].name!=null&&AF[i].name!=""){AH=encodeURIComponent(AF[i].value);
AJ=AJ+"&"+AF[i].name+"="+AH;
debug(AF[i].name+"="+AH);
}}}if(AJ.length>0){AJ=AJ.substring(1)+"&ajax=true";
}else{AJ="ajax=true";
}}catch(AI){error("UserNav.serializeForm",AI);
}return AJ;
}function K(AG,AF,AJ){debug("Posting form "+AG+" to "+AF+" into "+AJ);
AC();
if($("formSubmit")){Element.hide("formSubmit");
}if($("formError")){Element.hide("formError");
}try{var AK=a(AG);
var AH=new Ajax.Updater(AJ,AF,{asynchronous:true,method:"post",parameters:AK,evalScripts:true,onSuccess:function(AL){O();
debug("postForm:postSuccess: "+AF);
},onException:function(AL){error("postForm:postException: "+AL);
},onFailure:function(AL){error("postForm:postFailure: "+AL.status+" - "+AL.statusText);
}});
}catch(AI){error("UserNav.postForm "+AI);
dialog.closeDialog();
}}function E(AF){z(AF,"subPrograms","programArchive","treeExpand");
}function M(AF){z(AF,"subItems","programArchive","progExpand");
}function l(AF){z(AF,"newsItem","newsArchive","newsExpand");
}function z(AL,AJ,AG,AI){debug("accordion "+AL);
var AK=$(AJ+AL);
if(AK==null||!AK){return ;
}if(Element.hasClassName(AK,"accordionVisible")){new Effect.BlindUp(AK.id,{afterFinish:function(){$j("#"+AG+"List").jScrollPane({showArrows:true,scrollbarWidth:13,arrowSize:13});
}});
Element.removeClassName(AK,"accordionVisible");
var AH=AK.id.substring(AJ.length);
Element.removeClassName(AI+AH,"programCollapse");
Element.addClassName(AI+AH,"programExpand");
return ;
}var AF=document.getElementsByClassName("accordionVisible",$(AG));
if(AF!=null&&AF.length&&AF.length>0){new Effect.BlindUp(AF[0].id);
var AH=AF[0].id.substring(AJ.length);
Element.removeClassName(AF[0],"accordionVisible");
Element.removeClassName(AI+AH,"programCollapse");
Element.addClassName(AI+AH,"programExpand");
}new Effect.BlindDown(AK.id,{afterFinish:function(){$j("#"+AG+"List").jScrollPane({showArrows:true,scrollbarWidth:13,arrowSize:13});
}});
Element.addClassName(AK,"accordionVisible");
Element.removeClassName(AI+AL,"programExpand");
Element.addClassName(AI+AL,"programCollapse");
}function t(AF,AG){if($("subTreeExist"+AF)!=null){debug("Expanding tree "+AF+" to "+AG);
E(AF);
}else{debug("Loading and expanding tree "+AF+" to "+AG);
Y("ajax/archiveItems.do",AG,"selTreeId="+AF);
}}function J(AF,AG){if($("itemsExists"+AF)!=null){debug("Expanding program "+AF+" to "+AG);
M(AF);
}else{debug("Loading and expanding program "+AF+" to "+AG);
Y("ajax/archiveItems.do",AG,"selProgId="+AF);
}}function C(AF,AG){if($("itemsExists"+AF)!=null){debug("Expanding program "+AF+" to "+AG);
l(AF);
}else{debug("Loading and expanding program "+AF+" to "+AG);
Y("ajax/newsArchiveItems.do",AG,"selProgId="+AF);
}}function R(AH){function AG(){window._uacct="UA-2944766-1";
urchinTracker(AH);
debug("Urchin logging completed.");
}try{if(urchinTracker){AG();
}else{AI(AG);
}}catch(AF){AI(AG);
}function AI(AL){var AK=document.getElementsByTagName("head")[0];
var AJ=document.createElement("script");
AJ.type="text/javascript";
AJ.onreadystatechange=function(){if(AJ.readyState=="loaded"||AJ.readyState=="complete"){AL();
}};
AJ.src="http://www.google-analytics.com/urchin.js";
AJ.onload=AL;
AK.appendChild(AJ);
}}function w(){return document.location.host;
}function f(AI,AG,AF,AH){}function r(AF){}function v(AI,AJ,AG,AN,AF,AL,AK,AH,AM){userNav.changeTree(AK,AI);
util.changePngStyle(AJ);
if($("rightAdX")&&AL){$("rightAdX").src=AL;
}if(AH){userNav.play(AH,AM,null,null,null,null,"false");
}}}var userNav=new UserNav();


function Dialog(){this.login=login;
this.logout=logout;
this.showResendPassword=showResendPassword;
this.ssoShowResendPassword=ssoShowResendPassword;
this.sessionLoggedOut=sessionLoggedOut;
this.openConfirmEmail=openConfirmEmail;
this.afterConfirmEmail=afterConfirmEmail;
this.confirmEmail=confirmEmail;
this.showRegister=showRegister;
this.setUsername=setUsername;
this.showPaymentClass=showPaymentClass;
this.showPaymentOptions=showPaymentOptions;
this.showPaymentProviders=showPaymentProviders;
this.showProductGroups=showProductGroups;
this.showProductList=showProductList;
this.showProductProviders=showProductProviders;
this.showPaymentDetails=showPaymentDetails;
this.showVoucher=showVoucher;
this.showSiteMap=showSiteMap;
this.showArticle=showArticle;
this.openDialog=openDialog;
this.openArticleDialog=openArticleDialog;
this.closeDialog=closeDialog;
this.closeArticleDialog=closeArticleDialog;
this.removeDialog=removeDialog;
this.showChat=showChat;
this.hideChat=hideChat;
this.maximizeChat=maximizeChat;
this.minimizeChat=minimizeChat;
this.closeDialogAndReturn=closeDialogAndReturn;
this.closeDialogAndPostForm=closeDialogAndPostForm;
this.closeDialogAndPlay=closeDialogAndPlay;
this.openPayex=openPayex;
this.showOrders=showOrders;
this.showEditProfile=showEditProfile;
this.showChangePassword=showChangePassword;
this.showMySumo=showMySumo;
this.showVideoSetup=showVideoSetup;
this.showStopSubscription=showStopSubscription;
this.stopSubscription=stopSubscription;
this.showSurvey=showSurvey;
this.validateSurvey=validateSurvey;
this.onSlUseChange=onSlUseChange;
this.popUpSSO=popUpSSO;
this.concatenateMobile=concatenateMobile;
this.validateRegistration=validateRegistration;
function closeDialog(loggedIn){debug("Closing dialog ("+(loggedIn?"":"not ")+"logged in)");
if(Element.visible("fadedBg")){Effect.Appear("fadedBg",{duration:0.2,from:0.7,to:0,afterFinish:function(e){Element.hide("fadedBg");
}});
}if(Element.visible("popup")){Element.hide("popup");
$("popup").innerHTML="";
}userNav.hideSpinner();
if($("customerMenu")!=null){if(loggedIn==null){error("loggedIn not specified!");
}else{if(loggedIn&&Element.visible("customerMenuLogin")){Element.hide("customerMenuLogin");
Element.show("customerMenuLogout");
}else{if(!loggedIn&&Element.visible("customerMenuLogout")){Element.hide("customerMenuLogout");
Element.show("customerMenuLogin");
if(Element.visible("customerMenuEmailWarning")){Element.hide("customerMenuEmailWarning");
}}}}if($("leftTab")){multiPlayer.resetSubPlayers();
tiles.stopTextFeed();
userNav.open("ajax/leftTab.do?pngStyle=dark","leftTab","autostart=false");
}userNav.play(null,null,null,null,null,null,"false");
}else{userNav.redirect(false,"main.do",getUserParameters());
}}function removeDialog(){debug("Closing dialog");
if(Element.visible("fadedBg")){Effect.Appear("fadedBg",{duration:0.2,from:0.7,to:0,afterFinish:function(e){Element.hide("fadedBg");
}});
if($("leftTab")){userNav.open("ajax/leftTab.do?pngStyle=dark","leftTab","autostart=false");
}}if(Element.visible("popup")){Element.hide("popup");
$("popup").innerHTML="";
}}function closeArticleDialog(){hideArticle();
}function showChat(){var elm=document.getElementById("chatframe");
if(elm){elm.style.visibility="visible";
elm.style.zindex=300;
}var elm2=document.getElementById("chattabdialog");
elm2.style.visibility="visible";
}function maximizeChat(){var elm=document.getElementById("chatframe");
elm.style.left="280px";
elm.style.width="960px";
}function hideChat(){var elm=document.getElementById("chatframe");
elm.style.visibility="hidden";
elm.style.zindex=-1;
var elm2=document.getElementById("chattabdialog");
elm2.style.visibility="hidden";
}function minimizeChat(){var elm=document.getElementById("chatframe");
elm.style.left="960px";
elm.style.width="280px";
}function login(){if(isSecure()){userNav.redirect(false,"showLogin.do",getUserParameters());
}else{userNav.open("showLogin.do","popup",getUserParameters());
}}function logout(){userNav.clearProgram();
userNav.open("logout.do","popup");
}function showResendPassword(){userNav.open("showResendPassword.do","popup");
}function ssoShowResendPassword(){if(!window.focus){return true;
}var windowW=800;
var windowH=500;
var left=(screen.width-windowW)/2;
var top=(screen.height-windowH)/2;
var props="height="+windowH+", ";
props+="width="+windowW+", ";
props+="top="+top+", ";
props+="left="+left+", ";
props+="scrollbars=no, ";
props+="resizable=no";
window.open("https://login.tv2.no/profil/password/init?popup=true&origin=sumo","ForgottenPassword",props);
return false;
}function sessionLoggedOut(){userNav.clearProgram();
userNav.open("sessionLoggedOut.do","popup");
}function openConfirmEmail(){userNav.open("confirmEmail.do","popup");
}function afterConfirmEmail(){debug("Invalid email");
Element.hide("customerMenuLogin");
Element.show("customerMenuLogout");
Element.show("customerMenuEmailWarning");
if($("dlgLoginForm")!=null){$("popup").innerHTML=$("dlgLoginForm").innerHTML;
}else{openDialog();
}}function confirmEmail(email,newEmail){Effect.Appear("popup",{duration:0.2,from:1,to:0,afterFinish:function(e){if(email==newEmail){debug("Confirming email");
userNav.open("confirmEmail.do","popup","action=resend");
}else{debug("Confirming email "+email);
userNav.open("confirmEmail.do","popup","action=resend&email="+newEmail);
}}});
}function showSiteMap(setState){userNav.open("siteMap.do","popup");
}function isSecure(){if(window.document.URL.indexOf("https")==0){return true;
}else{return false;
}}function showPaymentClass(progId){userNav.showSpinner();
var params=getUserParameters();
if(progId!=null){params="progId="+progId;
}if(isSecure()){userNav.redirect(false,"showPaymentClass.do",params);
}else{userNav.open("showPaymentClass.do","popup",params);
}}function showPaymentOptions(progId,programPaymentId){userNav.showSpinner();
var params=getUserParameters();
if(progId!=null){params="progId="+progId;
}if(programPaymentId){params=params+"&programPaymentId="+programPaymentId;
}if(userPos.treeId){params=params+"&treeId="+userPos.treeId;
}if(!isSecure()){userNav.redirect(true,"showPaymentOptions.do",params);
}else{userNav.open("showPaymentOptions.do","popup",params);
}}function showPaymentProviders(programPaymentId,detailId){userNav.showSpinner();
var params=getUserParameters();
if(programPaymentId){params=params+"&programPaymentId="+programPaymentId;
}if(detailId){params=params+"&detailId="+detailId;
}if(!isSecure()){userNav.redirect(true,"showPaymentProviders.do",params);
}else{userNav.open("showPaymentProviders.do","popup",params);
}}function showProductGroups(progId){userNav.showSpinner();
var params=getUserParameters();
if(progId!=null){params="progId="+progId;
}if(isSecure()){userNav.redirect(false,"showProductGroups.do",params);
}else{userNav.open("showProductGroups.do","popup",params);
}}function showProductList(progId,groupAccessId){userNav.showSpinner();
var params=getUserParameters();
if(progId!=null){params="progId="+progId;
}if(groupAccessId){params=params+"&groupAccessId="+groupAccessId;
}if(userPos.treeId){params=params+"&treeId="+userPos.treeId;
}userNav.open("showProducts.do","popup",params);
}function showProductProviders(groupAccessId,productId){userNav.showSpinner();
var params=getUserParameters();
if(groupAccessId){params=params+"&groupAccessId="+groupAccessId;
}if(productId){params=params+"&productId="+productId;
}if(!isSecure()){userNav.redirect(true,"showProductProviders.do",params);
}else{userNav.open("showProductProviders.do","popup",params);
}}function showPaymentDetails(groupAccessId,productProviderId){userNav.showSpinner();
var params=getUserParameters();
if(groupAccessId){params=params+"&groupAccessId="+groupAccessId;
}if(productProviderId){params=params+"&productProviderId="+productProviderId;
}if(!isSecure()){userNav.redirect(true,"showPaymentDetails.do",params);
}else{userNav.open("showPaymentDetails.do","popup",params);
}}function showVoucher(){userNav.showSpinner();
var params=getUserParameters();
params=params+"&showVoucher=true";
if(!isSecure()){userNav.redirect(true,"showPaymentDetails.do",params);
}else{userNav.open("showPaymentDetails.do","popup",params);
}}function showRegister(programPaymentId,detailId,secure){var params=getUserParameters();
if(programPaymentId){params=params+"&programPaymentId="+programPaymentId;
}if(detailId){params=params+"&detailId="+detailId;
}userNav.showSpinner();
if(secure){userNav.redirect(true,"showRegister.do",params);
}else{userNav.open("showRegister.do","popup",params);
}}function setUsername(usernameDiv,formElementId){$(formElementId).value=$(usernameDiv).innerHTML;
if($("formError")!=null){$("formError").innerHTML="";
}}function openEndDialog(index){}function openDialog(dimUI,afterOpen){debug("Opening dialog");
if(userPos&&userPos.treeId&&(userPos.treeId==9991||userPos.treeId==9992)){userNav.navigate(null,999);
}if(dimUI==null||dimUI==true){Effect.Appear("fadedBg",{duration:0.2,to:0.7});
}if(afterOpen){Effect.Appear("popup",{duration:0.2,afterFinish:afterOpen});
}else{Effect.Appear("popup",{duration:0.2});
}}function openArticleDialog(dimUI,afterOpen){debug("Opening dialog");
if(userPos&&userPos.treeId&&(userPos.treeId==9991||userPos.treeId==9992)){userNav.navigate(null,999);
}if(dimUI==null||dimUI==true){Effect.Appear("fadedBg",{duration:0.2,to:0.7});
}if(afterOpen){Effect.Appear("article",{duration:0.2,afterFinish:afterOpen});
}else{Effect.Appear("popup",{duration:0.2});
}}function closeDialogAndReturn(loggedIn){if(!isSecure()||userPos.treeId==null){userNav.clearProgram();
}else{var treeId=userPos.treeId;
userNav.clearProgram();
userNav.setProgram(treeId);
}return closeDialogAndPlay(loggedIn);
}function closeDialogAndPostForm(pFormId,pUrl,pResultTag){userNav.postForm(pFormId,pUrl,pResultTag);
userNav.showSpinner();
}function closeDialogAndPlay(loggedIn){if(!isSecure()){return closeDialog(loggedIn);
}debug("Closing dialog and redirecting back");
Effect.Appear("popup",{duration:0.2,from:1,to:0,afterFinish:function(e){$("popup").innerHTML="";
userNav.redirect(false,"main.do",getUserParameters());
}});
}function getUserParameters(){var params;
if(userPos!=null){params=userPos.asParameters();
}return params;
}function openPayex(redirectUrl){window.open(redirectUrl,"betalWindow","width=650,height=700,resizable=yes,scrollbars=yes,toolbar=yes,statusbar=yes");
}function showOrders(showType){if(showType!=null&&showType=="archive"){userNav.open("listOrders.do?archivedDetails=true","popup");
}else{userNav.open("listOrders.do","popup");
}}function showEditProfile(){userNav.open("showEdit.do","popup");
}function showChangePassword(){userNav.open("showChangePassword.do","popup");
}function showMySumo(){userNav.open("mysumo.do","popup");
}function showArticle(articleId){hideArticle();
if(articleId!=null){userNav.open("listContent.do?articleId="+articleId,"popup");
}}function showSchoolArticle(articleId){hideArticle();
if(articleId!=null){userNav.open("listContent.do?articleId="+articleId,"skoleartikkel");
}}function hideArticle(){var article=document.getElementById("article");
var articleFull=document.getElementById("articleFull");
if(article!=null){article.innerHTML="";
Element.hide("article");
}else{if(articleFull!=null){articleFull.innerHTML="";
Element.hide("articleFull");
}}}function showVideoSetup(){userNav.open("videoSetup.do","popup");
}function showStopSubscription(detailId){var items=document.getElementsByClassName("item",$("dlgOrderList"));
for(var i=0;
i<items.length;
i++){if(items[i].id!=("orderItem"+detailId)){Element.hide(items[i].id);
}}Element.hide("orderStatus"+detailId);
Event.observe($("confirmStopLink"),"click",function(e){dialog.stopSubscription(detailId);
Event.stop(e);
},false);
Element.show("confirmStop");
}function validateSurvey(pForm,pUrl,pResultTag){var answer=-1;
for(i=pForm.answerId.length-1;
i>-1;
i--){if(pForm.answerId[i].checked){answer=i;
i=-1;
}}if(answer==-1){alert("Du mï¿½ velge et svaralternativ");
return false;
}closeDialogAndPostForm(pForm.id,pUrl,pResultTag);
}function showSurvey(memberAccessId){userNav.open("showChurnSurvey.do?memberAccessId="+memberAccessId+"&confirm=true","popup");
}function stopSubscription(memberAccessId){userNav.open("stopSubscription.do?memberAccessId="+memberAccessId+"&confirm=true","popup");
}function onSlUseChange(check){var now=new Date();
now.setTime(now.getTime()+315360000000);
if(check.checked){util.writeCookie("webtv.playerPlatform","silverlight",now,"/");
}else{util.writeCookie("webtv.playerPlatform","wmp",now,"/");
}}function popUpSSO(URL){day=new Date();
id=day.getTime();
URL=URL+"&callback="+encodeURIComponent(window.location);
eval("page"+id+" = window.open(URL, '"+id+"', 'toolbar=0,scrollbars=1,location=0,statusbar=1,menubar=0,resizable=1,width=800,height=600,left = 230,top = 180');");
}function concatenateMobile(){var mobnr=document.getElementById("mobilenumber");
var mobprefix=document.getElementById("mobileprefix");
var mobbody=document.getElementById("mobilebody");
var email=document.getElementById("registerEmail");
if(email&&email.value.length>0){if(mobprefix&&mobbody&&mobnr){mobnr.value=mobprefix.value+" "+mobbody.value;
}}return true;
}function validateRegistration(form){var email=form.registerEmail;
var birthdate=form.registerBirthdate;
if(email&&email.value.length>0&&birthdate&&birthdate.value.length==0){$("formError").update("Du har ikke fylt ut alle feltene");
return false;
}var zip=form.registerZip;
if(email&&email.value.length>0&&zip&&zip.value.length==0){$("formError").update("Du har ikke fylt ut postnummer");
return false;
}if($("formSubmitCC")!=null){Element.hide("formSubmitCC");
}return true;
}}var dialog=new Dialog();


function startup(){logDebug("Page loaded.");
new Ajax.PeriodicalUpdater("sessionControl","/webtv/sumo/sessionControl.do",{evalScripts:true,asynchronous:true,frequency:60,method:"get"});
}Event.observe(window,"load",startup,false);
var mainPlayer;
var videoPlayers=new Array();
var siste="siste";
var neste="neste";
var next="next";
var last="last";
var multiPlayer=new MultiPlayer(videoPlayers);
var pngStyles=new Array();
var drmManager;
drmManager=new DrmManager("drmContainer","drmObject");


function SpringStreams(N){this.version="20091216";var Y=".tns-cs.net/j0=";var B=200;var K=2000;var U="default";var G=new Array();this.syncrate=20;this.pausesync=6;this.maxstates=50;if(N){U=N}F();function S(f,d,c){if(!f){return }var e=new E(this,f,d,c);G.push(e);return e}this.track=S;function F(){setInterval(O,B);setInterval(I,K)}function T(){for(var c=0;c<G.length;++c){try{G[c].stop()}catch(d){X(d)}}}this.unload=T;function O(f){for(var c=0;c<G.length;++c){try{G[c].update(f)}catch(d){X(d)}}}this.doUpdate=O;function I(f){for(var c=0;c<G.length;++c){try{G[c].sync(f)}catch(d){X(d)}}}this.doSync=I;function X(c){H("",c)}this.error=X;function J(d,c){return a([[d,c]])}function D(c){if(c&&c.site!=undefined){return c.site}return U}function P(c){}this.debug=P;function W(){if("https"==document.location.href.slice(0,5)){return"https://ssl-"}return"http://"}function H(e,d){var c=W()+D(d)+Y+J(e,d);(new Image()).src=c;this.debug(c)}this.send=H;function a(h){var f;var j;var g;var e;var n=/[+&,;=~]/g;var o;var c;switch(typeof h){case"string":return n.test(h)?escape(h).replace(n,function(d){var i=c[d];if(i){return i}return d}):escape(h);case"number":return isFinite(h)?h.toString():"null";case"boolean":case"null":return h.toString();case"object":if(!h){return"null"}f=[];if(typeof h.length=="number"&&!(h.propertyIsEnumerable("length"))){e=h.length;for(j=0;j<e;j+=1){f.push(a(h[j])||"null")}return","+f.join("+")+";"}for(g in h){if(typeof g=="string"){if(g!="site"){o=a(h[g]);if(o){f.push(a(g)+"="+o)}}}}return","+f.join("+")+";"}return""}function E(w,t,x,s){var q=Math.round((Math.random()*10000000000)).toString(36);var f=Math.round(new Date().getTime()/1000);var m;var y;var o;var k;var g=[0,0,f.toString(36)];var h=0;var z=0;var i=true;var d=false;var p;m=w;y=t;if(s){p=s}else{p=m.WMStreamAdapter}k=r(x);o=new Array();o.push(g);function r(AA){var c=new Object();for(var n in AA){c[n]=AA[n]}return c}function v(c){if(o.length<m.maxstates){o.push(c)}}function e(c){g=[c,c,Math.round(new Date().getTime()/1000).toString(36)];v(g);i=true;h=0}function j(AB){if(d){return }var c=g[1];var n=c;try{n=Math.round(p.getPosition(y));if(!n){n=c}}catch(AC){}try{if(c==n){if(h>=0){h++;if(h==m.pausesync){i=true}}return }if(h>=m.pausesync){e(n)}else{if(c<n-1){e(n)}else{if(c>n){e(n)}else{g[1]=n;if(g[1]-g[0]>=m.syncrate){if(n-z>m.syncrate){i=true;z=n}}h=0}}}}catch(AA){X=true;m.error(AA)}}this.update=j;function u(){if(d){return }i=true;d=true;l(null)}this.stop=u;function l(AA){if(i){try{if(y.width){k.sx=y.width}if(y.height){k.sy=y.height}}catch(n){}k.uid=q;k.pst=o;var c;try{if(!k.dur||k.dur==0){k.dur=p.getDuration(y)}}catch(n){}try{c=p.getMeta(y)}catch(n){}k.vt=(Math.round(new Date().getTime()/1000))-f;m.send(c,k)}i=false}this.sync=l}this.DefaultAdapter={getMeta:b,getPosition:Z,getDuration:V};this.WMStreamAdapter={getMeta:M,getPosition:A,getDuration:L};this.RVStreamAdapter={getMeta:R,getPosition:C,getDuration:Q};function b(c){return{pl:"DEF",pv:version,sx:screen.width,sy:screen.heught}}function Z(c){return new Date().getTime()/1000}function V(c){return 0}function M(c){return{pl:"MSWM",plv:c.versionInfo,sx:screen.width,sy:screen.height}}function A(c){if(c.CurrentPosition){return c.CurrentPosition}if(c.currentPosition){return c.currentPosition}if(c.controls){if(c.controls.currentPosition){return c.controls.currentPosition}}if(c.Controls){if(c.Controls.currentPosition){return c.Controls.currentPosition}}return 0}function L(c){if(c.currentMedia){if(c.currentMedia.Duration){return c.currentMedia.Duration}if(c.currentMedia.duration){return c.currentMedia.duration}}else{if(c.CurrentMedia){if(c.CurrentMedia.duration){return c.CurrentMedia.duration}if(c.CurrentMedia.Duration){return c.CurrentMedia.Duration}}}}function R(c){return{pl:"RV",plv:c.GetVersionInfo(),sx:screen.width,sy:screen.height}}function C(c){return(c.GetPosition()/1000)}function Q(c){return(c.GetLength()/1000)}};

