/* Metacafe Copyright - http://www.metacafe.com/ */
/* Files included: 6Facebook.js.tmp Initializer.js.tmp AutoComplete.js.tmp AdManager.js.tmp Kpi.js.tmp BaseClasses.js.tmp RemoteLoader.js.tmp GoogleAnalytics.js.tmp 1mootools-1.2.js.tmp 2MootoolsExtensions.js.tmp comscore.php.tmp 3swfobject.js.tmp */

var MooTools={'version':'1.2.3','build':'4980aa0fb74d2f6eb80bcd9f5b8e1fd6fbb8f607'};var Native=function(options){options=options||{};var name=options.name;var legacy=options.legacy;var protect=options.protect;var methods=options.implement;var generics=options.generics;var initialize=options.initialize;var afterImplement=options.afterImplement||function(){};var object=initialize||legacy;generics=generics!==false;object.constructor=Native;object.$family={name:'native'};if(legacy&&initialize)object.prototype=legacy.prototype;object.prototype.constructor=object;if(name){var family=name.toLowerCase();object.prototype.$family={name:family};Native.typize(object,family);}
var add=function(obj,name,method,force){if(!protect||force||!obj.prototype[name])obj.prototype[name]=method;if(generics)Native.genericize(obj,name,protect);afterImplement.call(obj,name,method);return obj;};object.alias=function(a1,a2,a3){if(typeof a1=='string'){var pa1=this.prototype[a1];if((a1=pa1))return add(this,a2,a1,a3);}
for(var a in a1)this.alias(a,a1[a],a2);return this;};object.implement=function(a1,a2,a3){if(typeof a1=='string')return add(this,a1,a2,a3);for(var p in a1)add(this,p,a1[p],a2);return this;};if(methods)object.implement(methods);return object;};Native.genericize=function(object,property,check){if((!check||!object[property])&&typeof object.prototype[property]=='function')object[property]=function(){var args=Array.prototype.slice.call(arguments);return object.prototype[property].apply(args.shift(),args);};};Native.implement=function(objects,properties){for(var i=0,l=objects.length;i<l;i++)objects[i].implement(properties);};Native.typize=function(object,family){if(!object.type)object.type=function(item){return($type(item)===family);};};(function(){var natives={'Array':Array,'Date':Date,'Function':Function,'Number':Number,'RegExp':RegExp,'String':String};for(var n in natives)new Native({name:n,initialize:natives[n],protect:true});var types={'boolean':Boolean,'native':Native,'object':Object};for(var t in types)Native.typize(types[t],t);var generics={'Array':["concat","indexOf","join","lastIndexOf","pop","push","reverse","shift","slice","sort","splice","toString","unshift","valueOf"],'String':["charAt","charCodeAt","concat","indexOf","lastIndexOf","match","replace","search","slice","split","substr","substring","toLowerCase","toUpperCase","valueOf"]};for(var g in generics){for(var i=generics[g].length;i--;)Native.genericize(natives[g],generics[g][i],true);}})();var Hash=new Native({name:'Hash',initialize:function(object){if($type(object)=='hash')object=$unlink(object.getClean());for(var key in object)this[key]=object[key];return this;}});Hash.implement({forEach:function(fn,bind){for(var key in this){if(this.hasOwnProperty(key))fn.call(bind,this[key],key,this);}},getClean:function(){var clean={};for(var key in this){if(this.hasOwnProperty(key))clean[key]=this[key];}
return clean;},getLength:function(){var length=0;for(var key in this){if(this.hasOwnProperty(key))length++;}
return length;}});Hash.alias('forEach','each');Array.implement({forEach:function(fn,bind){for(var i=0,l=this.length;i<l;i++)fn.call(bind,this[i],i,this);}});Array.alias('forEach','each');function $A(iterable){if(iterable.item){var l=iterable.length,array=new Array(l);while(l--)array[l]=iterable[l];return array;}
return Array.prototype.slice.call(iterable);};function $arguments(i){return function(){return arguments[i];};};function $chk(obj){return!!(obj||obj===0);};function $clear(timer){clearTimeout(timer);clearInterval(timer);return null;};function $defined(obj){return(obj!=undefined);};function $each(iterable,fn,bind){var type=$type(iterable);((type=='arguments'||type=='collection'||type=='array')?Array:Hash).each(iterable,fn,bind);};function $empty(){};function $extend(original,extended){for(var key in(extended||{}))original[key]=extended[key];return original;};function $H(object){return new Hash(object);};function $lambda(value){return($type(value)=='function')?value:function(){return value;};};function $merge(){var args=Array.slice(arguments);args.unshift({});return $mixin.apply(null,args);};function $mixin(mix){for(var i=1,l=arguments.length;i<l;i++){var object=arguments[i];if($type(object)!='object')continue;for(var key in object){var op=object[key],mp=mix[key];mix[key]=(mp&&$type(op)=='object'&&$type(mp)=='object')?$mixin(mp,op):$unlink(op);}}
return mix;};function $pick(){for(var i=0,l=arguments.length;i<l;i++){if(arguments[i]!=undefined)return arguments[i];}
return null;};function $random(min,max){return Math.floor(Math.random()*(max-min+1)+min);};function $splat(obj){var type=$type(obj);return(type)?((type!='array'&&type!='arguments')?[obj]:obj):[];};var $time=Date.now||function(){return+new Date;};function $try(){for(var i=0,l=arguments.length;i<l;i++){try{return arguments[i]();}catch(e){}}
return null;};function $type(obj){if(obj==undefined)return false;if(obj.$family)return(obj.$family.name=='number'&&!isFinite(obj))?false:obj.$family.name;if(obj.nodeName){switch(obj.nodeType){case 1:return'element';case 3:return(/\S/).test(obj.nodeValue)?'textnode':'whitespace';}}else if(typeof obj.length=='number'){if(obj.callee)return'arguments';else if(obj.item)return'collection';}
return typeof obj;};function $unlink(object){var unlinked;switch($type(object)){case'object':unlinked={};for(var p in object)unlinked[p]=$unlink(object[p]);break;case'hash':unlinked=new Hash(object);break;case'array':unlinked=[];for(var i=0,l=object.length;i<l;i++)unlinked[i]=$unlink(object[i]);break;default:return object;}
return unlinked;};var Browser=$merge({Engine:{name:'unknown',version:0},Platform:{name:(window.orientation!=undefined)?'ipod':(navigator.platform.match(/mac|win|linux/i)||['other'])[0].toLowerCase()},Features:{xpath:!!(document.evaluate),air:!!(window.runtime),query:!!(document.querySelector)},Plugins:{},Engines:{presto:function(){return(!window.opera)?false:((arguments.callee.caller)?960:((document.getElementsByClassName)?950:925));},trident:function(){return(!window.ActiveXObject)?false:((window.XMLHttpRequest)?5:4);},webkit:function(){return(navigator.taintEnabled)?false:((Browser.Features.xpath)?((Browser.Features.query)?525:420):419);},gecko:function(){return(document.getBoxObjectFor==undefined)?false:((document.getElementsByClassName)?19:18);}}},Browser||{});Browser.Platform[Browser.Platform.name]=true;Browser.detect=function(){for(var engine in this.Engines){var version=this.Engines[engine]();if(version){this.Engine={name:engine,version:version};this.Engine[engine]=this.Engine[engine+version]=true;break;}}
return{name:engine,version:version};};Browser.detect();Browser.Request=function(){return $try(function(){return new XMLHttpRequest();},function(){return new ActiveXObject('MSXML2.XMLHTTP');});};Browser.Features.xhr=!!(Browser.Request());Browser.Plugins.Flash=(function(){var version=($try(function(){return navigator.plugins['Shockwave Flash'].description;},function(){return new ActiveXObject('ShockwaveFlash.ShockwaveFlash').GetVariable('$version');})||'0 r0').match(/\d+/g);return{version:parseInt(version[0]||0+'.'+version[1],10)||0,build:parseInt(version[2],10)||0};})();function $exec(text){if(!text)return text;if(window.execScript){window.execScript(text);}else{var script=document.createElement('script');script.setAttribute('type','text/javascript');script[(Browser.Engine.webkit&&Browser.Engine.version<420)?'innerText':'text']=text;document.head.appendChild(script);document.head.removeChild(script);}
return text;};Native.UID=1;var $uid=(Browser.Engine.trident)?function(item){return(item.uid||(item.uid=[Native.UID++]))[0];}:function(item){return item.uid||(item.uid=Native.UID++);};var Window=new Native({name:'Window',legacy:(Browser.Engine.trident)?null:window.Window,initialize:function(win){$uid(win);if(!win.Element){win.Element=$empty;if(Browser.Engine.webkit)win.document.createElement("iframe");win.Element.prototype=(Browser.Engine.webkit)?window["[[DOMElement.prototype]]"]:{};}
win.document.window=win;return $extend(win,Window.Prototype);},afterImplement:function(property,value){window[property]=Window.Prototype[property]=value;}});Window.Prototype={$family:{name:'window'}};new Window(window);var Document=new Native({name:'Document',legacy:(Browser.Engine.trident)?null:window.Document,initialize:function(doc){$uid(doc);doc.head=doc.getElementsByTagName('head')[0];doc.html=doc.getElementsByTagName('html')[0];if(Browser.Engine.trident&&Browser.Engine.version<=4)$try(function(){doc.execCommand("BackgroundImageCache",false,true);});if(Browser.Engine.trident)doc.window.attachEvent('onunload',function(){doc.window.detachEvent('onunload',arguments.callee);doc.head=doc.html=doc.window=null;});return $extend(doc,Document.Prototype);},afterImplement:function(property,value){document[property]=Document.Prototype[property]=value;}});Document.Prototype={$family:{name:'document'}};new Document(document);Array.implement({every:function(fn,bind){for(var i=0,l=this.length;i<l;i++){if(!fn.call(bind,this[i],i,this))return false;}
return true;},filter:function(fn,bind){var results=[];for(var i=0,l=this.length;i<l;i++){if(fn.call(bind,this[i],i,this))results.push(this[i]);}
return results;},clean:function(){return this.filter($defined);},indexOf:function(item,from){var len=this.length;for(var i=(from<0)?Math.max(0,len+from):from||0;i<len;i++){if(this[i]===item)return i;}
return-1;},map:function(fn,bind){var results=[];for(var i=0,l=this.length;i<l;i++)results[i]=fn.call(bind,this[i],i,this);return results;},some:function(fn,bind){for(var i=0,l=this.length;i<l;i++){if(fn.call(bind,this[i],i,this))return true;}
return false;},associate:function(keys){var obj={},length=Math.min(this.length,keys.length);for(var i=0;i<length;i++)obj[keys[i]]=this[i];return obj;},link:function(object){var result={};for(var i=0,l=this.length;i<l;i++){for(var key in object){if(object[key](this[i])){result[key]=this[i];delete object[key];break;}}}
return result;},contains:function(item,from){return this.indexOf(item,from)!=-1;},extend:function(array){for(var i=0,j=array.length;i<j;i++)this.push(array[i]);return this;},getLast:function(){return(this.length)?this[this.length-1]:null;},getRandom:function(){return(this.length)?this[$random(0,this.length-1)]:null;},include:function(item){if(!this.contains(item))this.push(item);return this;},combine:function(array){for(var i=0,l=array.length;i<l;i++)this.include(array[i]);return this;},erase:function(item){for(var i=this.length;i--;i){if(this[i]===item)this.splice(i,1);}
return this;},empty:function(){this.length=0;return this;},flatten:function(){var array=[];for(var i=0,l=this.length;i<l;i++){var type=$type(this[i]);if(!type)continue;array=array.concat((type=='array'||type=='collection'||type=='arguments')?Array.flatten(this[i]):this[i]);}
return array;},hexToRgb:function(array){if(this.length!=3)return null;var rgb=this.map(function(value){if(value.length==1)value+=value;return value.toInt(16);});return(array)?rgb:'rgb('+rgb+')';},rgbToHex:function(array){if(this.length<3)return null;if(this.length==4&&this[3]==0&&!array)return'transparent';var hex=[];for(var i=0;i<3;i++){var bit=(this[i]-0).toString(16);hex.push((bit.length==1)?'0'+bit:bit);}
return(array)?hex:'#'+hex.join('');}});Function.implement({extend:function(properties){for(var property in properties)this[property]=properties[property];return this;},create:function(options){var self=this;options=options||{};return function(event){var args=options.arguments;args=(args!=undefined)?$splat(args):Array.slice(arguments,(options.event)?1:0);if(options.event)args=[event||window.event].extend(args);var returns=function(){return self.apply(options.bind||null,args);};if(options.delay)return setTimeout(returns,options.delay);if(options.periodical)return setInterval(returns,options.periodical);if(options.attempt)return $try(returns);return returns();};},run:function(args,bind){return this.apply(bind,$splat(args));},pass:function(args,bind){return this.create({bind:bind,arguments:args});},bind:function(bind,args){return this.create({bind:bind,arguments:args});},bindWithEvent:function(bind,args){return this.create({bind:bind,arguments:args,event:true});},attempt:function(args,bind){return this.create({bind:bind,arguments:args,attempt:true})();},delay:function(delay,bind,args){return this.create({bind:bind,arguments:args,delay:delay})();},periodical:function(periodical,bind,args){return this.create({bind:bind,arguments:args,periodical:periodical})();}});Number.implement({limit:function(min,max){return Math.min(max,Math.max(min,this));},round:function(precision){precision=Math.pow(10,precision||0);return Math.round(this*precision)/precision;},times:function(fn,bind){for(var i=0;i<this;i++)fn.call(bind,i,this);},toFloat:function(){return parseFloat(this);},toInt:function(base){return parseInt(this,base||10);}});Number.alias('times','each');(function(math){var methods={};math.each(function(name){if(!Number[name])methods[name]=function(){return Math[name].apply(null,[this].concat($A(arguments)));};});Number.implement(methods);})(['abs','acos','asin','atan','atan2','ceil','cos','exp','floor','log','max','min','pow','sin','sqrt','tan']);String.implement({test:function(regex,params){return((typeof regex=='string')?new RegExp(regex,params):regex).test(this);},contains:function(string,separator){return(separator)?(separator+this+separator).indexOf(separator+string+separator)>-1:this.indexOf(string)>-1;},trim:function(){return this.replace(/^\s+|\s+$/g,'');},clean:function(){return this.replace(/\s+/g,' ').trim();},camelCase:function(){return this.replace(/-\D/g,function(match){return match.charAt(1).toUpperCase();});},hyphenate:function(){return this.replace(/[A-Z]/g,function(match){return('-'+match.charAt(0).toLowerCase());});},capitalize:function(){return this.replace(/\b[a-z]/g,function(match){return match.toUpperCase();});},escapeRegExp:function(){return this.replace(/([-.*+?^${}()|[\]\/\\])/g,'\\$1');},toInt:function(base){return parseInt(this,base||10);},toFloat:function(){return parseFloat(this);},hexToRgb:function(array){var hex=this.match(/^#?(\w{1,2})(\w{1,2})(\w{1,2})$/);return(hex)?hex.slice(1).hexToRgb(array):null;},rgbToHex:function(array){var rgb=this.match(/\d{1,3}/g);return(rgb)?rgb.rgbToHex(array):null;},stripScripts:function(option){var scripts='';var text=this.replace(/<script[^>]*>([\s\S]*?)<\/script>/gi,function(){scripts+=arguments[1]+'\n';return'';});if(option===true)$exec(scripts);else if($type(option)=='function')option(scripts,text);return text;},substitute:function(object,regexp){return this.replace(regexp||(/\\?\{([^{}]+)\}/g),function(match,name){if(match.charAt(0)=='\\')return match.slice(1);return(object[name]!=undefined)?object[name]:'';});}});Hash.implement({has:Object.prototype.hasOwnProperty,keyOf:function(value){for(var key in this){if(this.hasOwnProperty(key)&&this[key]===value)return key;}
return null;},hasValue:function(value){return(Hash.keyOf(this,value)!==null);},extend:function(properties){Hash.each(properties||{},function(value,key){Hash.set(this,key,value);},this);return this;},combine:function(properties){Hash.each(properties||{},function(value,key){Hash.include(this,key,value);},this);return this;},erase:function(key){if(this.hasOwnProperty(key))delete this[key];return this;},get:function(key){return(this.hasOwnProperty(key))?this[key]:null;},set:function(key,value){if(!this[key]||this.hasOwnProperty(key))this[key]=value;return this;},empty:function(){Hash.each(this,function(value,key){delete this[key];},this);return this;},include:function(key,value){if(this[key]==undefined)this[key]=value;return this;},map:function(fn,bind){var results=new Hash;Hash.each(this,function(value,key){results.set(key,fn.call(bind,value,key,this));},this);return results;},filter:function(fn,bind){var results=new Hash;Hash.each(this,function(value,key){if(fn.call(bind,value,key,this))results.set(key,value);},this);return results;},every:function(fn,bind){for(var key in this){if(this.hasOwnProperty(key)&&!fn.call(bind,this[key],key))return false;}
return true;},some:function(fn,bind){for(var key in this){if(this.hasOwnProperty(key)&&fn.call(bind,this[key],key))return true;}
return false;},getKeys:function(){var keys=[];Hash.each(this,function(value,key){keys.push(key);});return keys;},getValues:function(){var values=[];Hash.each(this,function(value){values.push(value);});return values;},toQueryString:function(base){var queryString=[];Hash.each(this,function(value,key){if(base)key=base+'['+key+']';var result;switch($type(value)){case'object':result=Hash.toQueryString(value,key);break;case'array':var qs={};value.each(function(val,i){qs[i]=val;});result=Hash.toQueryString(qs,key);break;default:result=key+'='+encodeURIComponent(value);}
if(value!=undefined)queryString.push(result);});return queryString.join('&');}});Hash.alias({keyOf:'indexOf',hasValue:'contains'});var Event=new Native({name:'Event',initialize:function(event,win){win=win||window;var doc=win.document;event=event||win.event;if(event.$extended)return event;this.$extended=true;var type=event.type;var target=event.target||event.srcElement;while(target&&target.nodeType==3)target=target.parentNode;if(type.test(/key/)){var code=event.which||event.keyCode;var key=Event.Keys.keyOf(code);if(type=='keydown'){var fKey=code-111;if(fKey>0&&fKey<13)key='f'+fKey;}
key=key||String.fromCharCode(code).toLowerCase();}else if(type.match(/(click|mouse|menu)/i)){doc=(!doc.compatMode||doc.compatMode=='CSS1Compat')?doc.html:doc.body;var page={x:event.pageX||event.clientX+doc.scrollLeft,y:event.pageY||event.clientY+doc.scrollTop};var client={x:(event.pageX)?event.pageX-win.pageXOffset:event.clientX,y:(event.pageY)?event.pageY-win.pageYOffset:event.clientY};if(type.match(/DOMMouseScroll|mousewheel/)){var wheel=(event.wheelDelta)?event.wheelDelta/120:-(event.detail||0)/3;}
var rightClick=(event.which==3)||(event.button==2);var related=null;if(type.match(/over|out/)){switch(type){case'mouseover':related=event.relatedTarget||event.fromElement;break;case'mouseout':related=event.relatedTarget||event.toElement;}
if(!(function(){while(related&&related.nodeType==3)related=related.parentNode;return true;}).create({attempt:Browser.Engine.gecko})())related=false;}}
return $extend(this,{event:event,type:type,page:page,client:client,rightClick:rightClick,wheel:wheel,relatedTarget:related,target:target,code:code,key:key,shift:event.shiftKey,control:event.ctrlKey,alt:event.altKey,meta:event.metaKey});}});Event.Keys=new Hash({'enter':13,'up':38,'down':40,'left':37,'right':39,'esc':27,'space':32,'backspace':8,'tab':9,'delete':46});Event.implement({stop:function(){return this.stopPropagation().preventDefault();},stopPropagation:function(){if(this.event.stopPropagation)this.event.stopPropagation();else this.event.cancelBubble=true;return this;},preventDefault:function(){if(this.event.preventDefault)this.event.preventDefault();else this.event.returnValue=false;return this;}});function Class(params){if(params instanceof Function)params={initialize:params};var newClass=function(){Object.reset(this);if(newClass._prototyping)return this;this._current=$empty;var value=(this.initialize)?this.initialize.apply(this,arguments):this;delete this._current;delete this.caller;return value;}.extend(this);newClass.implement(params);newClass.constructor=Class;newClass.prototype.constructor=newClass;return newClass;};Function.prototype.protect=function(){this._protected=true;return this;};Object.reset=function(object,key){if(key==null){for(var p in object)Object.reset(object,p);return object;}
delete object[key];switch($type(object[key])){case'object':var F=function(){};F.prototype=object[key];var i=new F;object[key]=Object.reset(i);break;case'array':object[key]=$unlink(object[key]);break;}
return object;};new Native({name:'Class',initialize:Class}).extend({instantiate:function(F){F._prototyping=true;var proto=new F;delete F._prototyping;return proto;},wrap:function(self,key,method){if(method._origin)method=method._origin;return function(){if(method._protected&&this._current==null)throw new Error('The method "'+key+'" cannot be called.');var caller=this.caller,current=this._current;this.caller=current;this._current=arguments.callee;var result=method.apply(this,arguments);this._current=current;this.caller=caller;return result;}.extend({_owner:self,_origin:method,_name:key});}});Class.implement({implement:function(key,value){if($type(key)=='object'){for(var p in key)this.implement(p,key[p]);return this;}
var mutator=Class.Mutators[key];if(mutator){value=mutator.call(this,value);if(value==null)return this;}
var proto=this.prototype;switch($type(value)){case'function':if(value._hidden)return this;proto[key]=Class.wrap(this,key,value);break;case'object':var previous=proto[key];if($type(previous)=='object')$mixin(previous,value);else proto[key]=$unlink(value);break;case'array':proto[key]=$unlink(value);break;default:proto[key]=value;}
return this;}});Class.Mutators={Extends:function(parent){this.parent=parent;this.prototype=Class.instantiate(parent);this.implement('parent',function(){var name=this.caller._name,previous=this.caller._owner.parent.prototype[name];if(!previous)throw new Error('The method "'+name+'" has no parent.');return previous.apply(this,arguments);}.protect());},Implements:function(items){$splat(items).each(function(item){if(item instanceof Function)item=Class.instantiate(item);this.implement(item);},this);}};var Chain=new Class({$chain:[],chain:function(){this.$chain.extend(Array.flatten(arguments));return this;},callChain:function(){return(this.$chain.length)?this.$chain.shift().apply(this,arguments):false;},clearChain:function(){this.$chain.empty();return this;}});var Events=new Class({$events:{},addEvent:function(type,fn,internal){type=Events.removeOn(type);if(fn!=$empty){this.$events[type]=this.$events[type]||[];this.$events[type].include(fn);if(internal)fn.internal=true;}
return this;},addEvents:function(events){for(var type in events)this.addEvent(type,events[type]);return this;},fireEvent:function(type,args,delay){type=Events.removeOn(type);if(!this.$events||!this.$events[type])return this;this.$events[type].each(function(fn){fn.create({'bind':this,'delay':delay,'arguments':args})();},this);return this;},removeEvent:function(type,fn){type=Events.removeOn(type);if(!this.$events[type])return this;if(!fn.internal)this.$events[type].erase(fn);return this;},removeEvents:function(events){var type;if($type(events)=='object'){for(type in events)this.removeEvent(type,events[type]);return this;}
if(events)events=Events.removeOn(events);for(type in this.$events){if(events&&events!=type)continue;var fns=this.$events[type];for(var i=fns.length;i--;i)this.removeEvent(type,fns[i]);}
return this;}});Events.removeOn=function(string){return string.replace(/^on([A-Z])/,function(full,first){return first.toLowerCase();});};var Options=new Class({setOptions:function(){this.options=$merge.run([this.options].extend(arguments));if(!this.addEvent)return this;for(var option in this.options){if($type(this.options[option])!='function'||!(/^on[A-Z]/).test(option))continue;this.addEvent(option,this.options[option]);delete this.options[option];}
return this;}});var Element=new Native({name:'Element',legacy:window.Element,initialize:function(tag,props){var konstructor=Element.Constructors.get(tag);if(konstructor)return konstructor(props);if(typeof tag=='string')return document.newElement(tag,props);return document.id(tag).set(props);},afterImplement:function(key,value){Element.Prototype[key]=value;if(Array[key])return;Elements.implement(key,function(){var items=[],elements=true;for(var i=0,j=this.length;i<j;i++){var returns=this[i][key].apply(this[i],arguments);items.push(returns);if(elements)elements=($type(returns)=='element');}
return(elements)?new Elements(items):items;});}});Element.Prototype={$family:{name:'element'}};Element.Constructors=new Hash;var IFrame=new Native({name:'IFrame',generics:false,initialize:function(){var params=Array.link(arguments,{properties:Object.type,iframe:$defined});var props=params.properties||{};var iframe=document.id(params.iframe);var onload=props.onload||$empty;delete props.onload;props.id=props.name=$pick(props.id,props.name,iframe?(iframe.id||iframe.name):'IFrame_'+$time());iframe=new Element(iframe||'iframe',props);var onFrameLoad=function(){var host=$try(function(){return iframe.contentWindow.location.host;});if(!host||host==window.location.host){var win=new Window(iframe.contentWindow);new Document(iframe.contentWindow.document);$extend(win.Element.prototype,Element.Prototype);}
onload.call(iframe.contentWindow,iframe.contentWindow.document);};var contentWindow=$try(function(){return iframe.contentWindow;});((contentWindow&&contentWindow.document.body)||window.frames[props.id])?onFrameLoad():iframe.addListener('load',onFrameLoad);return iframe;}});var Elements=new Native({initialize:function(elements,options){options=$extend({ddup:true,cash:true},options);elements=elements||[];if(options.ddup||options.cash){var uniques={},returned=[];for(var i=0,l=elements.length;i<l;i++){var el=document.id(elements[i],!options.cash);if(options.ddup){if(uniques[el.uid])continue;uniques[el.uid]=true;}
returned.push(el);}
elements=returned;}
return(options.cash)?$extend(elements,this):elements;}});Elements.implement({filter:function(filter,bind){if(!filter)return this;return new Elements(Array.filter(this,(typeof filter=='string')?function(item){return item.match(filter);}:filter,bind));}});Document.implement({newElement:function(tag,props){if(Browser.Engine.trident&&props){['name','type','checked'].each(function(attribute){if(!props[attribute])return;tag+=' '+attribute+'="'+props[attribute]+'"';if(attribute!='checked')delete props[attribute];});tag='<'+tag+'>';}
return document.id(this.createElement(tag)).set(props);},newTextNode:function(text){return this.createTextNode(text);},getDocument:function(){return this;},getWindow:function(){return this.window;},id:(function(){var types={string:function(id,nocash,doc){id=doc.getElementById(id);return(id)?types.element(id,nocash):null;},element:function(el,nocash){$uid(el);if(!nocash&&!el.$family&&!(/^object|embed$/i).test(el.tagName)){var proto=Element.Prototype;for(var p in proto)el[p]=proto[p];};return el;},object:function(obj,nocash,doc){if(obj.toElement)return types.element(obj.toElement(doc),nocash);return null;}};types.textnode=types.whitespace=types.window=types.document=$arguments(0);return function(el,nocash,doc){if(el&&el.$family&&el.uid)return el;var type=$type(el);return(types[type])?types[type](el,nocash,doc||document):null;};})()});if(window.$==null)Window.implement({$:function(el,nc){return document.id(el,nc,this.document);}});Window.implement({$$:function(selector){if(arguments.length==1&&typeof selector=='string')return this.document.getElements(selector);var elements=[];var args=Array.flatten(arguments);for(var i=0,l=args.length;i<l;i++){var item=args[i];switch($type(item)){case'element':elements.push(item);break;case'string':elements.extend(this.document.getElements(item,true));}}
return new Elements(elements);},getDocument:function(){return this.document;},getWindow:function(){return this;}});Native.implement([Element,Document],{getElement:function(selector,nocash){return document.id(this.getElements(selector,true)[0]||null,nocash);},getElements:function(tags,nocash){tags=tags.split(',');var elements=[];var ddup=(tags.length>1);tags.each(function(tag){var partial=this.getElementsByTagName(tag.trim());(ddup)?elements.extend(partial):elements=partial;},this);return new Elements(elements,{ddup:ddup,cash:!nocash});}});(function(){var collected={},storage={};var props={input:'checked',option:'selected',textarea:(Browser.Engine.webkit&&Browser.Engine.version<420)?'innerHTML':'value'};var get=function(uid){return(storage[uid]||(storage[uid]={}));};var clean=function(item,retain){if(!item)return;var uid=item.uid;if(Browser.Engine.trident){if(item.clearAttributes){var clone=retain&&item.cloneNode(false);item.clearAttributes();if(clone)item.mergeAttributes(clone);}else if(item.removeEvents){item.removeEvents();}
if((/object/i).test(item.tagName)){for(var p in item){if(typeof item[p]=='function')item[p]=$empty;}
Element.dispose(item);}}
if(!uid)return;collected[uid]=storage[uid]=null;};var purge=function(){Hash.each(collected,clean);if(Browser.Engine.trident)$A(document.getElementsByTagName('object')).each(clean);if(window.CollectGarbage)CollectGarbage();collected=storage=null;};var walk=function(element,walk,start,match,all,nocash){var el=element[start||walk];var elements=[];while(el){if(el.nodeType==1&&(!match||Element.match(el,match))){if(!all)return document.id(el,nocash);elements.push(el);}
el=el[walk];}
return(all)?new Elements(elements,{ddup:false,cash:!nocash}):null;};var attributes={'html':'innerHTML','class':'className','for':'htmlFor','defaultValue':'defaultValue','text':(Browser.Engine.trident||(Browser.Engine.webkit&&Browser.Engine.version<420))?'innerText':'textContent'};var bools=['compact','nowrap','ismap','declare','noshade','checked','disabled','readonly','multiple','selected','noresize','defer'];var camels=['value','type','defaultValue','accessKey','cellPadding','cellSpacing','colSpan','frameBorder','maxLength','readOnly','rowSpan','tabIndex','useMap'];bools=bools.associate(bools);Hash.extend(attributes,bools);Hash.extend(attributes,camels.associate(camels.map(String.toLowerCase)));var inserters={before:function(context,element){if(element.parentNode)element.parentNode.insertBefore(context,element);},after:function(context,element){if(!element.parentNode)return;var next=element.nextSibling;(next)?element.parentNode.insertBefore(context,next):element.parentNode.appendChild(context);},bottom:function(context,element){element.appendChild(context);},top:function(context,element){var first=element.firstChild;(first)?element.insertBefore(context,first):element.appendChild(context);}};inserters.inside=inserters.bottom;Hash.each(inserters,function(inserter,where){where=where.capitalize();Element.implement('inject'+where,function(el){inserter(this,document.id(el,true));return this;});Element.implement('grab'+where,function(el){inserter(document.id(el,true),this);return this;});});Element.implement({set:function(prop,value){switch($type(prop)){case'object':for(var p in prop)this.set(p,prop[p]);break;case'string':var property=Element.Properties.get(prop);(property&&property.set)?property.set.apply(this,Array.slice(arguments,1)):this.setProperty(prop,value);}
return this;},get:function(prop){var property=Element.Properties.get(prop);return(property&&property.get)?property.get.apply(this,Array.slice(arguments,1)):this.getProperty(prop);},erase:function(prop){var property=Element.Properties.get(prop);(property&&property.erase)?property.erase.apply(this):this.removeProperty(prop);return this;},setProperty:function(attribute,value){var key=attributes[attribute];if(value==undefined)return this.removeProperty(attribute);if(key&&bools[attribute])value=!!value;(key)?this[key]=value:this.setAttribute(attribute,''+value);return this;},setProperties:function(attributes){for(var attribute in attributes)this.setProperty(attribute,attributes[attribute]);return this;},getProperty:function(attribute){var key=attributes[attribute];var value=(key)?this[key]:this.getAttribute(attribute,2);return(bools[attribute])?!!value:(key)?value:value||null;},getProperties:function(){var args=$A(arguments);return args.map(this.getProperty,this).associate(args);},removeProperty:function(attribute){var key=attributes[attribute];(key)?this[key]=(key&&bools[attribute])?false:'':this.removeAttribute(attribute);return this;},removeProperties:function(){Array.each(arguments,this.removeProperty,this);return this;},hasClass:function(className){return this.className.contains(className,' ');},addClass:function(className){if(!this.hasClass(className))this.className=(this.className+' '+className).clean();return this;},removeClass:function(className){this.className=this.className.replace(new RegExp('(^|\\s)'+className+'(?:\\s|$)'),'$1');return this;},toggleClass:function(className){return this.hasClass(className)?this.removeClass(className):this.addClass(className);},adopt:function(){Array.flatten(arguments).each(function(element){element=document.id(element,true);if(element)this.appendChild(element);},this);return this;},appendText:function(text,where){return this.grab(this.getDocument().newTextNode(text),where);},grab:function(el,where){inserters[where||'bottom'](document.id(el,true),this);return this;},inject:function(el,where){inserters[where||'bottom'](this,document.id(el,true));return this;},replaces:function(el){el=document.id(el,true);el.parentNode.replaceChild(this,el);return this;},wraps:function(el,where){el=document.id(el,true);return this.replaces(el).grab(el,where);},getPrevious:function(match,nocash){return walk(this,'previousSibling',null,match,false,nocash);},getAllPrevious:function(match,nocash){return walk(this,'previousSibling',null,match,true,nocash);},getNext:function(match,nocash){return walk(this,'nextSibling',null,match,false,nocash);},getAllNext:function(match,nocash){return walk(this,'nextSibling',null,match,true,nocash);},getFirst:function(match,nocash){return walk(this,'nextSibling','firstChild',match,false,nocash);},getLast:function(match,nocash){return walk(this,'previousSibling','lastChild',match,false,nocash);},getParent:function(match,nocash){return walk(this,'parentNode',null,match,false,nocash);},getParents:function(match,nocash){return walk(this,'parentNode',null,match,true,nocash);},getSiblings:function(match,nocash){return this.getParent().getChildren(match,nocash).erase(this);},getChildren:function(match,nocash){return walk(this,'nextSibling','firstChild',match,true,nocash);},getWindow:function(){return this.ownerDocument.window;},getDocument:function(){return this.ownerDocument;},getElementById:function(id,nocash){var el=this.ownerDocument.getElementById(id);if(!el)return null;for(var parent=el.parentNode;parent!=this;parent=parent.parentNode){if(!parent)return null;}
return document.id(el,nocash);},getSelected:function(){return new Elements($A(this.options).filter(function(option){return option.selected;}));},getComputedStyle:function(property){if(this.currentStyle)return this.currentStyle[property.camelCase()];var computed=this.getDocument().defaultView.getComputedStyle(this,null);return(computed)?computed.getPropertyValue([property.hyphenate()]):null;},toQueryString:function(){var queryString=[];this.getElements('input, select, textarea',true).each(function(el){if(!el.name||el.disabled||el.type=='submit'||el.type=='reset'||el.type=='file')return;var value=(el.tagName.toLowerCase()=='select')?Element.getSelected(el).map(function(opt){return opt.value;}):((el.type=='radio'||el.type=='checkbox')&&!el.checked)?null:el.value;$splat(value).each(function(val){if(typeof val!='undefined')queryString.push(el.name+'='+encodeURIComponent(val));});});return queryString.join('&');},clone:function(contents,keepid){contents=contents!==false;var clone=this.cloneNode(contents);var clean=function(node,element){if(!keepid)node.removeAttribute('id');if(Browser.Engine.trident){node.clearAttributes();node.mergeAttributes(element);node.removeAttribute('uid');if(node.options){var no=node.options,eo=element.options;for(var j=no.length;j--;)no[j].selected=eo[j].selected;}}
var prop=props[element.tagName.toLowerCase()];if(prop&&element[prop])node[prop]=element[prop];};if(contents){var ce=clone.getElementsByTagName('*'),te=this.getElementsByTagName('*');for(var i=ce.length;i--;)clean(ce[i],te[i]);}
clean(clone,this);return document.id(clone);},destroy:function(){Element.empty(this);Element.dispose(this);clean(this,true);return null;},empty:function(){$A(this.childNodes).each(function(node){Element.destroy(node);});return this;},dispose:function(){return(this.parentNode)?this.parentNode.removeChild(this):this;},hasChild:function(el){el=document.id(el,true);if(!el)return false;if(Browser.Engine.webkit&&Browser.Engine.version<420)return $A(this.getElementsByTagName(el.tagName)).contains(el);return(this.contains)?(this!=el&&this.contains(el)):!!(this.compareDocumentPosition(el)&16);},match:function(tag){return(!tag||(tag==this)||(Element.get(this,'tag')==tag));}});Native.implement([Element,Window,Document],{addListener:function(type,fn){if(type=='unload'){var old=fn,self=this;fn=function(){self.removeListener('unload',fn);old();};}else{collected[this.uid]=this;}
if(this.addEventListener)this.addEventListener(type,fn,false);else this.attachEvent('on'+type,fn);return this;},removeListener:function(type,fn){if(this.removeEventListener)this.removeEventListener(type,fn,false);else this.detachEvent('on'+type,fn);return this;},retrieve:function(property,dflt){var storage=get(this.uid),prop=storage[property];if(dflt!=undefined&&prop==undefined)prop=storage[property]=dflt;return $pick(prop);},store:function(property,value){var storage=get(this.uid);storage[property]=value;return this;},eliminate:function(property){var storage=get(this.uid);delete storage[property];return this;}});window.addListener('unload',purge);})();Element.Properties=new Hash;Element.Properties.style={set:function(style){this.style.cssText=style;},get:function(){return this.style.cssText;},erase:function(){this.style.cssText='';}};Element.Properties.tag={get:function(){return this.tagName.toLowerCase();}};Element.Properties.html=(function(){var wrapper=document.createElement('div');var translations={table:[1,'<table>','</table>'],select:[1,'<select>','</select>'],tbody:[2,'<table><tbody>','</tbody></table>'],tr:[3,'<table><tbody><tr>','</tr></tbody></table>']};translations.thead=translations.tfoot=translations.tbody;var html={set:function(){var html=Array.flatten(arguments).join('');var wrap=Browser.Engine.trident&&translations[this.get('tag')];if(wrap){var first=wrapper;first.innerHTML=wrap[1]+html+wrap[2];for(var i=wrap[0];i--;)first=first.firstChild;this.empty().adopt(first.childNodes);}else{this.innerHTML=html;}}};html.erase=html.set;return html;})();if(Browser.Engine.webkit&&Browser.Engine.version<420)Element.Properties.text={get:function(){if(this.innerText)return this.innerText;var temp=this.ownerDocument.newElement('div',{html:this.innerHTML}).inject(this.ownerDocument.body);var text=temp.innerText;temp.destroy();return text;}};Element.Properties.events={set:function(events){this.addEvents(events);}};Native.implement([Element,Window,Document],{addEvent:function(type,fn){var events=this.retrieve('events',{});events[type]=events[type]||{'keys':[],'values':[]};if(events[type].keys.contains(fn))return this;events[type].keys.push(fn);var realType=type,custom=Element.Events.get(type),condition=fn,self=this;if(custom){if(custom.onAdd)custom.onAdd.call(this,fn);if(custom.condition){condition=function(event){if(custom.condition.call(this,event))return fn.call(this,event);return true;};}
realType=custom.base||realType;}
var defn=function(){return fn.call(self);};var nativeEvent=Element.NativeEvents[realType];if(nativeEvent){if(nativeEvent==2){defn=function(event){event=new Event(event,self.getWindow());if(condition.call(self,event)===false)event.stop();};}
this.addListener(realType,defn);}
events[type].values.push(defn);return this;},removeEvent:function(type,fn){var events=this.retrieve('events');if(!events||!events[type])return this;var pos=events[type].keys.indexOf(fn);if(pos==-1)return this;events[type].keys.splice(pos,1);var value=events[type].values.splice(pos,1)[0];var custom=Element.Events.get(type);if(custom){if(custom.onRemove)custom.onRemove.call(this,fn);type=custom.base||type;}
return(Element.NativeEvents[type])?this.removeListener(type,value):this;},addEvents:function(events){for(var event in events)this.addEvent(event,events[event]);return this;},removeEvents:function(events){var type;if($type(events)=='object'){for(type in events)this.removeEvent(type,events[type]);return this;}
var attached=this.retrieve('events');if(!attached)return this;if(!events){for(type in attached)this.removeEvents(type);this.eliminate('events');}else if(attached[events]){while(attached[events].keys[0])this.removeEvent(events,attached[events].keys[0]);attached[events]=null;}
return this;},fireEvent:function(type,args,delay){var events=this.retrieve('events');if(!events||!events[type])return this;events[type].keys.each(function(fn){fn.create({'bind':this,'delay':delay,'arguments':args})();},this);return this;},cloneEvents:function(from,type){from=document.id(from);var fevents=from.retrieve('events');if(!fevents)return this;if(!type){for(var evType in fevents)this.cloneEvents(from,evType);}else if(fevents[type]){fevents[type].keys.each(function(fn){this.addEvent(type,fn);},this);}
return this;}});Element.NativeEvents={click:2,dblclick:2,mouseup:2,mousedown:2,contextmenu:2,mousewheel:2,DOMMouseScroll:2,mouseover:2,mouseout:2,mousemove:2,selectstart:2,selectend:2,keydown:2,keypress:2,keyup:2,focus:2,blur:2,change:2,reset:2,select:2,submit:2,load:1,unload:1,beforeunload:2,resize:1,move:1,DOMContentLoaded:1,readystatechange:1,error:1,abort:1,scroll:1};(function(){var $check=function(event){var related=event.relatedTarget;if(related==undefined)return true;if(related===false)return false;return($type(this)!='document'&&related!=this&&related.prefix!='xul'&&!this.hasChild(related));};Element.Events=new Hash({mouseenter:{base:'mouseover',condition:$check},mouseleave:{base:'mouseout',condition:$check},mousewheel:{base:(Browser.Engine.gecko)?'DOMMouseScroll':'mousewheel'}});})();Element.Properties.styles={set:function(styles){this.setStyles(styles);}};Element.Properties.opacity={set:function(opacity,novisibility){if(!novisibility){if(opacity==0){if(this.style.visibility!='hidden')this.style.visibility='hidden';}else{if(this.style.visibility!='visible')this.style.visibility='visible';}}
if(!this.currentStyle||!this.currentStyle.hasLayout)this.style.zoom=1;if(Browser.Engine.trident)this.style.filter=(opacity==1)?'':'alpha(opacity='+opacity*100+')';this.style.opacity=opacity;this.store('opacity',opacity);},get:function(){return this.retrieve('opacity',1);}};Element.implement({setOpacity:function(value){return this.set('opacity',value,true);},getOpacity:function(){return this.get('opacity');},setStyle:function(property,value){switch(property){case'opacity':return this.set('opacity',parseFloat(value));case'float':property=(Browser.Engine.trident)?'styleFloat':'cssFloat';}
property=property.camelCase();if($type(value)!='string'){var map=(Element.Styles.get(property)||'@').split(' ');value=$splat(value).map(function(val,i){if(!map[i])return'';return($type(val)=='number')?map[i].replace('@',Math.round(val)):val;}).join(' ');}else if(value==String(Number(value))){value=Math.round(value);}
this.style[property]=value;return this;},getStyle:function(property){switch(property){case'opacity':return this.get('opacity');case'float':property=(Browser.Engine.trident)?'styleFloat':'cssFloat';}
property=property.camelCase();var result=this.style[property];if(!$chk(result)){result=[];for(var style in Element.ShortStyles){if(property!=style)continue;for(var s in Element.ShortStyles[style])result.push(this.getStyle(s));return result.join(' ');}
result=this.getComputedStyle(property);}
if(result){result=String(result);var color=result.match(/rgba?\([\d\s,]+\)/);if(color)result=result.replace(color[0],color[0].rgbToHex());}
if(Browser.Engine.presto||(Browser.Engine.trident&&!$chk(parseInt(result,10)))){if(property.test(/^(height|width)$/)){var values=(property=='width')?['left','right']:['top','bottom'],size=0;values.each(function(value){size+=this.getStyle('border-'+value+'-width').toInt()+this.getStyle('padding-'+value).toInt();},this);return this['offset'+property.capitalize()]-size+'px';}
if((Browser.Engine.presto)&&String(result).test('px'))return result;if(property.test(/(border(.+)Width|margin|padding)/))return'0px';}
return result;},setStyles:function(styles){for(var style in styles)this.setStyle(style,styles[style]);return this;},getStyles:function(){var result={};Array.flatten(arguments).each(function(key){result[key]=this.getStyle(key);},this);return result;}});Element.Styles=new Hash({left:'@px',top:'@px',bottom:'@px',right:'@px',width:'@px',height:'@px',maxWidth:'@px',maxHeight:'@px',minWidth:'@px',minHeight:'@px',backgroundColor:'rgb(@, @, @)',backgroundPosition:'@px @px',color:'rgb(@, @, @)',fontSize:'@px',letterSpacing:'@px',lineHeight:'@px',clip:'rect(@px @px @px @px)',margin:'@px @px @px @px',padding:'@px @px @px @px',border:'@px @ rgb(@, @, @) @px @ rgb(@, @, @) @px @ rgb(@, @, @)',borderWidth:'@px @px @px @px',borderStyle:'@ @ @ @',borderColor:'rgb(@, @, @) rgb(@, @, @) rgb(@, @, @) rgb(@, @, @)',zIndex:'@','zoom':'@',fontWeight:'@',textIndent:'@px',opacity:'@'});Element.ShortStyles={margin:{},padding:{},border:{},borderWidth:{},borderStyle:{},borderColor:{}};['Top','Right','Bottom','Left'].each(function(direction){var Short=Element.ShortStyles;var All=Element.Styles;['margin','padding'].each(function(style){var sd=style+direction;Short[style][sd]=All[sd]='@px';});var bd='border'+direction;Short.border[bd]=All[bd]='@px @ rgb(@, @, @)';var bdw=bd+'Width',bds=bd+'Style',bdc=bd+'Color';Short[bd]={};Short.borderWidth[bdw]=Short[bd][bdw]=All[bdw]='@px';Short.borderStyle[bds]=Short[bd][bds]=All[bds]='@';Short.borderColor[bdc]=Short[bd][bdc]=All[bdc]='rgb(@, @, @)';});(function(){Element.implement({scrollTo:function(x,y){if(isBody(this)){this.getWindow().scrollTo(x,y);}else{this.scrollLeft=x;this.scrollTop=y;}
return this;},getSize:function(){if(isBody(this))return this.getWindow().getSize();return{x:this.offsetWidth,y:this.offsetHeight};},getScrollSize:function(){if(isBody(this))return this.getWindow().getScrollSize();return{x:this.scrollWidth,y:this.scrollHeight};},getScroll:function(){if(isBody(this))return this.getWindow().getScroll();return{x:this.scrollLeft,y:this.scrollTop};},getScrolls:function(){var element=this,position={x:0,y:0};while(element&&!isBody(element)){position.x+=element.scrollLeft;position.y+=element.scrollTop;element=element.parentNode;}
return position;},getOffsetParent:function(){var element=this;if(isBody(element))return null;if(!Browser.Engine.trident)return element.offsetParent;while((element=element.parentNode)&&!isBody(element)){if(styleString(element,'position')!='static')return element;}
return null;},getOffsets:function(){if(this.getBoundingClientRect){var bound=this.getBoundingClientRect(),html=document.id(this.getDocument().documentElement),scroll=html.getScroll(),isFixed=(styleString(this,'position')=='fixed');return{x:parseInt(bound.left,10)+((isFixed)?0:scroll.x)-html.clientLeft,y:parseInt(bound.top,10)+((isFixed)?0:scroll.y)-html.clientTop};}
var element=this,position={x:0,y:0};if(isBody(this))return position;while(element&&!isBody(element)){position.x+=element.offsetLeft;position.y+=element.offsetTop;if(Browser.Engine.gecko){if(!borderBox(element)){position.x+=leftBorder(element);position.y+=topBorder(element);}
var parent=element.parentNode;if(parent&&styleString(parent,'overflow')!='visible'){position.x+=leftBorder(parent);position.y+=topBorder(parent);}}else if(element!=this&&Browser.Engine.webkit){position.x+=leftBorder(element);position.y+=topBorder(element);}
element=element.offsetParent;}
if(Browser.Engine.gecko&&!borderBox(this)){position.x-=leftBorder(this);position.y-=topBorder(this);}
return position;},getPosition:function(relative){if(isBody(this))return{x:0,y:0};var offset=this.getOffsets(),scroll=this.getScrolls();var position={x:offset.x-scroll.x,y:offset.y-scroll.y};var relativePosition=(relative&&(relative=document.id(relative)))?relative.getPosition():{x:0,y:0};return{x:position.x-relativePosition.x,y:position.y-relativePosition.y};},getCoordinates:function(element){if(isBody(this))return this.getWindow().getCoordinates();var position=this.getPosition(element),size=this.getSize();var obj={left:position.x,top:position.y,width:size.x,height:size.y};obj.right=obj.left+obj.width;obj.bottom=obj.top+obj.height;return obj;},computePosition:function(obj){return{left:obj.x-styleNumber(this,'margin-left'),top:obj.y-styleNumber(this,'margin-top')};},setPosition:function(obj){return this.setStyles(this.computePosition(obj));}});Native.implement([Document,Window],{getSize:function(){if(Browser.Engine.presto||Browser.Engine.webkit){var win=this.getWindow();return{x:win.innerWidth,y:win.innerHeight};}
var doc=getCompatElement(this);return{x:doc.clientWidth,y:doc.clientHeight};},getScroll:function(){var win=this.getWindow(),doc=getCompatElement(this);return{x:win.pageXOffset||doc.scrollLeft,y:win.pageYOffset||doc.scrollTop};},getScrollSize:function(){var doc=getCompatElement(this),min=this.getSize();return{x:Math.max(doc.scrollWidth,min.x),y:Math.max(doc.scrollHeight,min.y)};},getPosition:function(){return{x:0,y:0};},getCoordinates:function(){var size=this.getSize();return{top:0,left:0,bottom:size.y,right:size.x,height:size.y,width:size.x};}});var styleString=Element.getComputedStyle;function styleNumber(element,style){return styleString(element,style).toInt()||0;};function borderBox(element){return styleString(element,'-moz-box-sizing')=='border-box';};function topBorder(element){return styleNumber(element,'border-top-width');};function leftBorder(element){return styleNumber(element,'border-left-width');};function isBody(element){return(/^(?:body|html)$/i).test(element.tagName);};function getCompatElement(element){var doc=element.getDocument();return(!doc.compatMode||doc.compatMode=='CSS1Compat')?doc.html:doc.body;};})();Element.alias('setPosition','position');Native.implement([Window,Document,Element],{getHeight:function(){return this.getSize().y;},getWidth:function(){return this.getSize().x;},getScrollTop:function(){return this.getScroll().y;},getScrollLeft:function(){return this.getScroll().x;},getScrollHeight:function(){return this.getScrollSize().y;},getScrollWidth:function(){return this.getScrollSize().x;},getTop:function(){return this.getPosition().y;},getLeft:function(){return this.getPosition().x;}});Native.implement([Document,Element],{getElements:function(expression,nocash){expression=expression.split(',');var items,local={};for(var i=0,l=expression.length;i<l;i++){var selector=expression[i],elements=Selectors.Utils.search(this,selector,local);if(i!=0&&elements.item)elements=$A(elements);items=(i==0)?elements:(items.item)?$A(items).concat(elements):items.concat(elements);}
return new Elements(items,{ddup:(expression.length>1),cash:!nocash});}});Element.implement({match:function(selector){if(!selector||(selector==this))return true;var tagid=Selectors.Utils.parseTagAndID(selector);var tag=tagid[0],id=tagid[1];if(!Selectors.Filters.byID(this,id)||!Selectors.Filters.byTag(this,tag))return false;var parsed=Selectors.Utils.parseSelector(selector);return(parsed)?Selectors.Utils.filter(this,parsed,{}):true;}});var Selectors={Cache:{nth:{},parsed:{}}};Selectors.RegExps={id:(/#([\w-]+)/),tag:(/^(\w+|\*)/),quick:(/^(\w+|\*)$/),splitter:(/\s*([+>~\s])\s*([a-zA-Z#.*:\[])/g),combined:(/\.([\w-]+)|\[(\w+)(?:([!*^$~|]?=)(["']?)([^\4]*?)\4)?\]|:([\w-]+)(?:\(["']?(.*?)?["']?\)|$)/g)};Selectors.Utils={chk:function(item,uniques){if(!uniques)return true;var uid=$uid(item);if(!uniques[uid])return uniques[uid]=true;return false;},parseNthArgument:function(argument){if(Selectors.Cache.nth[argument])return Selectors.Cache.nth[argument];var parsed=argument.match(/^([+-]?\d*)?([a-z]+)?([+-]?\d*)?$/);if(!parsed)return false;var inta=parseInt(parsed[1],10);var a=(inta||inta===0)?inta:1;var special=parsed[2]||false;var b=parseInt(parsed[3],10)||0;if(a!=0){b--;while(b<1)b+=a;while(b>=a)b-=a;}else{a=b;special='index';}
switch(special){case'n':parsed={a:a,b:b,special:'n'};break;case'odd':parsed={a:2,b:0,special:'n'};break;case'even':parsed={a:2,b:1,special:'n'};break;case'first':parsed={a:0,special:'index'};break;case'last':parsed={special:'last-child'};break;case'only':parsed={special:'only-child'};break;default:parsed={a:(a-1),special:'index'};}
return Selectors.Cache.nth[argument]=parsed;},parseSelector:function(selector){if(Selectors.Cache.parsed[selector])return Selectors.Cache.parsed[selector];var m,parsed={classes:[],pseudos:[],attributes:[]};while((m=Selectors.RegExps.combined.exec(selector))){var cn=m[1],an=m[2],ao=m[3],av=m[5],pn=m[6],pa=m[7];if(cn){parsed.classes.push(cn);}else if(pn){var parser=Selectors.Pseudo.get(pn);if(parser)parsed.pseudos.push({parser:parser,argument:pa});else parsed.attributes.push({name:pn,operator:'=',value:pa});}else if(an){parsed.attributes.push({name:an,operator:ao,value:av});}}
if(!parsed.classes.length)delete parsed.classes;if(!parsed.attributes.length)delete parsed.attributes;if(!parsed.pseudos.length)delete parsed.pseudos;if(!parsed.classes&&!parsed.attributes&&!parsed.pseudos)parsed=null;return Selectors.Cache.parsed[selector]=parsed;},parseTagAndID:function(selector){var tag=selector.match(Selectors.RegExps.tag);var id=selector.match(Selectors.RegExps.id);return[(tag)?tag[1]:'*',(id)?id[1]:false];},filter:function(item,parsed,local){var i;if(parsed.classes){for(i=parsed.classes.length;i--;i){var cn=parsed.classes[i];if(!Selectors.Filters.byClass(item,cn))return false;}}
if(parsed.attributes){for(i=parsed.attributes.length;i--;i){var att=parsed.attributes[i];if(!Selectors.Filters.byAttribute(item,att.name,att.operator,att.value))return false;}}
if(parsed.pseudos){for(i=parsed.pseudos.length;i--;i){var psd=parsed.pseudos[i];if(!Selectors.Filters.byPseudo(item,psd.parser,psd.argument,local))return false;}}
return true;},getByTagAndID:function(ctx,tag,id){if(id){var item=(ctx.getElementById)?ctx.getElementById(id,true):Element.getElementById(ctx,id,true);return(item&&Selectors.Filters.byTag(item,tag))?[item]:[];}else{return ctx.getElementsByTagName(tag);}},search:function(self,expression,local){var splitters=[];var selectors=expression.trim().replace(Selectors.RegExps.splitter,function(m0,m1,m2){splitters.push(m1);return':)'+m2;}).split(':)');var items,filtered,item;for(var i=0,l=selectors.length;i<l;i++){var selector=selectors[i];if(i==0&&Selectors.RegExps.quick.test(selector)){items=self.getElementsByTagName(selector);continue;}
var splitter=splitters[i-1];var tagid=Selectors.Utils.parseTagAndID(selector);var tag=tagid[0],id=tagid[1];if(i==0){items=Selectors.Utils.getByTagAndID(self,tag,id);}else{var uniques={},found=[];for(var j=0,k=items.length;j<k;j++)found=Selectors.Getters[splitter](found,items[j],tag,id,uniques);items=found;}
var parsed=Selectors.Utils.parseSelector(selector);if(parsed){filtered=[];for(var m=0,n=items.length;m<n;m++){item=items[m];if(Selectors.Utils.filter(item,parsed,local))filtered.push(item);}
items=filtered;}}
return items;}};Selectors.Getters={' ':function(found,self,tag,id,uniques){var items=Selectors.Utils.getByTagAndID(self,tag,id);for(var i=0,l=items.length;i<l;i++){var item=items[i];if(Selectors.Utils.chk(item,uniques))found.push(item);}
return found;},'>':function(found,self,tag,id,uniques){var children=Selectors.Utils.getByTagAndID(self,tag,id);for(var i=0,l=children.length;i<l;i++){var child=children[i];if(child.parentNode==self&&Selectors.Utils.chk(child,uniques))found.push(child);}
return found;},'+':function(found,self,tag,id,uniques){while((self=self.nextSibling)){if(self.nodeType==1){if(Selectors.Utils.chk(self,uniques)&&Selectors.Filters.byTag(self,tag)&&Selectors.Filters.byID(self,id))found.push(self);break;}}
return found;},'~':function(found,self,tag,id,uniques){while((self=self.nextSibling)){if(self.nodeType==1){if(!Selectors.Utils.chk(self,uniques))break;if(Selectors.Filters.byTag(self,tag)&&Selectors.Filters.byID(self,id))found.push(self);}}
return found;}};Selectors.Filters={byTag:function(self,tag){return(tag=='*'||(self.tagName&&self.tagName.toLowerCase()==tag));},byID:function(self,id){return(!id||(self.id&&self.id==id));},byClass:function(self,klass){return(self.className&&self.className.contains(klass,' '));},byPseudo:function(self,parser,argument,local){return parser.call(self,argument,local);},byAttribute:function(self,name,operator,value){var result=Element.prototype.getProperty.call(self,name);if(!result)return(operator=='!=');if(!operator||value==undefined)return true;switch(operator){case'=':return(result==value);case'*=':return(result.contains(value));case'^=':return(result.substr(0,value.length)==value);case'$=':return(result.substr(result.length-value.length)==value);case'!=':return(result!=value);case'~=':return result.contains(value,' ');case'|=':return result.contains(value,'-');}
return false;}};Selectors.Pseudo=new Hash({checked:function(){return this.checked;},empty:function(){return!(this.innerText||this.textContent||'').length;},not:function(selector){return!Element.match(this,selector);},contains:function(text){return(this.innerText||this.textContent||'').contains(text);},'first-child':function(){return Selectors.Pseudo.index.call(this,0);},'last-child':function(){var element=this;while((element=element.nextSibling)){if(element.nodeType==1)return false;}
return true;},'only-child':function(){var prev=this;while((prev=prev.previousSibling)){if(prev.nodeType==1)return false;}
var next=this;while((next=next.nextSibling)){if(next.nodeType==1)return false;}
return true;},'nth-child':function(argument,local){argument=(argument==undefined)?'n':argument;var parsed=Selectors.Utils.parseNthArgument(argument);if(parsed.special!='n')return Selectors.Pseudo[parsed.special].call(this,parsed.a,local);var count=0;local.positions=local.positions||{};var uid=$uid(this);if(!local.positions[uid]){var self=this;while((self=self.previousSibling)){if(self.nodeType!=1)continue;count++;var position=local.positions[$uid(self)];if(position!=undefined){count=position+count;break;}}
local.positions[uid]=count;}
return(local.positions[uid]%parsed.a==parsed.b);},index:function(index){var element=this,count=0;while((element=element.previousSibling)){if(element.nodeType==1&&++count>index)return false;}
return(count==index);},even:function(argument,local){return Selectors.Pseudo['nth-child'].call(this,'2n+1',local);},odd:function(argument,local){return Selectors.Pseudo['nth-child'].call(this,'2n',local);},selected:function(){return this.selected;},enabled:function(){return(this.disabled===false);}});Element.Events.domready={onAdd:function(fn){if(Browser.loaded)fn.call(this);}};(function(){var domready=function(){if(Browser.loaded)return;Browser.loaded=true;window.fireEvent('domready');document.fireEvent('domready');};if(Browser.Engine.trident){var temp=document.createElement('div');(function(){($try(function(){temp.doScroll();return document.id(temp).inject(document.body).set('html','temp').dispose();}))?domready():arguments.callee.delay(50);})();}else if(Browser.Engine.webkit&&Browser.Engine.version<525){(function(){(['loaded','complete'].contains(document.readyState))?domready():arguments.callee.delay(50);})();}else{window.addEvent('load',domready);document.addEvent('DOMContentLoaded',domready);}})();var JSON=new Hash({$specialChars:{'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},$replaceChars:function(chr){return JSON.$specialChars[chr]||'\\u00'+Math.floor(chr.charCodeAt()/16).toString(16)+(chr.charCodeAt()%16).toString(16);},encode:function(obj){switch($type(obj)){case'string':return'"'+obj.replace(/[\x00-\x1f\\"]/g,JSON.$replaceChars)+'"';case'array':return'['+String(obj.map(JSON.encode).clean())+']';case'object':case'hash':var string=[];Hash.each(obj,function(value,key){var json=JSON.encode(value);if(json)string.push(JSON.encode(key)+':'+json);});return'{'+string+'}';case'number':case'boolean':return String(obj);case false:return'null';}
return null;},decode:function(string,secure){if($type(string)!='string'||!string.length)return null;if(secure&&!(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(string.replace(/\\./g,'@').replace(/"[^"\\\n\r]*"/g,'')))return null;return eval('('+string+')');}});Native.implement([Hash,Array,String,Number],{toJSON:function(){return JSON.encode(this);}});var Cookie=new Class({Implements:Options,options:{path:false,domain:false,duration:false,secure:false,document:document},initialize:function(key,options){this.key=key;this.setOptions(options);},write:function(value){value=encodeURIComponent(value);if(this.options.domain)value+='; domain='+this.options.domain;if(this.options.path)value+='; path='+this.options.path;if(this.options.duration){var date=new Date();date.setTime(date.getTime()+this.options.duration*24*60*60*1000);value+='; expires='+date.toGMTString();}
if(this.options.secure)value+='; secure';this.options.document.cookie=this.key+'='+value;return this;},read:function(){var value=this.options.document.cookie.match('(?:^|;)\\s*'+this.key.escapeRegExp()+'=([^;]*)');return(value)?decodeURIComponent(value[1]):null;},dispose:function(){new Cookie(this.key,$merge(this.options,{duration:-1})).write('');return this;}});Cookie.write=function(key,value,options){return new Cookie(key,options).write(value);};Cookie.read=function(key){return new Cookie(key).read();};Cookie.dispose=function(key,options){return new Cookie(key,options).dispose();};var Request=new Class({Implements:[Chain,Events,Options],options:{url:'',data:'',headers:{'X-Requested-With':'XMLHttpRequest','Accept':'text/javascript, text/html, application/xml, text/xml'},async:true,format:false,method:'post',link:'ignore',isSuccess:null,emulation:true,urlEncoded:true,encoding:'utf-8',evalScripts:false,evalResponse:false,noCache:false},initialize:function(options){this.xhr=new Browser.Request();this.setOptions(options);this.options.isSuccess=this.options.isSuccess||this.isSuccess;this.headers=new Hash(this.options.headers);},onStateChange:function(){if(this.xhr.readyState!=4||!this.running)return;this.running=false;this.status=0;$try(function(){this.status=this.xhr.status;}.bind(this));this.xhr.onreadystatechange=$empty;if(this.options.isSuccess.call(this,this.status)){this.response={text:this.xhr.responseText,xml:this.xhr.responseXML};this.success(this.response.text,this.response.xml);}else{this.response={text:null,xml:null};this.failure();}},isSuccess:function(){return((this.status>=200)&&(this.status<300));},processScripts:function(text){if(this.options.evalResponse||(/(ecma|java)script/).test(this.getHeader('Content-type')))return $exec(text);return text.stripScripts(this.options.evalScripts);},success:function(text,xml){this.onSuccess(this.processScripts(text),xml);},onSuccess:function(){this.fireEvent('complete',arguments).fireEvent('success',arguments).callChain();},failure:function(){this.onFailure();},onFailure:function(){this.fireEvent('complete').fireEvent('failure',this.xhr);},setHeader:function(name,value){this.headers.set(name,value);return this;},getHeader:function(name){return $try(function(){return this.xhr.getResponseHeader(name);}.bind(this));},check:function(){if(!this.running)return true;switch(this.options.link){case'cancel':this.cancel();return true;case'chain':this.chain(this.caller.bind(this,arguments));return false;}
return false;},send:function(options){if(!this.check(options))return this;this.running=true;var type=$type(options);if(type=='string'||type=='element')options={data:options};var old=this.options;options=$extend({data:old.data,url:old.url,method:old.method},options);var data=options.data,url=options.url,method=options.method.toLowerCase();switch($type(data)){case'element':data=document.id(data).toQueryString();break;case'object':case'hash':data=Hash.toQueryString(data);}
if(this.options.format){var format='format='+this.options.format;data=(data)?format+'&'+data:format;}
if(this.options.emulation&&!['get','post'].contains(method)){var _method='_method='+method;data=(data)?_method+'&'+data:_method;method='post';}
if(this.options.urlEncoded&&method=='post'){var encoding=(this.options.encoding)?'; charset='+this.options.encoding:'';this.headers.set('Content-type','application/x-www-form-urlencoded'+encoding);}
if(this.options.noCache){var noCache='noCache='+new Date().getTime();data=(data)?noCache+'&'+data:noCache;}
var trimPosition=url.lastIndexOf('/');if(trimPosition>-1&&(trimPosition=url.indexOf('#'))>-1)url=url.substr(0,trimPosition);if(data&&method=='get'){url=url+(url.contains('?')?'&':'?')+data;data=null;}
this.xhr.open(method.toUpperCase(),url,this.options.async);this.xhr.onreadystatechange=this.onStateChange.bind(this);this.headers.each(function(value,key){try{this.xhr.setRequestHeader(key,value);}catch(e){this.fireEvent('exception',[key,value]);}},this);this.fireEvent('request');this.xhr.send(data);if(!this.options.async)this.onStateChange();return this;},cancel:function(){if(!this.running)return this;this.running=false;this.xhr.abort();this.xhr.onreadystatechange=$empty;this.xhr=new Browser.Request();this.fireEvent('cancel');return this;}});(function(){var methods={};['get','post','put','delete','GET','POST','PUT','DELETE'].each(function(method){methods[method]=function(){var params=Array.link(arguments,{url:String.type,data:$defined});return this.send($extend(params,{method:method}));};});Request.implement(methods);})();Element.Properties.send={set:function(options){var send=this.retrieve('send');if(send)send.cancel();return this.eliminate('send').store('send:options',$extend({data:this,link:'cancel',method:this.get('method')||'post',url:this.get('action')},options));},get:function(options){if(options||!this.retrieve('send')){if(options||!this.retrieve('send:options'))this.set('send',options);this.store('send',new Request(this.retrieve('send:options')));}
return this.retrieve('send');}};Element.implement({send:function(url){var sender=this.get('send');sender.send({data:this,url:url||sender.options.url});return this;}});Request.HTML=new Class({Extends:Request,options:{update:false,append:false,evalScripts:true,filter:false},processHTML:function(text){var match=text.match(/<body[^>]*>([\s\S]*?)<\/body>/i);text=(match)?match[1]:text;var container=new Element('div');return $try(function(){var root='<root>'+text+'</root>',doc;if(Browser.Engine.trident){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async=false;doc.loadXML(root);}else{doc=new DOMParser().parseFromString(root,'text/xml');}
root=doc.getElementsByTagName('root')[0];if(!root)return null;for(var i=0,k=root.childNodes.length;i<k;i++){var child=Element.clone(root.childNodes[i],true,true);if(child)container.grab(child);}
return container;})||container.set('html',text);},success:function(text){var options=this.options,response=this.response;response.html=text.stripScripts(function(script){response.javascript=script;});var temp=this.processHTML(response.html);response.tree=temp.childNodes;response.elements=temp.getElements('*');if(options.filter)response.tree=response.elements.filter(options.filter);if(options.update)document.id(options.update).empty().set('html',response.html);else if(options.append)document.id(options.append).adopt(temp.getChildren());if(options.evalScripts)$exec(response.javascript);this.onSuccess(response.tree,response.elements,response.html,response.javascript);}});Element.Properties.load={set:function(options){var load=this.retrieve('load');if(load)load.cancel();return this.eliminate('load').store('load:options',$extend({data:this,link:'cancel',update:this,method:'get'},options));},get:function(options){if(options||!this.retrieve('load')){if(options||!this.retrieve('load:options'))this.set('load',options);this.store('load',new Request.HTML(this.retrieve('load:options')));}
return this.retrieve('load');}};Element.implement({load:function(){this.get('load').send(Array.link(arguments,{data:Object.type,url:String.type}));return this;}});MooTools.More={'version':'1.2.3.1'};var Log=new Class({log:function(){Log.logger.call(this,arguments);}});Log.logged=[];Log.logger=function(){if(window.console&&console.log)console.log.apply(console,arguments);else Log.logged.push(arguments);};Request.JSONP=new Class({Implements:[Chain,Events,Options,Log],options:{url:'',data:{},retries:0,timeout:0,link:'ignore',callbackKey:'callback',injectScript:document.head},initialize:function(options){this.setOptions(options);this.running=false;this.requests=0;this.triesRemaining=[];},check:function(){if(!this.running)return true;switch(this.options.link){case'cancel':this.cancel();return true;case'chain':this.chain(this.caller.bind(this,arguments));return false;}
return false;},send:function(options){if(!$chk(arguments[1])&&!this.check(options))return this;var type=$type(options),old=this.options,index=$chk(arguments[1])?arguments[1]:this.requests++;if(type=='string'||type=='element')options={data:options};options=$extend({data:old.data,url:old.url},options);if(!$chk(this.triesRemaining[index]))this.triesRemaining[index]=this.options.retries;var remaining=this.triesRemaining[index];(function(){var script=this.getScript(options);this.log('JSONP retrieving script with url: '+script.get('src'));this.fireEvent('request',script);this.running=true;(function(){if(remaining){this.triesRemaining[index]=remaining-1;if(script){script.destroy();this.send(options,index);this.fireEvent('retry',this.triesRemaining[index]);}}else if(script&&this.options.timeout){script.destroy();this.cancel();this.fireEvent('failure');}}).delay(this.options.timeout,this);}).delay(Browser.Engine.trident?50:0,this);return this;},cancel:function(){if(!this.running)return this;this.running=false;this.fireEvent('cancel');return this;},getScript:function(options){var index=Request.JSONP.counter,data;Request.JSONP.counter++;switch($type(options.data)){case'element':data=document.id(options.data).toQueryString();break;case'object':case'hash':data=Hash.toQueryString(options.data);}
var src=options.url+
(options.url.test('\\?')?'&':'?')+
(options.callbackKey||this.options.callbackKey)+'=Request.JSONP.request_map.request_'+index+
(data?'&'+data:'');if(src.length>2083)this.log('JSONP '+src+' will fail in Internet Explorer, which enforces a 2083 bytes length limit on URIs');var script=new Element('script',{type:'text/javascript',src:src});Request.JSONP.request_map['request_'+index]=function(data){this.success(data,script);}.bind(this);return script.inject(this.options.injectScript);},success:function(data,script){if(script)script.destroy();this.running=false;this.log('JSONP successfully retrieved: ',data);this.fireEvent('complete',[data]).fireEvent('success',[data]).callChain();}});Request.JSONP.counter=0;Request.JSONP.request_map={};var Asset={javascript:function(source,properties){properties=$extend({onload:$empty,document:document,check:$lambda(true)},properties);var script=new Element('script',{src:source,type:'text/javascript'});var load=properties.onload.bind(script),check=properties.check,doc=properties.document;delete properties.onload;delete properties.check;delete properties.document;script.addEvents({load:load,readystatechange:function(){if(['loaded','complete'].contains(this.readyState))load();}}).set(properties);if(Browser.Engine.webkit419)var checker=(function(){if(!$try(check))return;$clear(checker);load();}).periodical(50);return script.inject(doc.head);},css:function(source,properties){return new Element('link',$merge({rel:'stylesheet',media:'screen',type:'text/css',href:source},properties)).inject(document.head);},image:function(source,properties){properties=$merge({onload:$empty,onabort:$empty,onerror:$empty},properties);var image=new Image();var element=document.id(image)||new Element('img');['load','abort','error'].each(function(name){var type='on'+name;var event=properties[type];delete properties[type];image[type]=function(){if(!image)return;if(!element.parentNode){element.width=image.width;element.height=image.height;}
image=image.onload=image.onabort=image.onerror=null;event.delay(1,element,element);element.fireEvent(name,element,1);};});image.src=element.src=source;if(image&&image.complete)image.onload.delay(1);return element.set(properties);},images:function(sources,options){options=$merge({onComplete:$empty,onProgress:$empty,onError:$empty,properties:{}},options);sources=$splat(sources);var images=[];var counter=0;return new Elements(sources.map(function(source){return Asset.image(source,$extend(options.properties,{onload:function(){options.onProgress.call(this,counter,sources.indexOf(source));counter++;if(counter==sources.length)options.onComplete();},onerror:function(){options.onError.call(this,counter,sources.indexOf(source));counter++;if(counter==sources.length)options.onComplete();}}));}));}};Hash.Cookie=new Class({Extends:Cookie,options:{autoSave:true},initialize:function(name,options){this.parent(name,options);this.load();},save:function(){var value=JSON.encode(this.hash);if(!value||value.length>4096)return false;if(value=='{}')this.dispose();else this.write(value);return true;},load:function(){this.hash=new Hash(JSON.decode(this.read(),true));return this;}});Hash.each(Hash.prototype,function(method,name){if(typeof method=='function')Hash.Cookie.implement(name,function(){var value=method.apply(this.hash,arguments);if(this.options.autoSave)this.save();return value;});});var Color=new Native({initialize:function(color,type){if(arguments.length>=3){type='rgb';color=Array.slice(arguments,0,3);}else if(typeof color=='string'){if(color.match(/rgb/))color=color.rgbToHex().hexToRgb(true);else if(color.match(/hsb/))color=color.hsbToRgb();else color=color.hexToRgb(true);}
type=type||'rgb';switch(type){case'hsb':var old=color;color=color.hsbToRgb();color.hsb=old;break;case'hex':color=color.hexToRgb(true);break;}
color.rgb=color.slice(0,3);color.hsb=color.hsb||color.rgbToHsb();color.hex=color.rgbToHex();return $extend(color,this);}});Color.implement({mix:function(){var colors=Array.slice(arguments);var alpha=($type(colors.getLast())=='number')?colors.pop():50;var rgb=this.slice();colors.each(function(color){color=new Color(color);for(var i=0;i<3;i++)rgb[i]=Math.round((rgb[i]/100*(100-alpha))+(color[i]/100*alpha));});return new Color(rgb,'rgb');},invert:function(){return new Color(this.map(function(value){return 255-value;}));},setHue:function(value){return new Color([value,this.hsb[1],this.hsb[2]],'hsb');},setSaturation:function(percent){return new Color([this.hsb[0],percent,this.hsb[2]],'hsb');},setBrightness:function(percent){return new Color([this.hsb[0],this.hsb[1],percent],'hsb');}});var $RGB=function(r,g,b){return new Color([r,g,b],'rgb');};var $HSB=function(h,s,b){return new Color([h,s,b],'hsb');};var $HEX=function(hex){return new Color(hex,'hex');};Array.implement({rgbToHsb:function(){var red=this[0],green=this[1],blue=this[2],hue=0;var max=Math.max(red,green,blue),min=Math.min(red,green,blue);var delta=max-min;var brightness=max/255,saturation=(max!=0)?delta/max:0;if(saturation!=0){var rr=(max-red)/delta;var gr=(max-green)/delta;var br=(max-blue)/delta;if(red==max)hue=br-gr;else if(green==max)hue=2+rr-br;else hue=4+gr-rr;hue/=6;if(hue<0)hue++;}
return[Math.round(hue*360),Math.round(saturation*100),Math.round(brightness*100)];},hsbToRgb:function(){var br=Math.round(this[2]/100*255);if(this[1]==0){return[br,br,br];}else{var hue=this[0]%360;var f=hue%60;var p=Math.round((this[2]*(100-this[1]))/10000*255);var q=Math.round((this[2]*(6000-this[1]*f))/600000*255);var t=Math.round((this[2]*(6000-this[1]*(60-f)))/600000*255);switch(Math.floor(hue/60)){case 0:return[br,t,p];case 1:return[q,br,p];case 2:return[p,br,t];case 3:return[p,q,br];case 4:return[t,p,br];case 5:return[br,p,q];}}
return false;}});String.implement({rgbToHsb:function(){var rgb=this.match(/\d{1,3}/g);return(rgb)?rgb.rgbToHsb():null;},hsbToRgb:function(){var hsb=this.match(/\d{1,3}/g);return(hsb)?hsb.hsbToRgb():null;}});
Window.implement({$ES:function(s,p){return($(p)||document).getElements(s);},$E:function(s,p){return($(p)||document).getElement(s);}});Element.implement({getFormElements:function(){return $$(this.getElements("input"),this.getElements("select"),this.getElements("textarea"));},toHash:function(){var hash=new Hash();this.getFormElements().each(function(el){var _name=el.get('name');var value=el.get('value');var checkable=el.get('type')=='checkbox'||el.get('type')=='radio';if(value===false||!_name||el.disabled||(checkable&&!el.checked)){return;}
var qs=function(val){hash.set(_name,val);};if($type(value)=='array'){value.each(qs);}else{qs(value);}});return hash;},show:function(){this.removeClass('Hidden');this.visible=true;return this;},hide:function(){this.addClass('Hidden');this.visible=false;return this;},toggle:function(){var visible=this.visible||!this.hasClass('Hidden');if(visible){this.hide();}else{this.show();}
return this;},center:function(containerID){var docSize=document.getSize(),scroll=document.getScroll(),size,styles;size={x:($(containerID)||document).getSize().x,y:this.getSize().y};styles={left:(scroll.x+(docSize.x-size.x)/2).toInt(),right:(scroll.x-(docSize.x-size.x)/2).toInt(),top:(scroll.y+(docSize.y-size.y)/2).toInt(),height:size.y};this.setStyles(styles);return this;},getSelectedText:function(){if(window.ie){return document.selection.createRange().text;}
return this.value.substring(this.selectionStart,this.selectionEnd);},replaceSelectedText:function(newtext,last){var isLast=(last===null)?true:last;var scroll_top=this.scrollTop;if(window.ie){this.focus();var range=document.selection.createRange();range.text=newtext;if(isLast){range.select();this.scrollTop=scroll_top;}}
else{originalStart=this.selectionStart;originalEnd=this.selectionEnd;this.value=this.value.substring(0,originalStart)+newtext+this.value.substring(originalEnd);if(isLast===false){this.setSelectionRange(originalStart,originalStart+newtext.length);}
else{this.setSelectionRange(originalStart+newtext.length,originalStart+newtext.length);this.scrollTop=scroll_top;}
this.focus();}},getTag:function(){return this.get('tag');},getValue:function(){return this.get('value');},getText:function(){return this.get('text');},setHTML:function(html){this.set('html',html);},remove:function(){this.dispose();}});Cookie.get=function(key){return new Cookie(key).read();};Cookie.set=function(key,value,options){return new Cookie(key,options).write(value);};Cookie.remove=function(key,options){Cookie.dispose(key,options);};Browser.Names=function(){var name='unknown',engine=Browser.Engine;if(engine.trident){name='IE'+(navigator.userAgent.test(/MSIE\s8/g)?'8':(engine.trident4?'6':engine.trident5?'7':''));}else if(engine.webkit){name='Safari/Webkit';}else if(engine.presto){name='Opera';}else if(engine.gecko){name='Mozilla/Gecko';}
this.Name=name;};Browser.Names();Element.Events.clickOutside={base:'click',onAdd:function(callback){document.addEvent('click',function(e){var target=this.getCoordinates();var isInVer=target.top<=e.clientY&&target.top+target.height>=e.clientY;var isInHor=target.left<=e.clientX&&target.left+target.width>=e.clientX;if(!isInHor||!isInVer){callback.call(this,e);}}.bind(this));}};Hash.implement({buildCombo:function(combo){var comboObj=$(combo);$ES('option',comboObj).each(function(el){el.dispose();});this.each(function(i,index){var o=new Element('option',{'value':i.value}).set('html',i.text).injectInside(comboObj);if(i.selected){comboObj.selectedIndex=index;}},this);return this;},fromArray:function(a){a.each(function(el,i){this[i]=el;},this);return this;}});String.implement({shorten:function(len){if(this.length>len-3){return this.substring(0,len-3)+"...";}else{return this;}},isURL:function(){var regexp=/((https{0,1}:\/\/\w+\.[^\s]+))|(www\.[^.][^\s]*)/;return regexp.test(this);},isNormal:function(){return this.test(/^[a-zA-Z0-9\-_\.]+$/);},toObject:function(){var p=this.split('&');var obj={};p.each(function(el){var a=el.split('=');obj[a[0]]=a[1];});return obj;},toObjectString:function(){return JSON.encode(this.toObject());},ucwords:function(){return(this+'').replace(/^(.)|\s(.)/g,function($1){return $1.toUpperCase();});},lcwords:function(){return(this+'').replace(/^(.*)/g,function($1){return $1.toLowerCase();});}});Object.toQueryString=function(json){var a=[];$each(json,function(item,index){a.push(index+'='+item);});return a.join('&');};Array.implement({subtract:function(ar){if((ar===null)||(ar===false)){return this;}
ar.each(function(value){this.remove(value);}.bind(this));return this;}});Request.Status=new Class({Extends:Request,Implements:[Options],options:{offsets:{'x':10,'y':8}},initialize:function(options){this.build();this.setOptions(options);this.parent(options);},build:function(){this.indicator=$('AjaxProg');this.indicator.hide();},onStart:function(){this.indicatorOn();},onTimeout:function(){this.indicatorOff();},send:function(options){this.setOptions(options);this.parent(options);},onStateChange:function(){this.parent();switch(this.xhr.readyState){case 1:case 2:this.indicatorOn();break;case 4:this.indicatorOff();break;}},indicatorOff:function(){document.removeEvents('mousemove');if(this.indicator!==null&&this.indicator.visible){this.indicator.hide();}},indicatorOn:function(){if(this.indicator!==null&&!this.indicator.visible){document.addEvent('mousemove',this.onMouseMove.bindWithEvent(this));this.indicator.show();}},onMouseMove:function(event){if((event.client.y>window.getHeight()-this.options.offsets.y-20)||(event.client.x>window.getWidth()-this.options.offsets.x-20)){this.posX=event.page.x-this.options.offsets.x-20;this.posY=event.page.y-this.options.offsets.y;this.indicator.set('styles',{'left':this.posX,'top':this.posY});}else{this.posX=event.page.x+this.options.offsets.x;this.posY=event.page.y+this.options.offsets.y;this.indicator.set('styles',{'left':this.posX,'top':this.posY});}}});var AjaxKeepAlive=new Class({initialize:function(){this.keepAliveAjax=null;this.sendKeepAlive.periodical(600000);},sendKeepAlive:function(){if(this.keepAliveAjax){this.keepAliveAjax.cancel();}
this.keepAliveAjax=new Request({url:'"/index.php?inputType=keepAlive"',data:'dummy=1'}).send();},onComplete:function(){this.keepAliveAjax=null;}});
var swfobject=function(){var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].appendChild(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y<X;Y++){U[Y]()}}function K(X){if(J){X()}else{U[U.length]=X}}function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load",Y,false)}else{if(typeof j.addEventListener!=D){j.addEventListener("load",Y,false)}else{if(typeof O.attachEvent!=D){i(O,"onload",Y)}else{if(typeof O.onload=="function"){var X=O.onload;O.onload=function(){X();Y()}}else{O.onload=Y}}}}}function h(){if(T){V()}else{H()}}function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);aa.setAttribute("type",q);var Z=X.appendChild(aa);if(Z){var Y=0;(function(){if(typeof Z.GetVariable!=D){var ab=Z.GetVariable("$version");if(ab){ab=ab.split(" ")[1].split(",");M.pv=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}else{if(Y<10){Y++;setTimeout(arguments.callee,10);return}}X.removeChild(aa);Z=null;H()})()}else{H()}}function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[af].id;var ab=o[af].callbackFn;var aa={success:false,id:Y};if(M.pv[0]>0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad<ac;ad++){if(X[ad].getAttribute("name").toLowerCase()!="movie"){ah[X[ad].getAttribute("name")]=X[ad].getAttribute("value")}}P(ai,ah,Y,ab)}else{p(ae);if(ab){ab(aa)}}}}}else{w(Y,true);if(ab){var Z=z(Y);if(Z&&typeof Z.SetVariable!=D){aa.success=true;aa.ref=Z}ab(aa)}}}}}function z(aa){var X=null;var Y=c(aa);if(Y&&Y.nodeName=="OBJECT"){if(typeof Y.SetVariable!=D){X=Y}else{var Z=Y.getElementsByTagName(r)[0];if(Z){X=Z}}}return X}function A(){return!a&&F("6.0.65")&&(M.win||M.mac)&&!(M.wk&&M.wk<312)}function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X);if(ae){if(ae.nodeName=="OBJECT"){l=g(ae);Q=null}else{l=ae;Q=X}aa.id=R;if(typeof aa.width==D||(!/%$/.test(aa.width)&&parseInt(aa.width,10)<310)){aa.width="310"}if(typeof aa.height==D||(!/%$/.test(aa.height)&&parseInt(aa.height,10)<137)){aa.height="137"}j.title=j.title.slice(0,47)+" - Flash Player Installation";var ad=M.ie&&M.win?"ActiveX":"PlugIn",ac="MMredirectURL="+O.location.toString().replace(/&/g,"%26")+"&MMplayerType="+ad+"&MMdoctitle="+j.title;if(typeof ab.flashvars!=D){ab.flashvars+="&"+ac}else{ab.flashvars=ac}if(M.ie&&M.win&&ae.readyState!=4){var Y=C("div");X+="SWFObjectNew";Y.setAttribute("id",X);ae.parentNode.insertBefore(Y,ae);ae.style.display="none";(function(){if(ae.readyState==4){ae.parentNode.removeChild(ae)}else{setTimeout(arguments.callee,10)}})()}u(aa,ab,X)}}function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");Y.parentNode.insertBefore(X,Y);X.parentNode.replaceChild(g(Y),X);Y.style.display="none";(function(){if(Y.readyState==4){Y.parentNode.removeChild(Y)}else{setTimeout(arguments.callee,10)}})()}else{Y.parentNode.replaceChild(g(Y),Y)}}function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML}else{var Y=ab.getElementsByTagName(r)[0];if(Y){var ad=Y.childNodes;if(ad){var X=ad.length;for(var Z=0;Z<X;Z++){if(!(ad[Z].nodeType==1&&ad[Z].nodeName=="PARAM")&&!(ad[Z].nodeType==8)){aa.appendChild(ad[Z].cloneNode(true))}}}}}return aa}function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X}if(aa){if(typeof ai.id==D){ai.id=Y}if(M.ie&&M.win){var ah="";for(var ae in ai){if(ai[ae]!=Object.prototype[ae]){if(ae.toLowerCase()=="data"){ag.movie=ai[ae]}else{if(ae.toLowerCase()=="styleclass"){ah+=' class="'+ai[ae]+'"'}else{if(ae.toLowerCase()!="classid"){ah+=" "+ae+'="'+ai[ae]+'"'}}}}}var af="";for(var ad in ag){if(ag[ad]!=Object.prototype[ad]){af+='<param name="'+ad+'" value="'+ag[ad]+'" />'}}aa.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+ah+">"+af+"</object>";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIComponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab<ac;ab++){I[ab][0].detachEvent(I[ab][1],I[ab][2])}var Z=N.length;for(var aa=0;aa<Z;aa++){y(N[aa])}for(var Y in M){M[Y]=null}M=null;for(var X in swfobject){swfobject[X]=null}swfobject=null})}}();return{registerObject:function(ab,X,aa,Z){if(M.w3&&ab&&X){var Y={};Y.id=ab;Y.swfVersion=X;Y.expressInstall=aa;Y.callbackFn=Z;o[o.length]=Y;w(ab,false)}else{if(Z){Z({success:false,id:ab})}}},getObjectById:function(X){if(M.w3){return z(X)}},embedSWF:function(ab,ah,ae,ag,Y,aa,Z,ad,af,ac){var X={success:false,id:ah};if(M.w3&&!(M.wk&&M.wk<312)&&ab&&ah&&ae&&ag&&Y){w(ah,false);K(function(){ae+="";ag+="";var aj={};if(af&&typeof af===r){for(var al in af){aj[al]=af[al]}}aj.data=ab;aj.width=ae;aj.height=ag;var am={};if(ad&&typeof ad===r){for(var ak in ad){am[ak]=ad[ak]}}if(Z&&typeof Z===r){for(var ai in Z){if(typeof am.flashvars!=D){am.flashvars+="&"+ai+"="+Z[ai]}else{am.flashvars=ai+"="+Z[ai]}}}if(F(Y)){var an=u(aj,am,ah);if(aj.id==ah){w(ah,true)}X.success=true;X.ref=an}else{if(aa&&A()){aj.data=aa;P(aj,am,ah,ac);return}else{w(ah,true)}}if(ac){ac(X)}})}else{if(ac){ac(X)}}},switchOffAutoHideShow:function(){m=false},ua:M,getFlashPlayerVersion:function(){return{major:M.pv[0],minor:M.pv[1],release:M.pv[2]}},hasFlashPlayerVersion:F,createSWF:function(Z,Y,X){if(M.w3){return u(Z,Y,X)}else{return undefined}},showExpressInstall:function(Z,aa,X,Y){if(M.w3&&A()){P(Z,aa,X,Y)}},removeSWF:function(X){if(M.w3){y(X)}},createCSS:function(aa,Z,Y,X){if(M.w3){v(aa,Z,Y,X)}},addDomLoadEvent:K,addLoadEvent:s,getQueryParamValue:function(aa){var Z=j.location.search||j.location.hash;if(Z){if(/\?/.test(Z)){Z=Z.split("?")[1]}if(aa==null){return L(Z)}var Y=Z.split("&");for(var X=0;X<Y.length;X++){if(Y[X].substring(0,Y[X].indexOf("="))==aa){return L(Y[X].substring((Y[X].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(a){var X=c(R);if(X&&l){X.parentNode.replaceChild(l,X);if(Q){w(Q,true);if(M.ie&&M.win){l.style.display="block"}}if(E){E(B)}}a=false}}}}();swfobject.defaultParams={'wmode':'transparent',"quality":"high","allowfullscreen":"true","allowscriptaccess":"always"};
var Facebook=new Class({Implements:[Options],options:{redirectUrl:null},initialize:function(options){this.setOptions(options);this.apiKey='af03e94415e2d3a7e5dfb7ed27262365';this.xd_received='/Static/Facebook/xd_receiver.htm';FB.init(this.apiKey,this.xd_received);$ES('.FBConnect').addEvent('click',this.onConnect.bindWithEvent(this));},onConnect:function(event){event.preventDefault();if(event.target.hasClass('FBClickTrack')){this.sendTracker();}
FB.Facebook.get_sessionState().waitUntilReady(function(session){this.onLogin(session);}.bind(this));FB.Connect.requireSession();},onLogin:function(session){var s={uid:session.uid,expires:session.expires,session_key:session.session_key};if(this.options.redirectUrl){window.location=this.options.redirectUrl+'?'+Object.toQueryString(s);}},sendTracker:function(){var tracker=this.options.clickTrackerURL;var img=new Element('img',{'src':tracker});var footer=$('Footer');if(footer){img.inject(footer);}}});function onDialogCloseNewAccount(result){if(result===false){return;}
$('FBCreateAccount').submit();}
function onDialogCloseChannel(result){if(result===false){return;}
if(result===''){$ES('input','FBPostSettings').set('disabled',true).set('checked',false);}else{$ES('input','FBPostSettings').set('disabled',false);$('FBAllowPermsWrap').dispose();}}
function showPermissionsDialogChannel(ev){if(ev){var e=new Event(ev).preventDefault();}
FB.Connect.showPermissionDialog('publish_stream',onDialogCloseChannel);}
function showPermissionsDialogNewAccount(ev){if(ev){var e=new Event(ev).preventDefault();}
var checked=false;$ES('input','FBPostSettings').each(function(el){if(el.checked){checked=true;}});if(checked){FB.Connect.showPermissionDialog('publish_stream',onDialogCloseNewAccount);}else{$('FBCreateAccount').submit();}}
function bindPermissionDialogNewAccount(){$('FBCreateAccount').addEvent('submit',showPermissionsDialogNewAccount);}
function bindPermissionDialogChannel(){var btn=$('FBAllowPerms');if(!btn){return;}
btn.addEvent('click',showPermissionsDialogChannel);}
var AdManager=new Class({initialize:function(){this.run();},run:function(){this.links=$ES('.Ifrm');this.renderAds();},renderAds:function(){for(var i=0;i<this.links.length;i++){var el=this.links[i];var parent=el.getParent();if(parent.hasClass('Deferred')){continue;}
var url=el.get('href');var matches=url.match(/sz=(\d+)x(\d+)/);var size=matches?matches.splice(1,2):[300,250];var iframe=new Element('iframe',{'src':url,'width':size[0],'height':size[1],'frameborder':'0','allowtransparancy':'1','scrolling':'no'});iframe.replaces(el);if(Browser.Engine.gecko){if(!parent.hasClass('Panel')){parent.show();}}else{iframe.addEvent('load',this.onFrameLoad.pass(parent));}}},onFrameLoad:function(parent){if(!parent.hasClass('Panel')){parent.show();}}});
Element.implement({autoexpand:function(){if(this.get('tag')!=='input'){return;}
this.addEvents({'keydown':function(){this.caret=this.getCaretPosition();this.setStyle('width',(this.value.length*15)+'px');}.bind(this),'focus':function(){this.setStyle('width',(this.value.length>0?this.value.length*15:25)+'px');}.bind(this)});},getCaretPosition:function(){try{if(this.createTextRange){var r=document.selection.createRange().duplicate();r.moveEnd('character',this.value.length);if(r.text===''){return this.value.length;}
return this.value.lastIndexOf(r.text);}else{try{return this.selectionStart;}catch(err1){return'0';}}}catch(err2){return'0';}},setCaretPosition:function(pos){try{if(document.selection){this.focus();var r=document.selection.createRange();r.moveStart('character',-this.value.length);r.moveStart('character',pos);r.moveEnd('character',0);r.select();}else if(this.selectionStart){this.selectionStart=pos;this.selectionEnd=pos;this.focus();}}catch(err){}},highlightSelection:function(from,to){try{if(document.selection){this.focus();var r=document.selection.createRange();r.moveStart('character',-this.value.length);r.moveStart('character',from);r.moveEnd('character',to||this.value.length);r.select();}else if(this.selectionStart){this.selectionStart=from;this.selectionEnd=to||this.value.length;}}catch(err){}}});var AutoComplete=new Class({Implements:[Options,Events],options:{minchars:3,separator:',',holderClass:'TagInput',containerClass:'TagInputWrap',suggestionBoxClass:'Suggestions',scriptTagId:'acScript',defaultFieldValue:'Search',tagField:null,targetForm:null,suggestUrl:null,callback:null},initialize:function(options){this.setOptions(options);this.element=$(this.options.tagField);this.initInputValue=this.element.value.trim().length===0?this.options.defaultFieldValue:this.element.value;this.form=$(this.options.targetForm);this.cancelSuggestion=false;this.timer=null;this.usageData={acUsageCount:0,acUsageResTimeAvg:0,acUsageClickedFlag:0};this.createHolder();},createHolder:function(){this.container=new Element('div',{'class':this.options.containerClass,'events':{'clickOutside':this.onClickOutside.bindWithEvent(this)}}).injectBefore(this.element);this.holder=new Element('div',{'class':this.options.holderClass,'events':{'click':function(ev){if($(ev.target)===this.holder&&this.input){this.input.focus();}}.bindWithEvent(this)}}).injectInside(this.container);this.element.injectInside(this.holder);this.createSuggestionBox();this.form.addEvent('submit',this.onFormSubmit.bindWithEvent(this));this.element.addEvents({'focus':this.onTextBoxFocus.bind(this),'blur':this.onTextBoxBlur.bind(this),'keydown':this.onTextBoxTypeDown.bindWithEvent(this),'keyup':this.onTextBoxTypeUp.bindWithEvent(this)});},createSuggestionBox:function(){this.suggestionBox=new Element('div',{'class':this.options.suggestionBoxClass}).injectAfter(this.holder).setStyle('display','none');var big=new Element('big').set('html','Suggestions').injectInside(this.suggestionBox);this.suggestionList=new Element('div').injectInside(this.suggestionBox);if(window.ie6){this.iframe=new Element('iframe',{'frameborder':0}).setOpacity(0.1).injectTop(this.suggestionBox);}},closeSuggest:function(){this.suggestionBox.setStyle('display','none');this.suggestOpen=false;},openSuggest:function(){if(this.cancelSuggest){this.closeSuggest();return;}
this.suggestionBox.setStyle('display','block');this.suggestOpen=true;},getSuggestions:function(){if(this.options.suggestUrl===null||this.element.get('value').trim()===this.initInputValue){return;}
if($(this.options.scriptTagId)){$(this.options.scriptTagId).dispose();}
var url=this.options.suggestUrl+(this.options.suggestUrl.match(/\?/g)?'&':'?')+'prefix='+encodeURIComponent(this.element.value)+'&callback='+this.options.callback+'.suggest';var js=new Asset.javascript(url,{id:this.options.scriptTagId});},suggest:function(json){if(json===undefined){return;}
var diff=new Date().getTime()-this.reqTimer;this.usageData.acUsageCount+=1;this.usageData.acUsageResTimeAvg=this.usageData.acUsageCount==1?diff:Math.round(((this.usageData.acUsageResTimeAvg*(this.usageData.acUsageCount-1))+diff)/this.usageData.acUsageCount);if(typeof json!=='object'){json=JSON.decode(json);}
this.suggestionList.set('html','');if(json.options.length===0){this.closeSuggest();return;}
for(el in json.options){if(json.options.hasOwnProperty(el)){if(typeof json.options[el]=='string'){this.addSuggestionItem(json.options[el]);}else if(typeof json.options[el]=='object'){var big=new Element('strong').set('html',el).inject(this.suggestionList);for(elm in json.options[el]){if(json.options[el].hasOwnProperty(elm)){this.addSuggestionItem(json.options[el][elm],el);}}}}}
this.suggestionBox.scrollTo(0,0);if(this.iframe){this.iframe.setProperty('height','0px').setStyle('height','0px');}
if(!this.suggestOpen&&this.suggestionList.getChildren()){this.openSuggest();}
var size=this.suggestionBox.getSize();var scrollSize=this.suggestionBox.getScrollSize();var scroll=scrollSize.y>size.y?scrollSize.y:size.y;this.shouldScroll=scroll>0?true:false;this.scrollCount=json.options.length;this.suggestionBoxHeight=size.y;if(this.iframe){this.iframe.set('height',scroll+'px').setStyle('height',scroll+'px');}
this.currentValue=this.element.value;},addSuggestionItem:function(el,cls){var c=['suggestion',(cls||'')].join(' ').trim();var a=new Element('a',{'href':'#','class':c,'events':{'click':function(ev){ev.stop();this.add($(ev.target).get('text'),true);this.usageData.acUsageClickedFlag=1;this.fireEvent('onSuggestClick');}.bindWithEvent(this),'mouseover':this.hover.bindWithEvent(this)}}).set('html',decodeURIComponent(el)).injectInside(this.suggestionList);},onFormSubmit:function(ev){if(this.inEdit){ev.stop();return false;}},onTextBoxFocus:function(e){this.inEdit=true;this.element.addClass('Focused');},onTextBoxBlur:function(e){this.inEdit=false;this.element.removeClass('Focused');},onTextBoxTypeUp:function(ev){var el;switch(ev.key){case'esc':if(this.suggestOpen){this.closeSuggest();}
break;case'down':if(!this.suggestOpen){this.openSuggest();}
el=this.suggestionList.getElement('.focused')||this.suggestionList.getLast();this.traverse(el,'next',false);break;case'up':if(!this.suggestOpen){this.openSuggest();}
el=this.suggestionList.getElement('.focused')||this.suggestionList.getFirst();this.traverse(el,'previous',false);break;case'enter':case'space':break;default:this.timer=$clear(this.timer);this.timer=this.getSuggestions.delay(150,this);break;}},onTextBoxTypeDown:function(ev){if(ev.key==='enter'){if(!this.suggestOpen){return;}
var f=this.suggestionList.getElement('.focused')||null;if(f!==null){this.add(f.get('text'),true);this.usageData.acUsageClickedFlag=1;}}},onClickOutside:function(ev){this.closeSuggest();},add:function(str){this.cancelSuggest=true;var html=str.clean();if(html.length===0){return;}
html=html.replace(/(<\/?strong>)|(<em>.*<\/em>)/gi,'');this.element.value=html;this.closeSuggest();this.cancelSuggest=false;},traverse:function(el,dir,focus){if(!el){return};var next,parent=el.getParent();if(!parent.getChildren()){return;}
switch(dir){case'next':el.removeClass('focused');next=el===parent.getLast()?parent.getFirst():el.getNext();if(next.get('tag')!='a'){next=next.getNext();}
break;case'previous':el.removeClass('focused');next=el===parent.getFirst()?parent.getLast():el.getPrevious();if(next.get('tag')!='a'){next=next.getPrevious()||parent.getLast();}
break;}
if(next===this.inputWrap){this.input.focus();}else{next.addClass('focused');if(focus){next.focus();}
if(!this.shouldScroll){return;}
var h=next.getCoordinates().height;var index=parent.getChildren().indexOf(next);var visibleIndex=Math.round(this.suggestionBoxHeight/h)-1;if(dir==='next'){if(index>=visibleIndex){this.suggestionBox.scrollTo(0,index*h);}else{this.suggestionBox.scrollTo(0,0);}}else if(dir==='previous'){if(index<=visibleIndex){this.suggestionBox.scrollTo(0,0);}else{this.suggestionBox.scrollTo(0,index*h);}}
this.highlight(next);}},hover:function(ev){var oldLink=this.suggestionList.getElement('.focused');var newLink=$(ev.target);if(oldLink){oldLink.removeClass('focused');}
newLink.addClass('focused');},highlight:function(el){this.element.value=el.get('text');this.element.highlightSelection(this.currentValue.length);}});
var OmnitureMC=new Class({initialize:function(props,clickReports){this.props=props;this.clickReports=new Hash(clickReports);this.reportedElements=null;window.document.addEvent('click',this.documentClick.bindWithEvent(this));},documentClick:function(event){for(var el=new Element(event.target);el&&el!=document.body&&el.nodeName!='#document';el=el.getParent()){if($defined(el.hasClass)){if(el.hasClass('report')){this.saveClickReport(event,el);break;}}}},hookClickReports:function(){},saveClickReport:function(event,target){var clickReport=null;target.className.split(' ').each(function(val){var t=this.clickReports.get(val);if(t!==null){clickReport=t;}}.bind(this));clickReport=clickReport||this.clickReports.get(target.get('id'));this.saveCookie(clickReport,event,target);if(typeof kpi!='undefined'){kpi.setRndtrpCookie();}},saveCookie:function(clickReport,event,target){var hashCookie=new Hash.Cookie("Omniture",{domain:headerObj.cookieDomain,path:'/',duration:100});if(clickReport){var h=new Hash(clickReport).each(function(val,key){var oldVal=hashCookie.get(key);if(key=='events'&&oldVal){if(!oldVal.test(val)){hashCookie.set(key,oldVal+','+val);}}else{hashCookie.set(key,val);}}.bind(this));}else{var elementText=event.target.innerHTML.replace(/(<([^>]+)>)/ig,"").replace('+',' ')||event.target.get('id');hashCookie.set('prop23',elementText);}},setModel:function(model){if($defined(model)){this.model=model;}},onPlay:function(){var props={'prop32':this.model.selectedItem.itemID+' '+this.model.selectedItem.title};this.report(props,'Item');},report:function(propsSent,section){if(!$defined(omnitureEnv)){return;}
var props=propsSent;var s2=s_gi(omnitureEnv);s2.linkTrackVars='';for(prop in props){if(props.hasOwnProperty(prop)){s2[prop]=props[prop];s2.linkTrackVars+=(s2.linkTrackVars.length?',':'')+prop;}}
s2.linkTrackEvents=s2.events;s2.tl(this,'o',section);}});function getOmnitureIntervalTime(sec){if(sec<3){return"<3";}
else if(sec<5){return"3-5";}
else if(sec<8){return"5-8";}
else if(sec<11){return"8-11";}
else if(sec<15){return"11-15";}
else if(sec<20){return"15-20";}
else if(sec<25){return"20-25";}
else{return">25";}}
var MainReportItems=false;var ReportItems=new Class({initialize:function(){if(!$defined(ReportItemsID)||ReportItemsID===0){return;}
this.reportID=ReportItemsID;$ES('.Items').each(function(catalogContainer){$ES('li',catalogContainer).addEvent('click',this.onClick.bindWithEvent(this));}.bind(this));},onClick:function(event){for(var el=event.target;el.nodeName!='LI'&&el!=document.body;el=el.parentNode){}
if(el==document.body){return;}
var thumb=$ES('.ItemThumb',el);for(var catalog=el;!catalog.hasClass('Items')&&catalog!=document.body;catalog=catalog.getParent()){}
if(catalog==document.body){return;}
var indexOf=$ES('.ItemThumb',catalog).indexOf(thumb);if(indexOf==-1){return;}
var i=catalog.get('id');if(!i){return;}else{id=i.match(/([0-9]+)/gi)[0];}
var spotID=id.toInt()*100+indexOf.toInt();Cookie.write('itemReport',spotID+"__"+this.reportID,{domain:headerObj.cookieDomain,path:"/"});}});var Search=new Class({Implements:[Options],options:{form:null,type:null,defaultPath:'videos/',appendSelectValue:true,path:''},initialize:function(options){this.setOptions(options);this.serverUrl='http://'+self.location.hostname.replace(/wikicafe/,'www').replace(/starter\./,'')+'/';this.autoCompleteInstance=null;if(this.options.form){this.form=this.options.form;this.filter=$E('.SearchFilter',this.form);this.textField=this.form.getElement('input[type="text"]');this.form.set('target','_top');this.form.addEvent('submit',this.onSearch.bindWithEvent(this));this.textField.addEvents({focus:this.onFieldFocus.bindWithEvent(this),blur:this.onFieldBlur.bindWithEvent(this)});}},onFieldFocus:function(){var defaultText=this.textField.get('title')||'';if(this.textField.value==defaultText){this.textField.value='';}},onFieldBlur:function(){var defaultText=this.textField.get('title')||'';if(this.textField.value.trim()===''){this.textField.value=defaultText;}},onSearch:function(ev){if(ev){ev.preventDefault();}
var defaultText=this.textField.get('title')||'';var searchText=this.textField.value.clean().capitalize();searchText=searchText.replace(/[\/|\\]/g,"_");if(searchText==defaultText){searchText='';}
if(searchText===''){var url=this.serverUrl+this.options.defaultPath;var filter=this.filter?this.filter.value:'';if(this.options.appendSelectValue&&filter!==''){filter=$E('.SearchFilter',this.form)?$E('.SearchFilter',this.form).value:'';url+=filter+'/';}
self.location.href=url;}else{this.search(searchText);}},search:function(searchText){var filter=this.filter?this.filter.value:'';var url=this.serverUrl+(this.options.path+(filter===''?'':'f/')+'results/'+(filter===''?'':filter+'/')+this.createSearchString(searchText)+'/').replace(/(\/\/)/g,'/');var d=10/(24*60);Cookie.write('searchFromSite',1,{duration:d,domain:headerObj.cookieDomain,path:"/"});if(typeof kpi!=='undefined'&&this.autoCompleteInstance!==null){d=this.autoCompleteInstance.usageData;for(r in d){if(d.hasOwnProperty(r)){kpi.addReport({name:r,value:d[r].toString()});}}}
if(this.options.type&&typeof ga!=='undefined'&&typeof ga.onGAClick!=='undefined'){ga.onGAClick({'searchType':this.options.type});}
self.location.href=url;},createSearchString:function(searchText){return searchText.replace(/\s/g,'_').replace(/[&]/g,'%26').lcwords();},setAutoCompleteInstance:function(instance){this.autoCompleteInstance=instance;}});var ItemCatalog2=new Class({initialize:function(objID,saveAsLastCatalog){this.hashCookie=new Hash.Cookie('User',{domain:headerObj.cookieDomain,path:'/',duration:362});if(document.location.toString().test('/watch/')){this.itemPage=true;}else{this.itemPage=false;this.hashCookie.set('LastCatalogReference','');}
this.objID=objID;this.saveAsLastCatalog=saveAsLastCatalog||false;this.obj=$(this.objID);if(this.obj){this.obj.addEvent('click',this.onItemClick.bindWithEvent(this));}},onItemClick:function(event){var foundAnchor=false;for(var el=$(event.target);el.get('tag')!='body';el=el.getParent()){if(el.get('tag')=='a'&&(el.get('href').test('/watch/'))){foundAnchor=true;break;}}
if(foundAnchor&&this.objID.match(/\d.?/)&&(!this.itemPage||this.saveAsLastCatalog)){this.hashCookie.set('LastCatalogReference',this.objID.match(/\d.?/)[0]);}}});var TopicCatalog=new Class({initialize:function(objID,saveAsLastCatalog){this.hashCookie=new Hash.Cookie('User',{domain:headerObj.cookieDomain,path:'/',duration:362});if(document.location.toString().test('/topics/')){this.topicPage=true;}else{this.topicPage=false;this.hashCookie.set('LastTopicCatalogReference','');}
this.objID=objID;this.saveAsLastCatalog=saveAsLastCatalog||false;this.obj=$(this.objID);if(this.obj){this.obj.addEvent('click',this.onTopicClick.bindWithEvent(this));}},onTopicClick:function(event){var foundAnchor=false;for(var el=$(event.target);el.get('tag')!='body';el=el.getParent()){if(el.get('tag')=='a'&&(el.get('href').test('/topics/'))){foundAnchor=true;break;}}
if(foundAnchor&&this.objID.match(/\d.?/)&&(!this.topicPage||this.saveAsLastCatalog)){this.hashCookie.set('LastTopicCatalogReference',this.objID);}}});var PanelMgr=new Class({initialize:function(){$ES('.Scrl').each(function(panel){panel.addEvent('scroll',this.loadThumbs.bindWithEvent(this,[panel]));},this);this.hashCookie=new Hash.Cookie('Panels',{domain:headerObj.cookieDomain,path:'/',duration:362});},togglePanel:function(h3){var panel=this.getPanel(h3);panel.toggleClass('Closed');this.savePanelState(panel,panel.hasClass('Closed')?0:1);},loadThumbs:function(ev,panel){if(panel.retrieve('loaded')){return;}
$ES('img',panel).each(function(el){if(el.get('title')){el.set('src',el.get('title'));el.erase('title');}});panel.store('loaded',true);},getPanel:function(target){for(el=target;!el.hasClass('Panel');el=el.getParent()){}
return el;},toggleLayout:function(target){var panel=this.getPanel(target);var catalog=panel.getElement('.Items');if(!catalog||target.retrieve('Active')){return;}
var modes=catalog.hasClass('Mode1')||catalog.hasClass('Mode4')?['Mode1','Mode4']:['Default','Mode3'];var listView=panel.getElement('.ListView');var thumbView=panel.getElement('.ThumbView');catalog.toggleClass(modes[0]).toggleClass(modes[1]);(function(){catalog.toggleClass('IE7Sucks')}).delay(10);listView.toggleClass('Active').store('active',listView.hasClass('Active'));thumbView.toggleClass('Active').store('active',listView.hasClass('Active'));this.savePanelMode(panel,(catalog.hasClass(modes[0])?modes[0]:modes[1]));},savePanelState:function(panel,state){if(panel.get('id')){this.hashCookie.set(panel.get('id'),state);}},savePanelMode:function(panel,state){if(panel.get('id')){this.hashCookie.set(panel.get('id')+'-Mode',state);}}});var Console=new Class({initialize:function(){},log:function(msg){}});var DropDown=new Class({initialize:function(trigger,target){this.opened=false;this.trigger=[];if($defined(trigger.length)){trigger.each(function(el){this.trigger.push($(el));},this);}else{this.trigger=[$(trigger)];}
this.target=$(target);this.target.hide();this.initEvents();},initEvents:function(){this.trigger.each(function(el){el.addEvent('click',this.toggleTarget.bindWithEvent(this));},this);this.target.addEvent('clickOutside',this.onClickOutside.bindWithEvent(this));},toggleTarget:function(ev){ev.stop();this.trigger.each(function(el){el.toggleClass('Open');});this.target.toggle();this.opened=!this.opened;},onClickOutside:function(ev){if(!this.trigger.contains(ev.target)){this.hideTarget();}},hideTarget:function(){this.trigger.each(function(el){el.removeClass('Open');});this.target.hide().removeClass('Open');this.opened=false;}});var ReportManager=new Class({initialize:function(){return this;},report:function(el){var classes=el.removeClass('reports').className.clean();var newValues=classes===''?[]:classes.split(' ');var oldValues=Cookie.read('reports')?Cookie.read('reports').clean().split(' '):[];var reports=oldValues.merge(newValues).join(' ');Cookie.write('reports',reports,{domain:headerObj.cookieDomain,path:'/',duration:1});}});var DefaultHPToggler=new Class({initialize:function(pageName,activeSetter){this.pageName=pageName||'';this.activeSetter=$(activeSetter);if(!this.activeSetter){return;}
this.activeSetter=this.activeSetter.getParent();this.setters=$ES('.HPSetter');this.setters.addEvent('click',this.toggleHomepage.bindWithEvent(this));this.activateLinks();},activateLinks:function(){var activeHub=$('Hub'+this.pageName);if(activeHub){activeHub.addClass('Active');}
if(this.pageName!='home'){this.activeSetter.show();}},toggleHomepage:function(ev){var gaEvent,url;ev.preventDefault();for(var target=$(ev.target);target.get('tag')!='li';target=target.getParent()){}
if(target.getFirst().get('id')=='SetHP'){url=self.location.pathname;gaEvent='DefaultHomepage/Set/'+self.location.pathname.replace(/\//gi,'');}else{url='/';gaEvent='DefaultHomepage/Unet/'+self.location.pathname.replace(/\//gi,'');}
if(typeof ga!=='undefined'){ga.reportEvent(gaEvent);}
Cookie.write('hp',url,{domain:headerObj.cookieDomain,path:'/',duration:362});this.setters.toggle();}});
var GoogleAnalytics=new Class({Implements:[Options,Events],options:{clickReport:null,vars:null,sessionVars:null},initialize:function(options){this.setOptions(options);this.slotNumber=1;this.pageTracker=null;this.eventTracker=null;this.pageName=null;this.ready=false;this.tries=0;this.events=[];window.addEvent('gaClick',this.onGAClick.bind(this));},run:function(){if(typeof _gat!='undefined'){this.pageTracker=_gat._getTracker("UA-6119600-1");this.ready=true;this.send();}else if(typeof _gat=='undefined'&&this.tries<10){this.tries+=1;this.run.delay(500,this);}},send:function(){this.setEnvVars();this.addVars();this.pageTracker._trackPageview(this.pageName);if(this.events.length>0){this.events.each(function(event,index){this.sendEvent(event);},this);}
this.events=[];},concatenate:function(obj){str=[];for(key in obj){if(obj.hasOwnProperty(key)){str.push(key+'-'+obj[key]);}}
return str.join('/');},reportPageName:function(pageName){this.pageName=(pageName||'pageType-unknown')+this.getSearchQueryString();if(window.showAgeGateFlg){this.pageName+='-AgeGateOpen'}
if(!this.ready){this.run();}else{this.send();}},reportEvent:function(event){if(!this.ready){this.events.push(event);}else{this.sendEvent(event);}},addVars:function(){var paramValue;var levelNumber;for(paramName in this.options.vars){levelNumber=this.options.vars[paramName]["level"];paramValue=this.options.vars[paramName]["value"];this.pageTracker._setCustomVar(this.slotNumber,paramName,paramValue,levelNumber);this.slotNumber++;}},sendEvent:function(event){var e=event.split('/');switch(e.length){case 4:this.pageTracker._trackEvent(e[0],e[1],e[2],e[3]);break;case 3:this.pageTracker._trackEvent(e[0],e[1],e[2]);break;default:this.pageTracker._trackEvent(e[0],e[1]);break;}},getSearchQueryString:function(){if(!headerObj.search){return'';}
var search=headerObj.search;var category=headerObj.category||null;return'?q='+search+(category?'&c='+category:'&c=all');},setEnvVars:function(){var landing=this.concatenate(this.options.sessionVars);try{var envVar=Cookie.get('__utmv').split('.')[1];if(envVar!=landing){this.pageTracker._setVar(landing);}}catch(e){}
return landing;},onGAClick:function(el){if(typeof console!='undefined'&&document.location.href.test('.(dev|qa).')){console.log('onGAClick click',el);}
if($type(el)==='element'){var reports=this.options.clickReport;obj=null;classes=el.get('class')+' '+el.get('id');classes=classes.split(' ');for(i=0;i<classes.length;i++){c=classes[i];if(c in reports){obj=reports[c];break;}}}
else{obj=el;}
if(!obj){return;}
if(typeof console!='undefined'&&document.location.href.test('.(dev|qa).'))console.log('onGAClick reporting',obj);var hashCookie=new Hash.Cookie("GA",{domain:headerObj.cookieDomain,path:'/',duration:100});for(key in obj){if(obj.hasOwnProperty(key)){hashCookie.set(key,obj[key]);}}}});
var panelMgr,siteSearch;function initWikiCloseMsg(){var closeWikiMsg=$('CloseWikiMsg');if(closeWikiMsg){closeWikiMsg.addEvent('click',function(ev){var e=new Event(ev).preventDefault();$('NoticeArea').remove();Cookie.set('wikimsg',0,{domain:headerObj.cookieDomain,path:'/',duration:0});});}}
function setCurrentStudio(studioName){if(studioName){headerObj.currentTab=studioName+"Tab";activateCurrentTab();}}
function activateCurrentTab(){if(headerObj.currentTab&&$(headerObj.currentTab)){$(headerObj.currentTab).addClass('Active');}else{var links=$ES('a','SiteNav');for(i=0;i<links.length;i++){el=links[i];if(typeof el.get=='function'){if(el.get('href')==self.location.pathname){var parentElement=el.getParent();if(parentElement.hasClass("Tab")){parentElement.addClass('Active');break;}}}}}}
function initPage(){var isLoggedIn=(headerObj.userID!=false);headerObj.target=headerObj.target||'_top';$ES('a','Header').set('target',headerObj.target);$ES('a','Footer').set('target',headerObj.target);activateCurrentTab();var moreDD=new DropDown($('MoreMenuOpener'),$('CategoryList'));if(isLoggedIn){var acountDD=new DropDown($('WelcomeA'),$('AccountLinks'));}
if($('ClientDL')&&$('fpObj')){$('ClientDL').addEvents({'click':function(e){try{itemManager.shouldPausePlayer=false;}catch(err){}},'mouseout':function(e){try{itemManager.shouldPausePlayer=true;}catch(err){}}});}
if(headerObj.search){var sTop=$('SearchQuery'),sBtm=$('SearchQueryBtm');sTop.set('value',headerObj.search);if(sBtm){sBtm.set('value',headerObj.search);}}
initWikiCloseMsg();if(!Cookie.read('TZOffset')){var d=new Date();Cookie.write('TZOffset',d.getTimezoneOffset(),{duration:1,domain:document.domain,path:'/'});}
if($E('.Panel')){panelMgr=new PanelMgr();}
if($('slCat')){$('slCat').addEvent('change',function(){document.location=$('slCat').value;});}
if(!$('AjaxProg')){var ajaxProg=new Element('div',{id:'AjaxProg','class':'Hidden'}).injectInside(document.body);}
var attributes={id:'AjaxProgSwf'};swfobject.embedSWF(headerObj.cdnFlash+'/Misc/ajax.swf','AjaxProgSwf',"20","20","8",false,false,swfobject.defaultParams,attributes);if(Browser.Engine.trident){console=new Console();if(Browser.Engine.trident4){var f=$(document.body).getFirst();if(f.get('tag')=='img'){f.hide();}}}}
function initPageAds(){if(document.getElement('.Ifrm')){(function(){adManager=new AdManager();}).delay(1000);}}
window.addEvent('load',initPageAds);function initFooter(){window.addEvent('load',function(){MainReportItems=new ReportItems();});}
function pauseVideoPlayer(){var fpObj=$('fpObj');if(fpObj){fpObj.pause();}}
function resumeVideoPlayer(){var fpObj=$('fpObj');if(fpObj){fpObj.resume();}}
var KPI=new Class({initialize:function(){if(!$defined(pageStartTime)){return;}
this.headerTime=pageStartTime;this.reported=false;this.combinedReports=[];this.params={};this.reportMap=$H();this.prevReports=[];this.prevServerParams={};this.prevClientParams={};this.UUIDReady=false;this.windowLoadReady=false;this.addLostSessionReport();this.initPreviousReports();window.addEvent('load',this.onWindowLoad.bind(this));window.onerror=function(msg,url,line){this.addReport({name:'JSError',value:'Error: '+msg+',URL: '+url+',Line: '+line},true);return true;}.bind(this);},addSimpleReport:function(name){this.addReport({name:name,value:this.getTimeFromInit()});},addReport:function(report,force){if(!$defined(force)&&!this.isKPIReporting()){return true;}
if(!this.reported){this.combinedReports.push(report);}else{this.reportMap.set(report.name,report.value);this.combinedReports.data=this.simpleReportsToArray();Cookie.write('KPIPrevReports',JSON.encode(this.combinedReports),{path:'/',duration:0,domain:document.domain});}},simpleReportsToArray:function(){var a=[];this.reportMap.each(function(v,k){a.push({name:k,value:v});});return a;},initPreviousReports:function(){var prev=Cookie.read('KPIPrevReports',{path:'/',duration:0,domain:document.domain});if(!prev){return false;}
Cookie.dispose('KPIPrevReports',{path:'/',duration:0,domain:document.domain});var prevReports=JSON.decode(prev);this.prevClientParams=prevReports.PrevClientParams;this.prevServerParams=prevReports.PrevServerParams;this.prevReports=prevReports.data;delete prevReports.PrevClientParams;delete prevReports.PrevServerParams;delete prevReports.data;return true;},report:function(params){if(this.combinedReports.length===0||this.reported){return true;}
var serverParams=KPIServerParams||'';var rand=Math.floor(Math.random()*100*Math.random()*200);this.reported=true;var qs='/index.php?inputType=reporter&reportName=KPI&rand='+rand+'&headerType=css&'+'serverParams='+encodeURIComponent(JSON.encode(serverParams))+'&clientParams='+encodeURIComponent(JSON.encode(this.params))+'&data='+encodeURIComponent(JSON.encode(this.combinedReports))+'&isBeta='+isBeta;if(this.prevReports.length>0){qs+='&prevClientParams='+encodeURIComponent(JSON.encode(this.prevClientParams))+'&prevServerParams='+encodeURIComponent(JSON.encode(this.prevServerParams))+'&prevData='+encodeURIComponent(JSON.encode(this.prevReports));}
var img=new Element('img',{'src':qs,'alt':'kpi-img','class':'Hidden'}).injectInside($(document.body));delete this.combinedReports;this.combinedReports={'PrevClientParams':this.params,'PrevServerParams':serverParams,'data':[]};},addRndtrpReport:function(serverLoadTime){var lastClicktime;if(!(lastClickTime=Cookie.read('KPIRndtrpStart'))){return;}
lastClickTime=new Date(Cookie.read('KPIRndtrpStart'));Cookie.dispose('KPIRndtrpStart',{duration:0,domain:document.domain,path:'/'});rndtrpTime=(this.headerTime-lastClickTime)-serverLoadTime;this.addReport({name:'Rndtrp',value:rndtrpTime});},getTimeFromInit:function(){var d=new Date();return d.getTime()-this.headerTime;},addLostSessionReport:function(){if(Cookie.read('KPIPageInit')){this.addReport({name:'LostSession',value:'1'});this.removePageInitCookie();return true;}
return false;},isKPIReporting:function(){return $defined(KPIServerParams);},setRndtrpCookie:function(){if(this.isKPIReporting()){Cookie.write('KPIRndtrpStart',new Date(),{duration:0,domain:document.domain,path:'/'});}},setKPIPageInitCookie:function(){if(this.isKPIReporting()){Cookie.write('KPIPageInit',this.headerTime,{duration:0,domain:document.domain,path:'/'});}},initParams:function(){var d=new Date();this.params={OS:navigator.platform,browser:Browser.Name,gmtOffset:d.getTimezoneOffset(),UUID:(uuID||'')};},removePageInitCookie:function(){Cookie.dispose('KPIPageInit',{duration:0,domain:document.domain,path:'/'});},onUUID:function(){if(!this.UUIDReady){this.initParams();this.UUIDReady=true;}
if(this.UUIDReady&this.windowLoadReady){this.report();}},onDOMLoad:function(serverLoadTime){this.addSimpleReport('HTMLLoadTime');this.addRndtrpReport(serverLoadTime);this.removePageInitCookie();},onWindowLoad:function(){this.addSimpleReport('FullLoadTime');this.windowLoadReady=true;if(this.UUIDReady&this.windowLoadReady){this.report();}}});
var rpc,clickManager;var RemoteLoader=new Class({Implements:[Events],initialize:function(){this.cachedObjects={};this.inProcess=false;this.inProcessElement=null;this.scrollToTop=false;this.request=null;},doRPC:function(el,event){var data,method,url;if(event){event.preventDefault();}
if(this.inProcess||el.hasClass('Disabled')||el.getParent().hasClass('Disabled')){return;}
if(el.get('tag')=='a'&&(el.get('href')||el.get('rel'))){url=el.hasClass('useHREF')?el.get('href'):(el.get('rel')||el.get('href'));if(el.get('class').match('post([0-9a-zA-Z_\-]*)')){data=$ES('.'+el.get('class').match('post([0-9a-zA-Z_\-]*)')[1]).toQueryString().join('&');method='post';}else{method='get';data=null;}}
if(el.get('tag')=='input'||el.get('tag')=='button'){for(p=el;p.get('tag')!='form';p=p.getParent()){}
p.fireEvent('onBeforeSubmit');if(p.hasClass('notvalid')){return;}
method=p.get('method')||'post';url=p.get('action');data=p.toQueryString();}
this.url=url=url+(url.test('/$')?'?':'&')+'ajax=1&rand='+Math.random();this.postBody=data||'';this.inProcess=true;if(el.hasClass('TempElement')){this.inProcessElement=el;}
this.scrollToTop=el.hasClass('scrollTop');if(this.request===null){this.initRequest();}
this.request.send({url:url,method:method,data:data});},onSuccess:function(response){var elements=new Element('div').set('html',this.request.response.text).getChildren();this.replaceElements(elements);this.inProcess=false;this.inProcessElement=null;this.fireEvent('onComplete');if(this.scrollToTop){var fx=new Fx.Scroll(window).start(0,$('Content').getCoordinates().top-20);}},onFailure:function(response){this.fireEvent('onFailure');var msg='Your request could not be completed.';if(this.request.response.text.length>0){msg+='\n'+this.request.response.text;}
alert(msg);},replaceElements:function(elements){var isDev=document.location.href.test('.dev.');var isDebug=document.location.href.test('debug');elements.each(function(el){var id=el.get('id');if(el.get('tag')=='script'&&!el.get('src')){if(isDev){console.log('evaluating script ',el.get('html'));}
$exec(el.get('html').replace('<!--','').replace('--!>',''));return;}
else if(el.get('tag')=='script'||el.get('tag')=='link'){if((el.get('tag')=='script'&&$ES('script[src="'+el.get('src')+'"]').length)||(el.get('tag')=='link'&&$ES('link[href="'+el.get('href')+'"]').length)){if(isDev){console.log('skipping script ',el);}
return;}
if(isDev){}
if(isDebug){alert('injecting '+el.get('src')+el.get('href'));alert('handling element tag:'+el.get('tag')+' id:'+el.get('id')+' defer:'+el.get('defer')+' src:'+el.get('src')+' href:'+el.get('href')+' innerHTML:'+el.get('html'));}
if(el.get('tag')=='script'){var js=new Asset.javascript(el.get('src'));}else{el.injectTop(document.head);}}
else if(el.get('html')===''&&el.get('tag')!='input'&&el.get('tag')!='button'){if(this.cachedObjects[id]){this.getFromCache(id);}}else if(this.inProcessElement){el.replaces(this.inProcessElement);}else{var oldElement=$(id);this.fireEvent('onUnload',[id,this.url],0);if(!oldElement){if(isDev){console.log('could not find an element to replace with',el);}
return;}
if(!oldElement.hasClass('nocache')){this.cachedObjects[id]=oldElement;}
if(isDebug){alert(el);}
el.replaces(oldElement);}
this.fireEvent('onChange',[id,this.url,this.postBody],0);},this);},getFromCache:function(id){return this.cachedObjects[id].replaces($(id));},callModal:function(el){clickManager.callModal(el);},setManager:function(manager){this.manager=manager;},initRequest:function(){this.request=new Request.Status({headers:{'X-Requested-With':'XMLHttpRequest'},autoCancel:true,evalScripts:false,evalRequest:false,onSuccess:this.onSuccess.bind(this),onFailure:this.onFailure.bind(this)});}});rpc=new RemoteLoader();var ClickManager=new Class({initialize:function(){this.modal=null;this.reportManager=new ReportManager();document.addEvent('click',this.documentClick.bindWithEvent(this));},documentClick:function(event){if(event.rightClick){return;}
var BrandedContainer=BrandedContainer||false;var _break=false;for(var el=$(event.target);el&&el!=document.body;el=el.parentNode){if($defined(el.hasClass)){if(el.hasClass('windowBlank')){el.set('target','_blank');_break=true;}
if(el.hasClass('modalOpener')){event.preventDefault();this.callModal(el);_break=true;}
if(el.hasClass('rpc')){if(el.get('tag')=='a'){event.preventDefault();}
rpc.doRPC(el,event);_break=true;}
if(el.hasClass('rpcConf')){if(el.get('tag')=='a'){event.preventDefault();}
if(confirm('Are you sure you want to '+(el.get('title')||'continue')+'?')){rpc.doRPC(el,event);}
_break=true;}
if(el.hasClass('Fold')){el.blur();panelMgr.togglePanel(el);$$('.Panel').toggleClass('IE7Sucks');_break=true;}
if(el.hasClass('Toggler')&&!BrandedContainer){event.preventDefault();el.blur();this.toggleSibling(el);_break=true;}
if(el.hasClass('ListView')||el.hasClass('ThumbView')){el.blur();panelMgr.toggleLayout(el);_break=true;}
if(el.hasClass('reports')){this.reportManager.report(el);_break=true;}
if(el.hasClass('ga')){window.fireEvent('gaClick',[el]);}
if(_break||el.get('tag')=='a'){break;}}}
if($('AjaxProg')){$('AjaxProg').setStyles({'top':(event.page.y+10)+'px','left':(event.page.x+8)+'px'});}},toggleSibling:function(el){$ES('.Toggled',el.getParent()).toggle();if(el.hasClass('More')){el.set('html','&laquo;Less').removeClass('More').addClass('Less');if(el.get('title')){el.set('title',el.get('title').replace(/(more)/gi,'less'));}}else if(el.hasClass('Less')){el.set('html','More&raquo;').addClass('More').removeClass('Less');if(el.get('title')){el.set('title',el.get('title').replace(/(less)/gi,'more'));}}else{el.toggleClass('Folded');}},callModal:function(el){if(this.modal===null){this.modal=new Moobox();}
var rel=el.get('rel');var href=el.get('href');var url=rel&&rel!='nofollow'?rel:href;this.modal.getContent(url);}});clickManager=new ClickManager();
if(typeof COMSCORE=="undefined"){var COMSCORE={}}if(typeof _comscore!="object"){var _comscore=[]}COMSCORE.beacon=function(k){try{if(!k){return}var i=1.8,l=k.options||{},j=l.doc||document,b=l.nav||navigator,g=j.location,f=512,d=function(e,m){if(e==null){return""}e=(encodeURIComponent||escape)(e);if(m){e=e.substr(0,m)}return e},a=[(g.protocol=="https:"?"https://sb":"http://b"),".scorecardresearch.com/b?","c1=",d(k.c1),"&c2=",d(k.c2),"&rn=",Math.random(),"&c7=",d(g.href,f),"&c3=",d(k.c3),"&c4=",d(k.c4,f),"&c5=",d(k.c5),"&c6=",d(k.c6),"&c10=",d(k.c10),"&c15=",d(k.c15),"&c16=",d(k.c16),"&c8=",d(j.title),"&c9=",d(j.referrer,f),"&cv=",i,k.r?"&r="+d(k.r,f):""].join("");a=a.length>2080?a.substr(0,2075)+"&ct=1":a;if(!/BlackBerry.*?\/([1-3]\.|4\.[0-5])/.test(b.userAgent)){var c=new Image();c.onload=function(){};c.src=a}else{a=a.replace(/\/b\?/,"/p?");j.write("<img src='"+a+"' />")}return a}catch(h){}};COMSCORE.purge=function(a){try{var c=[],f,b;a=a||_comscore;for(b=a.length-1;b>=0;b--){f=COMSCORE.beacon(a[b]);a.splice(b,1);if(f){c.push(f)}}return c}catch(d){}};COMSCORE.purge();