var Prototype={Version:'1.7',Browser:(function(){var ua=navigator.userAgent;var isOpera=Object.prototype.toString.call(window.opera)=='[object Opera]';return{IE:!!window.attachEvent&&!isOpera,Opera:isOpera,WebKit:ua.indexOf('AppleWebKit/')>-1,Gecko:ua.indexOf('Gecko')>-1&&ua.indexOf('KHTML')===-1,MobileSafari:/Apple.*Mobile/.test(ua)}})(),BrowserFeatures:{XPath:!!document.evaluate,SelectorsAPI:!!document.querySelector,ElementExtensions:(function(){var constructor=window.Element||window.HTMLElement;return!!(constructor&&constructor.prototype);})(),SpecificElementExtensions:(function(){if(typeof window.HTMLDivElement!=='undefined')
return true;var div=document.createElement('div'),form=document.createElement('form'),isSupported=false;if(div['__proto__']&&(div['__proto__']!==form['__proto__'])){isSupported=true;}
div=form=null;return isSupported;})()},ScriptFragment:'<script[^>]*>([\\S\\s]*?)<\/script>',JSONFilter:/^\/\*-secure-([\s\S]*)\*\/\s*$/,emptyFunction:function(){},K:function(x){return x}};if(Prototype.Browser.MobileSafari)
Prototype.BrowserFeatures.SpecificElementExtensions=false;var Abstract={};var Try={these:function(){var returnValue;for(var i=0,length=arguments.length;i<length;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}
return returnValue;}};var Class=(function(){var IS_DONTENUM_BUGGY=(function(){for(var p in{toString:1}){if(p==='toString')return false;}
return true;})();function subclass(){};function create(){var parent=null,properties=$A(arguments);if(Object.isFunction(properties[0]))
parent=properties.shift();function klass(){this.initialize.apply(this,arguments);}
Object.extend(klass,Class.Methods);klass.superclass=parent;klass.subclasses=[];if(parent){subclass.prototype=parent.prototype;klass.prototype=new subclass;parent.subclasses.push(klass);}
for(var i=0,length=properties.length;i<length;i++)
klass.addMethods(properties[i]);if(!klass.prototype.initialize)
klass.prototype.initialize=Prototype.emptyFunction;klass.prototype.constructor=klass;return klass;}
function addMethods(source){var ancestor=this.superclass&&this.superclass.prototype,properties=Object.keys(source);if(IS_DONTENUM_BUGGY){if(source.toString!=Object.prototype.toString)
properties.push("toString");if(source.valueOf!=Object.prototype.valueOf)
properties.push("valueOf");}
for(var i=0,length=properties.length;i<length;i++){var property=properties[i],value=source[property];if(ancestor&&Object.isFunction(value)&&value.argumentNames()[0]=="$super"){var method=value;value=(function(m){return function(){return ancestor[m].apply(this,arguments);};})(property).wrap(method);value.valueOf=method.valueOf.bind(method);value.toString=method.toString.bind(method);}
this.prototype[property]=value;}
return this;}
return{create:create,Methods:{addMethods:addMethods}};})();(function(){var _toString=Object.prototype.toString,NULL_TYPE='Null',UNDEFINED_TYPE='Undefined',BOOLEAN_TYPE='Boolean',NUMBER_TYPE='Number',STRING_TYPE='String',OBJECT_TYPE='Object',FUNCTION_CLASS='[object Function]',BOOLEAN_CLASS='[object Boolean]',NUMBER_CLASS='[object Number]',STRING_CLASS='[object String]',ARRAY_CLASS='[object Array]',DATE_CLASS='[object Date]',NATIVE_JSON_STRINGIFY_SUPPORT=window.JSON&&typeof JSON.stringify==='function'&&JSON.stringify(0)==='0'&&typeof JSON.stringify(Prototype.K)==='undefined';function Type(o){switch(o){case null:return NULL_TYPE;case(void 0):return UNDEFINED_TYPE;}
var type=typeof o;switch(type){case'boolean':return BOOLEAN_TYPE;case'number':return NUMBER_TYPE;case'string':return STRING_TYPE;}
return OBJECT_TYPE;}
function extend(destination,source){for(var property in source)
destination[property]=source[property];return destination;}
function inspect(object){try{if(isUndefined(object))return'undefined';if(object===null)return'null';return object.inspect?object.inspect():String(object);}catch(e){if(e instanceof RangeError)return'...';throw e;}}
function toJSON(value){return Str('',{'':value},[]);}
function Str(key,holder,stack){var value=holder[key],type=typeof value;if(Type(value)===OBJECT_TYPE&&typeof value.toJSON==='function'){value=value.toJSON(key);}
var _class=_toString.call(value);switch(_class){case NUMBER_CLASS:case BOOLEAN_CLASS:case STRING_CLASS:value=value.valueOf();}
switch(value){case null:return'null';case true:return'true';case false:return'false';}
type=typeof value;switch(type){case'string':return value.inspect(true);case'number':return isFinite(value)?String(value):'null';case'object':for(var i=0,length=stack.length;i<length;i++){if(stack[i]===value){throw new TypeError();}}
stack.push(value);var partial=[];if(_class===ARRAY_CLASS){for(var i=0,length=value.length;i<length;i++){var str=Str(i,value,stack);partial.push(typeof str==='undefined'?'null':str);}
partial='['+partial.join(',')+']';}else{var keys=Object.keys(value);for(var i=0,length=keys.length;i<length;i++){var key=keys[i],str=Str(key,value,stack);if(typeof str!=="undefined"){partial.push(key.inspect(true)+':'+str);}}
partial='{'+partial.join(',')+'}';}
stack.pop();return partial;}}
function stringify(object){return JSON.stringify(object);}
function toQueryString(object){return $H(object).toQueryString();}
function toHTML(object){return object&&object.toHTML?object.toHTML():String.interpret(object);}
function keys(object){if(Type(object)!==OBJECT_TYPE){throw new TypeError();}
var results=[];for(var property in object){if(object.hasOwnProperty(property)){results.push(property);}}
return results;}
function values(object){var results=[];for(var property in object)
results.push(object[property]);return results;}
function clone(object){return extend({},object);}
function isElement(object){return!!(object&&object.nodeType==1);}
function isArray(object){return _toString.call(object)===ARRAY_CLASS;}
var hasNativeIsArray=(typeof Array.isArray=='function')&&Array.isArray([])&&!Array.isArray({});if(hasNativeIsArray){isArray=Array.isArray;}
function isHash(object){return object instanceof Hash;}
function isFunction(object){return _toString.call(object)===FUNCTION_CLASS;}
function isString(object){return _toString.call(object)===STRING_CLASS;}
function isNumber(object){return _toString.call(object)===NUMBER_CLASS;}
function isDate(object){return _toString.call(object)===DATE_CLASS;}
function isUndefined(object){return typeof object==="undefined";}
extend(Object,{extend:extend,inspect:inspect,toJSON:NATIVE_JSON_STRINGIFY_SUPPORT?stringify:toJSON,toQueryString:toQueryString,toHTML:toHTML,keys:Object.keys||keys,values:values,clone:clone,isElement:isElement,isArray:isArray,isHash:isHash,isFunction:isFunction,isString:isString,isNumber:isNumber,isDate:isDate,isUndefined:isUndefined});})();Object.extend(Function.prototype,(function(){var slice=Array.prototype.slice;function update(array,args){var arrayLength=array.length,length=args.length;while(length--)array[arrayLength+length]=args[length];return array;}
function merge(array,args){array=slice.call(array,0);return update(array,args);}
function argumentNames(){var names=this.toString().match(/^[\s\(]*function[^(]*\(([^)]*)\)/)[1].replace(/\/\/.*?[\r\n]|\/\*(?:.|[\r\n])*?\*\//g,'').replace(/\s+/g,'').split(',');return names.length==1&&!names[0]?[]:names;}
function bind(context){if(arguments.length<2&&Object.isUndefined(arguments[0]))return this;var __method=this,args=slice.call(arguments,1);return function(){var a=merge(args,arguments);return __method.apply(context,a);}}
function bindAsEventListener(context){var __method=this,args=slice.call(arguments,1);return function(event){var a=update([event||window.event],args);return __method.apply(context,a);}}
function curry(){if(!arguments.length)return this;var __method=this,args=slice.call(arguments,0);return function(){var a=merge(args,arguments);return __method.apply(this,a);}}
function delay(timeout){var __method=this,args=slice.call(arguments,1);timeout=timeout*1000;return window.setTimeout(function(){return __method.apply(__method,args);},timeout);}
function defer(){var args=update([0.01],arguments);return this.delay.apply(this,args);}
function wrap(wrapper){var __method=this;return function(){var a=update([__method.bind(this)],arguments);return wrapper.apply(this,a);}}
function methodize(){if(this._methodized)return this._methodized;var __method=this;return this._methodized=function(){var a=update([this],arguments);return __method.apply(null,a);};}
return{argumentNames:argumentNames,bind:bind,bindAsEventListener:bindAsEventListener,curry:curry,delay:delay,defer:defer,wrap:wrap,methodize:methodize}})());(function(proto){function toISOString(){return this.getUTCFullYear()+'-'+
(this.getUTCMonth()+1).toPaddedString(2)+'-'+
this.getUTCDate().toPaddedString(2)+'T'+
this.getUTCHours().toPaddedString(2)+':'+
this.getUTCMinutes().toPaddedString(2)+':'+
this.getUTCSeconds().toPaddedString(2)+'Z';}
function toJSON(){return this.toISOString();}
if(!proto.toISOString)proto.toISOString=toISOString;if(!proto.toJSON)proto.toJSON=toJSON;})(Date.prototype);RegExp.prototype.match=RegExp.prototype.test;RegExp.escape=function(str){return String(str).replace(/([.*+?^=!:${}()|[\]\/\\])/g,'\\$1');};var PeriodicalExecuter=Class.create({initialize:function(callback,frequency){this.callback=callback;this.frequency=frequency;this.currentlyExecuting=false;this.registerCallback();},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000);},execute:function(){this.callback(this);},stop:function(){if(!this.timer)return;clearInterval(this.timer);this.timer=null;},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.execute();this.currentlyExecuting=false;}catch(e){this.currentlyExecuting=false;throw e;}}}});Object.extend(String,{interpret:function(value){return value==null?'':String(value);},specialChar:{'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','\\':'\\\\'}});Object.extend(String.prototype,(function(){var NATIVE_JSON_PARSE_SUPPORT=window.JSON&&typeof JSON.parse==='function'&&JSON.parse('{"test": true}').test;function prepareReplacement(replacement){if(Object.isFunction(replacement))return replacement;var template=new Template(replacement);return function(match){return template.evaluate(match)};}
function gsub(pattern,replacement){var result='',source=this,match;replacement=prepareReplacement(replacement);if(Object.isString(pattern))
pattern=RegExp.escape(pattern);if(!(pattern.length||pattern.source)){replacement=replacement('');return replacement+source.split('').join(replacement)+replacement;}
while(source.length>0){if(match=source.match(pattern)){result+=source.slice(0,match.index);result+=String.interpret(replacement(match));source=source.slice(match.index+match[0].length);}else{result+=source,source='';}}
return result;}
function sub(pattern,replacement,count){replacement=prepareReplacement(replacement);count=Object.isUndefined(count)?1:count;return this.gsub(pattern,function(match){if(--count<0)return match[0];return replacement(match);});}
function scan(pattern,iterator){this.gsub(pattern,iterator);return String(this);}
function truncate(length,truncation){length=length||30;truncation=Object.isUndefined(truncation)?'...':truncation;return this.length>length?this.slice(0,length-truncation.length)+truncation:String(this);}
function strip(){return this.replace(/^\s+/,'').replace(/\s+$/,'');}
function stripTags(){return this.replace(/<\w+(\s+("[^"]*"|'[^']*'|[^>])+)?>|<\/\w+>/gi,'');}
function stripScripts(){return this.replace(new RegExp(Prototype.ScriptFragment,'img'),'');}
function extractScripts(){var matchAll=new RegExp(Prototype.ScriptFragment,'img'),matchOne=new RegExp(Prototype.ScriptFragment,'im');return(this.match(matchAll)||[]).map(function(scriptTag){return(scriptTag.match(matchOne)||['',''])[1];});}
function evalScripts(){return this.extractScripts().map(function(script){return eval(script)});}
function escapeHTML(){return this.replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>');}
function unescapeHTML(){return this.stripTags().replace(/</g,'<').replace(/>/g,'>').replace(/&/g,'&');}
function toQueryParams(separator){var match=this.strip().match(/([^?#]*)(#.*)?$/);if(!match)return{};return match[1].split(separator||'&').inject({},function(hash,pair){if((pair=pair.split('='))[0]){var key=decodeURIComponent(pair.shift()),value=pair.length>1?pair.join('='):pair[0];if(value!=undefined)value=decodeURIComponent(value);if(key in hash){if(!Object.isArray(hash[key]))hash[key]=[hash[key]];hash[key].push(value);}
else hash[key]=value;}
return hash;});}
function toArray(){return this.split('');}
function succ(){return this.slice(0,this.length-1)+
String.fromCharCode(this.charCodeAt(this.length-1)+1);}
function times(count){return count<1?'':new Array(count+1).join(this);}
function camelize(){return this.replace(/-+(.)?/g,function(match,chr){return chr?chr.toUpperCase():'';});}
function capitalize(){return this.charAt(0).toUpperCase()+this.substring(1).toLowerCase();}
function underscore(){return this.replace(/::/g,'/').replace(/([A-Z]+)([A-Z][a-z])/g,'$1_$2').replace(/([a-z\d])([A-Z])/g,'$1_$2').replace(/-/g,'_').toLowerCase();}
function dasherize(){return this.replace(/_/g,'-');}
function inspect(useDoubleQuotes){var escapedString=this.replace(/[\x00-\x1f\\]/g,function(character){if(character in String.specialChar){return String.specialChar[character];}
return'\\u00'+character.charCodeAt().toPaddedString(2,16);});if(useDoubleQuotes)return'"'+escapedString.replace(/"/g,'\\"')+'"';return"'"+escapedString.replace(/'/g,'\\\'')+"'";}
function unfilterJSON(filter){return this.replace(filter||Prototype.JSONFilter,'$1');}
function isJSON(){var str=this;if(str.blank())return false;str=str.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@');str=str.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']');str=str.replace(/(?:^|:|,)(?:\s*\[)+/g,'');return(/^[\],:{}\s]*$/).test(str);}
function evalJSON(sanitize){var json=this.unfilterJSON(),cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;if(cx.test(json)){json=json.replace(cx,function(a){return'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
try{if(!sanitize||json.isJSON())return eval('('+json+')');}catch(e){}
throw new SyntaxError('Badly formed JSON string: '+this.inspect());}
function parseJSON(){var json=this.unfilterJSON();return JSON.parse(json);}
function include(pattern){return this.indexOf(pattern)>-1;}
function startsWith(pattern){return this.lastIndexOf(pattern,0)===0;}
function endsWith(pattern){var d=this.length-pattern.length;return d>=0&&this.indexOf(pattern,d)===d;}
function empty(){return this=='';}
function blank(){return/^\s*$/.test(this);}
function interpolate(object,pattern){return new Template(this,pattern).evaluate(object);}
return{gsub:gsub,sub:sub,scan:scan,truncate:truncate,strip:String.prototype.trim||strip,stripTags:stripTags,stripScripts:stripScripts,extractScripts:extractScripts,evalScripts:evalScripts,escapeHTML:escapeHTML,unescapeHTML:unescapeHTML,toQueryParams:toQueryParams,parseQuery:toQueryParams,toArray:toArray,succ:succ,times:times,camelize:camelize,capitalize:capitalize,underscore:underscore,dasherize:dasherize,inspect:inspect,unfilterJSON:unfilterJSON,isJSON:isJSON,evalJSON:NATIVE_JSON_PARSE_SUPPORT?parseJSON:evalJSON,include:include,startsWith:startsWith,endsWith:endsWith,empty:empty,blank:blank,interpolate:interpolate};})());var Template=Class.create({initialize:function(template,pattern){this.template=template.toString();this.pattern=pattern||Template.Pattern;},evaluate:function(object){if(object&&Object.isFunction(object.toTemplateReplacements))
object=object.toTemplateReplacements();return this.template.gsub(this.pattern,function(match){if(object==null)return(match[1]+'');var before=match[1]||'';if(before=='\\')return match[2];var ctx=object,expr=match[3],pattern=/^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/;match=pattern.exec(expr);if(match==null)return before;while(match!=null){var comp=match[1].startsWith('[')?match[2].replace(/\\\\]/g,']'):match[1];ctx=ctx[comp];if(null==ctx||''==match[3])break;expr=expr.substring('['==match[3]?match[1].length:match[0].length);match=pattern.exec(expr);}
return before+String.interpret(ctx);});}});Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;var $break={};var Enumerable=(function(){function each(iterator,context){var index=0;try{this._each(function(value){iterator.call(context,value,index++);});}catch(e){if(e!=$break)throw e;}
return this;}
function eachSlice(number,iterator,context){var index=-number,slices=[],array=this.toArray();if(number<1)return array;while((index+=number)<array.length)
slices.push(array.slice(index,index+number));return slices.collect(iterator,context);}
function all(iterator,context){iterator=iterator||Prototype.K;var result=true;this.each(function(value,index){result=result&&!!iterator.call(context,value,index);if(!result)throw $break;});return result;}
function any(iterator,context){iterator=iterator||Prototype.K;var result=false;this.each(function(value,index){if(result=!!iterator.call(context,value,index))
throw $break;});return result;}
function collect(iterator,context){iterator=iterator||Prototype.K;var results=[];this.each(function(value,index){results.push(iterator.call(context,value,index));});return results;}
function detect(iterator,context){var result;this.each(function(value,index){if(iterator.call(context,value,index)){result=value;throw $break;}});return result;}
function findAll(iterator,context){var results=[];this.each(function(value,index){if(iterator.call(context,value,index))
results.push(value);});return results;}
function grep(filter,iterator,context){iterator=iterator||Prototype.K;var results=[];if(Object.isString(filter))
filter=new RegExp(RegExp.escape(filter));this.each(function(value,index){if(filter.match(value))
results.push(iterator.call(context,value,index));});return results;}
function include(object){if(Object.isFunction(this.indexOf))
if(this.indexOf(object)!=-1)return true;var found=false;this.each(function(value){if(value==object){found=true;throw $break;}});return found;}
function inGroupsOf(number,fillWith){fillWith=Object.isUndefined(fillWith)?null:fillWith;return this.eachSlice(number,function(slice){while(slice.length<number)slice.push(fillWith);return slice;});}
function inject(memo,iterator,context){this.each(function(value,index){memo=iterator.call(context,memo,value,index);});return memo;}
function invoke(method){var args=$A(arguments).slice(1);return this.map(function(value){return value[method].apply(value,args);});}
function max(iterator,context){iterator=iterator||Prototype.K;var result;this.each(function(value,index){value=iterator.call(context,value,index);if(result==null||value>=result)
result=value;});return result;}
function min(iterator,context){iterator=iterator||Prototype.K;var result;this.each(function(value,index){value=iterator.call(context,value,index);if(result==null||value<result)
result=value;});return result;}
function partition(iterator,context){iterator=iterator||Prototype.K;var trues=[],falses=[];this.each(function(value,index){(iterator.call(context,value,index)?trues:falses).push(value);});return[trues,falses];}
function pluck(property){var results=[];this.each(function(value){results.push(value[property]);});return results;}
function reject(iterator,context){var results=[];this.each(function(value,index){if(!iterator.call(context,value,index))
results.push(value);});return results;}
function sortBy(iterator,context){return this.map(function(value,index){return{value:value,criteria:iterator.call(context,value,index)};}).sort(function(left,right){var a=left.criteria,b=right.criteria;return a<b?-1:a>b?1:0;}).pluck('value');}
function toArray(){return this.map();}
function zip(){var iterator=Prototype.K,args=$A(arguments);if(Object.isFunction(args.last()))
iterator=args.pop();var collections=[this].concat(args).map($A);return this.map(function(value,index){return iterator(collections.pluck(index));});}
function size(){return this.toArray().length;}
function inspect(){return'#<Enumerable:'+this.toArray().inspect()+'>';}
return{each:each,eachSlice:eachSlice,all:all,every:all,any:any,some:any,collect:collect,map:collect,detect:detect,findAll:findAll,select:findAll,filter:findAll,grep:grep,include:include,member:include,inGroupsOf:inGroupsOf,inject:inject,invoke:invoke,max:max,min:min,partition:partition,pluck:pluck,reject:reject,sortBy:sortBy,toArray:toArray,entries:toArray,zip:zip,size:size,inspect:inspect,find:detect};})();function $A(iterable){if(!iterable)return[];if('toArray'in Object(iterable))return iterable.toArray();var length=iterable.length||0,results=new Array(length);while(length--)results[length]=iterable[length];return results;}
function $w(string){if(!Object.isString(string))return[];string=string.strip();return string?string.split(/\s+/):[];}
Array.from=$A;(function(){var arrayProto=Array.prototype,slice=arrayProto.slice,_each=arrayProto.forEach;function each(iterator,context){for(var i=0,length=this.length>>>0;i<length;i++){if(i in this)iterator.call(context,this[i],i,this);}}
if(!_each)_each=each;function clear(){this.length=0;return this;}
function first(){return this[0];}
function last(){return this[this.length-1];}
function compact(){return this.select(function(value){return value!=null;});}
function flatten(){return this.inject([],function(array,value){if(Object.isArray(value))
return array.concat(value.flatten());array.push(value);return array;});}
function without(){var values=slice.call(arguments,0);return this.select(function(value){return!values.include(value);});}
function reverse(inline){return(inline===false?this.toArray():this)._reverse();}
function uniq(sorted){return this.inject([],function(array,value,index){if(0==index||(sorted?array.last()!=value:!array.include(value)))
array.push(value);return array;});}
function intersect(array){return this.uniq().findAll(function(item){return array.detect(function(value){return item===value});});}
function clone(){return slice.call(this,0);}
function size(){return this.length;}
function inspect(){return'['+this.map(Object.inspect).join(', ')+']';}
function indexOf(item,i){i||(i=0);var length=this.length;if(i<0)i=length+i;for(;i<length;i++)
if(this[i]===item)return i;return-1;}
function lastIndexOf(item,i){i=isNaN(i)?this.length:(i<0?this.length+i:i)+1;var n=this.slice(0,i).reverse().indexOf(item);return(n<0)?n:i-n-1;}
function concat(){var array=slice.call(this,0),item;for(var i=0,length=arguments.length;i<length;i++){item=arguments[i];if(Object.isArray(item)&&!('callee'in item)){for(var j=0,arrayLength=item.length;j<arrayLength;j++)
array.push(item[j]);}else{array.push(item);}}
return array;}
Object.extend(arrayProto,Enumerable);if(!arrayProto._reverse)
arrayProto._reverse=arrayProto.reverse;Object.extend(arrayProto,{_each:_each,clear:clear,first:first,last:last,compact:compact,flatten:flatten,without:without,reverse:reverse,uniq:uniq,intersect:intersect,clone:clone,toArray:clone,size:size,inspect:inspect});var CONCAT_ARGUMENTS_BUGGY=(function(){return[].concat(arguments)[0][0]!==1;})(1,2)
if(CONCAT_ARGUMENTS_BUGGY)arrayProto.concat=concat;if(!arrayProto.indexOf)arrayProto.indexOf=indexOf;if(!arrayProto.lastIndexOf)arrayProto.lastIndexOf=lastIndexOf;})();function $H(object){return new Hash(object);};var Hash=Class.create(Enumerable,(function(){function initialize(object){this._object=Object.isHash(object)?object.toObject():Object.clone(object);}
function _each(iterator){for(var key in this._object){var value=this._object[key],pair=[key,value];pair.key=key;pair.value=value;iterator(pair);}}
function set(key,value){return this._object[key]=value;}
function get(key){if(this._object[key]!==Object.prototype[key])
return this._object[key];}
function unset(key){var value=this._object[key];delete this._object[key];return value;}
function toObject(){return Object.clone(this._object);}
function keys(){return this.pluck('key');}
function values(){return this.pluck('value');}
function index(value){var match=this.detect(function(pair){return pair.value===value;});return match&&match.key;}
function merge(object){return this.clone().update(object);}
function update(object){return new Hash(object).inject(this,function(result,pair){result.set(pair.key,pair.value);return result;});}
function toQueryPair(key,value){if(Object.isUndefined(value))return key;return key+'='+encodeURIComponent(String.interpret(value));}
function toQueryString(){return this.inject([],function(results,pair){var key=encodeURIComponent(pair.key),values=pair.value;if(values&&typeof values=='object'){if(Object.isArray(values)){var queryValues=[];for(var i=0,len=values.length,value;i<len;i++){value=values[i];queryValues.push(toQueryPair(key,value));}
return results.concat(queryValues);}}else results.push(toQueryPair(key,values));return results;}).join('&');}
function inspect(){return'#<Hash:{'+this.map(function(pair){return pair.map(Object.inspect).join(': ');}).join(', ')+'}>';}
function clone(){return new Hash(this);}
return{initialize:initialize,_each:_each,set:set,get:get,unset:unset,toObject:toObject,toTemplateReplacements:toObject,keys:keys,values:values,index:index,merge:merge,update:update,toQueryString:toQueryString,inspect:inspect,toJSON:toObject,clone:clone};})());Hash.from=$H;Object.extend(Number.prototype,(function(){function toColorPart(){return this.toPaddedString(2,16);}
function succ(){return this+1;}
function times(iterator,context){$R(0,this,true).each(iterator,context);return this;}
function toPaddedString(length,radix){var string=this.toString(radix||10);return'0'.times(length-string.length)+string;}
function abs(){return Math.abs(this);}
function round(){return Math.round(this);}
function ceil(){return Math.ceil(this);}
function floor(){return Math.floor(this);}
return{toColorPart:toColorPart,succ:succ,times:times,toPaddedString:toPaddedString,abs:abs,round:round,ceil:ceil,floor:floor};})());function $R(start,end,exclusive){return new ObjectRange(start,end,exclusive);}
var ObjectRange=Class.create(Enumerable,(function(){function initialize(start,end,exclusive){this.start=start;this.end=end;this.exclusive=exclusive;}
function _each(iterator){var value=this.start;while(this.include(value)){iterator(value);value=value.succ();}}
function include(value){if(value<this.start)
return false;if(this.exclusive)
return value<this.end;return value<=this.end;}
return{initialize:initialize,_each:_each,include:include};})());var Ajax={getTransport:function(){return Try.these(function(){return new XMLHttpRequest()},function(){return new ActiveXObject('Msxml2.XMLHTTP')},function(){return new ActiveXObject('Microsoft.XMLHTTP')})||false;},activeRequestCount:0};Ajax.Responders={responders:[],_each:function(iterator){this.responders._each(iterator);},register:function(responder){if(!this.include(responder))
this.responders.push(responder);},unregister:function(responder){this.responders=this.responders.without(responder);},dispatch:function(callback,request,transport,json){this.each(function(responder){if(Object.isFunction(responder[callback])){try{responder[callback].apply(responder,[request,transport,json]);}catch(e){}}});}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++},onComplete:function(){Ajax.activeRequestCount--}});Ajax.Base=Class.create({initialize:function(options){this.options={method:'post',asynchronous:true,contentType:'application/x-www-form-urlencoded',encoding:'UTF-8',parameters:'',evalJSON:true,evalJS:true};Object.extend(this.options,options||{});this.options.method=this.options.method.toLowerCase();if(Object.isHash(this.options.parameters))
this.options.parameters=this.options.parameters.toObject();}});Ajax.Request=Class.create(Ajax.Base,{_complete:false,initialize:function($super,url,options){$super(options);this.transport=Ajax.getTransport();this.request(url);},request:function(url){this.url=url;this.method=this.options.method;var params=Object.isString(this.options.parameters)?this.options.parameters:Object.toQueryString(this.options.parameters);if(!['get','post'].include(this.method)){params+=(params?'&':'')+"_method="+this.method;this.method='post';}
if(params&&this.method==='get'){this.url+=(this.url.include('?')?'&':'?')+params;}
this.parameters=params.toQueryParams();try{var response=new Ajax.Response(this);if(this.options.onCreate)this.options.onCreate(response);Ajax.Responders.dispatch('onCreate',this,response);this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);if(this.options.asynchronous)this.respondToReadyState.bind(this).defer(1);this.transport.onreadystatechange=this.onStateChange.bind(this);this.setRequestHeaders();this.body=this.method=='post'?(this.options.postBody||params):null;this.transport.send(this.body);if(!this.options.asynchronous&&this.transport.overrideMimeType)
this.onStateChange();}
catch(e){this.dispatchException(e);}},onStateChange:function(){var readyState=this.transport.readyState;if(readyState>1&&!((readyState==4)&&this._complete))
this.respondToReadyState(this.transport.readyState);},setRequestHeaders:function(){var headers={'X-Requested-With':'XMLHttpRequest','X-Prototype-Version':Prototype.Version,'Accept':'text/javascript, text/html, application/xml, text/xml, */*'};if(this.method=='post'){headers['Content-type']=this.options.contentType+
(this.options.encoding?'; charset='+this.options.encoding:'');if(this.transport.overrideMimeType&&(navigator.userAgent.match(/Gecko\/(\d{4})/)||[0,2005])[1]<2005)
headers['Connection']='close';}
if(typeof this.options.requestHeaders=='object'){var extras=this.options.requestHeaders;if(Object.isFunction(extras.push))
for(var i=0,length=extras.length;i<length;i+=2)
headers[extras[i]]=extras[i+1];else
$H(extras).each(function(pair){headers[pair.key]=pair.value});}
for(var name in headers)
this.transport.setRequestHeader(name,headers[name]);},success:function(){var status=this.getStatus();return!status||(status>=200&&status<300)||status==304;},getStatus:function(){try{if(this.transport.status===1223)return 204;return this.transport.status||0;}catch(e){return 0}},respondToReadyState:function(readyState){var state=Ajax.Request.Events[readyState],response=new Ajax.Response(this);if(state=='Complete'){try{this._complete=true;(this.options['on'+response.status]||this.options['on'+(this.success()?'Success':'Failure')]||Prototype.emptyFunction)(response,response.headerJSON);}catch(e){this.dispatchException(e);}
var contentType=response.getHeader('Content-type');if(this.options.evalJS=='force'||(this.options.evalJS&&this.isSameOrigin()&&contentType&&contentType.match(/^\s*(text|application)\/(x-)?(java|ecma)script(;.*)?\s*$/i)))
this.evalResponse();}
try{(this.options['on'+state]||Prototype.emptyFunction)(response,response.headerJSON);Ajax.Responders.dispatch('on'+state,this,response,response.headerJSON);}catch(e){this.dispatchException(e);}
if(state=='Complete'){this.transport.onreadystatechange=Prototype.emptyFunction;}},isSameOrigin:function(){var m=this.url.match(/^\s*https?:\/\/[^\/]*/);return!m||(m[0]=='#{protocol}//#{domain}#{port}'.interpolate({protocol:location.protocol,domain:document.domain,port:location.port?':'+location.port:''}));},getHeader:function(name){try{return this.transport.getResponseHeader(name)||null;}catch(e){return null;}},evalResponse:function(){try{return eval((this.transport.responseText||'').unfilterJSON());}catch(e){this.dispatchException(e);}},dispatchException:function(exception){(this.options.onException||Prototype.emptyFunction)(this,exception);Ajax.Responders.dispatch('onException',this,exception);}});Ajax.Request.Events=['Uninitialized','Loading','Loaded','Interactive','Complete'];Ajax.Response=Class.create({initialize:function(request){this.request=request;var transport=this.transport=request.transport,readyState=this.readyState=transport.readyState;if((readyState>2&&!Prototype.Browser.IE)||readyState==4){this.status=this.getStatus();this.statusText=this.getStatusText();this.responseText=String.interpret(transport.responseText);this.headerJSON=this._getHeaderJSON();}
if(readyState==4){var xml=transport.responseXML;this.responseXML=Object.isUndefined(xml)?null:xml;this.responseJSON=this._getResponseJSON();}},status:0,statusText:'',getStatus:Ajax.Request.prototype.getStatus,getStatusText:function(){try{return this.transport.statusText||'';}catch(e){return''}},getHeader:Ajax.Request.prototype.getHeader,getAllHeaders:function(){try{return this.getAllResponseHeaders();}catch(e){return null}},getResponseHeader:function(name){return this.transport.getResponseHeader(name);},getAllResponseHeaders:function(){return this.transport.getAllResponseHeaders();},_getHeaderJSON:function(){var json=this.getHeader('X-JSON');if(!json)return null;json=decodeURIComponent(escape(json));try{return json.evalJSON(this.request.options.sanitizeJSON||!this.request.isSameOrigin());}catch(e){this.request.dispatchException(e);}},_getResponseJSON:function(){var options=this.request.options;if(!options.evalJSON||(options.evalJSON!='force'&&!(this.getHeader('Content-type')||'').include('application/json'))||this.responseText.blank())
return null;try{return this.responseText.evalJSON(options.sanitizeJSON||!this.request.isSameOrigin());}catch(e){this.request.dispatchException(e);}}});Ajax.Updater=Class.create(Ajax.Request,{initialize:function($super,container,url,options){this.container={success:(container.success||container),failure:(container.failure||(container.success?null:container))};options=Object.clone(options);var onComplete=options.onComplete;options.onComplete=(function(response,json){this.updateContent(response.responseText);if(Object.isFunction(onComplete))onComplete(response,json);}).bind(this);$super(url,options);},updateContent:function(responseText){var receiver=this.container[this.success()?'success':'failure'],options=this.options;if(!options.evalScripts)responseText=responseText.stripScripts();if(receiver=$(receiver)){if(options.insertion){if(Object.isString(options.insertion)){var insertion={};insertion[options.insertion]=responseText;receiver.insert(insertion);}
else options.insertion(receiver,responseText);}
else receiver.update(responseText);}}});Ajax.PeriodicalUpdater=Class.create(Ajax.Base,{initialize:function($super,container,url,options){$super(options);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=container;this.url=url;this.start();},start:function(){this.options.onComplete=this.updateComplete.bind(this);this.onTimerEvent();},stop:function(){this.updater.options.onComplete=undefined;clearTimeout(this.timer);(this.onComplete||Prototype.emptyFunction).apply(this,arguments);},updateComplete:function(response){if(this.options.decay){this.decay=(response.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=response.responseText;}
this.timer=this.onTimerEvent.bind(this).delay(this.decay*this.frequency);},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options);}});function $(element){if(arguments.length>1){for(var i=0,elements=[],length=arguments.length;i<length;i++)
elements.push($(arguments[i]));return elements;}
if(Object.isString(element))
element=document.getElementById(element);return Element.extend(element);}
if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(expression,parentElement){var results=[];var query=document.evaluate(expression,$(parentElement)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0,length=query.snapshotLength;i<length;i++)
results.push(Element.extend(query.snapshotItem(i)));return results;};}
if(!Node)var Node={};if(!Node.ELEMENT_NODE){Object.extend(Node,{ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12});}
(function(global){function shouldUseCache(tagName,attributes){if(tagName==='select')return false;if('type'in attributes)return false;return true;}
var HAS_EXTENDED_CREATE_ELEMENT_SYNTAX=(function(){try{var el=document.createElement('<input name="x">');return el.tagName.toLowerCase()==='input'&&el.name==='x';}
catch(err){return false;}})();var element=global.Element;global.Element=function(tagName,attributes){attributes=attributes||{};tagName=tagName.toLowerCase();var cache=Element.cache;if(HAS_EXTENDED_CREATE_ELEMENT_SYNTAX&&attributes.name){tagName='<'+tagName+' name="'+attributes.name+'">';delete attributes.name;return Element.writeAttribute(document.createElement(tagName),attributes);}
if(!cache[tagName])cache[tagName]=Element.extend(document.createElement(tagName));var node=shouldUseCache(tagName,attributes)?cache[tagName].cloneNode(false):document.createElement(tagName);return Element.writeAttribute(node,attributes);};Object.extend(global.Element,element||{});if(element)global.Element.prototype=element.prototype;})(this);Element.idCounter=1;Element.cache={};Element._purgeElement=function(element){var uid=element._prototypeUID;if(uid){Element.stopObserving(element);element._prototypeUID=void 0;delete Element.Storage[uid];}}
Element.Methods={visible:function(element){return $(element).style.display!='none';},toggle:function(element){element=$(element);Element[Element.visible(element)?'hide':'show'](element);return element;},hide:function(element){element=$(element);element.style.display='none';return element;},show:function(element){element=$(element);element.style.display='';return element;},remove:function(element){element=$(element);element.parentNode.removeChild(element);return element;},update:(function(){var SELECT_ELEMENT_INNERHTML_BUGGY=(function(){var el=document.createElement("select"),isBuggy=true;el.innerHTML="<option value=\"test\">test</option>";if(el.options&&el.options[0]){isBuggy=el.options[0].nodeName.toUpperCase()!=="OPTION";}
el=null;return isBuggy;})();var TABLE_ELEMENT_INNERHTML_BUGGY=(function(){try{var el=document.createElement("table");if(el&&el.tBodies){el.innerHTML="<tbody><tr><td>test</td></tr></tbody>";var isBuggy=typeof el.tBodies[0]=="undefined";el=null;return isBuggy;}}catch(e){return true;}})();var LINK_ELEMENT_INNERHTML_BUGGY=(function(){try{var el=document.createElement('div');el.innerHTML="<link>";var isBuggy=(el.childNodes.length===0);el=null;return isBuggy;}catch(e){return true;}})();var ANY_INNERHTML_BUGGY=SELECT_ELEMENT_INNERHTML_BUGGY||TABLE_ELEMENT_INNERHTML_BUGGY||LINK_ELEMENT_INNERHTML_BUGGY;var SCRIPT_ELEMENT_REJECTS_TEXTNODE_APPENDING=(function(){var s=document.createElement("script"),isBuggy=false;try{s.appendChild(document.createTextNode(""));isBuggy=!s.firstChild||s.firstChild&&s.firstChild.nodeType!==3;}catch(e){isBuggy=true;}
s=null;return isBuggy;})();function update(element,content){element=$(element);var purgeElement=Element._purgeElement;var descendants=element.getElementsByTagName('*'),i=descendants.length;while(i--)purgeElement(descendants[i]);if(content&&content.toElement)
content=content.toElement();if(Object.isElement(content))
return element.update().insert(content);content=Object.toHTML(content);var tagName=element.tagName.toUpperCase();if(tagName==='SCRIPT'&&SCRIPT_ELEMENT_REJECTS_TEXTNODE_APPENDING){element.text=content;return element;}
if(ANY_INNERHTML_BUGGY){if(tagName in Element._insertionTranslations.tags){while(element.firstChild){element.removeChild(element.firstChild);}
Element._getContentFromAnonymousElement(tagName,content.stripScripts()).each(function(node){element.appendChild(node)});}else if(LINK_ELEMENT_INNERHTML_BUGGY&&Object.isString(content)&&content.indexOf('<link')>-1){while(element.firstChild){element.removeChild(element.firstChild);}
var nodes=Element._getContentFromAnonymousElement(tagName,content.stripScripts(),true);nodes.each(function(node){element.appendChild(node)});}
else{element.innerHTML=content.stripScripts();}}
else{element.innerHTML=content.stripScripts();}
content.evalScripts.bind(content).defer();return element;}
return update;})(),replace:function(element,content){element=$(element);if(content&&content.toElement)content=content.toElement();else if(!Object.isElement(content)){content=Object.toHTML(content);var range=element.ownerDocument.createRange();range.selectNode(element);content.evalScripts.bind(content).defer();content=range.createContextualFragment(content.stripScripts());}
element.parentNode.replaceChild(content,element);return element;},insert:function(element,insertions){element=$(element);if(Object.isString(insertions)||Object.isNumber(insertions)||Object.isElement(insertions)||(insertions&&(insertions.toElement||insertions.toHTML)))
insertions={bottom:insertions};var content,insert,tagName,childNodes;for(var position in insertions){content=insertions[position];position=position.toLowerCase();insert=Element._insertionTranslations[position];if(content&&content.toElement)content=content.toElement();if(Object.isElement(content)){insert(element,content);continue;}
content=Object.toHTML(content);tagName=((position=='before'||position=='after')?element.parentNode:element).tagName.toUpperCase();childNodes=Element._getContentFromAnonymousElement(tagName,content.stripScripts());if(position=='top'||position=='after')childNodes.reverse();childNodes.each(insert.curry(element));content.evalScripts.bind(content).defer();}
return element;},wrap:function(element,wrapper,attributes){element=$(element);if(Object.isElement(wrapper))
$(wrapper).writeAttribute(attributes||{});else if(Object.isString(wrapper))wrapper=new Element(wrapper,attributes);else wrapper=new Element('div',wrapper);if(element.parentNode)
element.parentNode.replaceChild(wrapper,element);wrapper.appendChild(element);return wrapper;},inspect:function(element){element=$(element);var result='<'+element.tagName.toLowerCase();$H({'id':'id','className':'class'}).each(function(pair){var property=pair.first(),attribute=pair.last(),value=(element[property]||'').toString();if(value)result+=' '+attribute+'='+value.inspect(true);});return result+'>';},recursivelyCollect:function(element,property,maximumLength){element=$(element);maximumLength=maximumLength||-1;var elements=[];while(element=element[property]){if(element.nodeType==1)
elements.push(Element.extend(element));if(elements.length==maximumLength)
break;}
return elements;},ancestors:function(element){return Element.recursivelyCollect(element,'parentNode');},descendants:function(element){return Element.select(element,"*");},firstDescendant:function(element){element=$(element).firstChild;while(element&&element.nodeType!=1)element=element.nextSibling;return $(element);},immediateDescendants:function(element){var results=[],child=$(element).firstChild;while(child){if(child.nodeType===1){results.push(Element.extend(child));}
child=child.nextSibling;}
return results;},previousSiblings:function(element,maximumLength){return Element.recursivelyCollect(element,'previousSibling');},nextSiblings:function(element){return Element.recursivelyCollect(element,'nextSibling');},siblings:function(element){element=$(element);return Element.previousSiblings(element).reverse().concat(Element.nextSiblings(element));},match:function(element,selector){element=$(element);if(Object.isString(selector))
return Prototype.Selector.match(element,selector);return selector.match(element);},up:function(element,expression,index){element=$(element);if(arguments.length==1)return $(element.parentNode);var ancestors=Element.ancestors(element);return Object.isNumber(expression)?ancestors[expression]:Prototype.Selector.find(ancestors,expression,index);},down:function(element,expression,index){element=$(element);if(arguments.length==1)return Element.firstDescendant(element);return Object.isNumber(expression)?Element.descendants(element)[expression]:Element.select(element,expression)[index||0];},previous:function(element,expression,index){element=$(element);if(Object.isNumber(expression))index=expression,expression=false;if(!Object.isNumber(index))index=0;if(expression){return Prototype.Selector.find(element.previousSiblings(),expression,index);}else{return element.recursivelyCollect("previousSibling",index+1)[index];}},next:function(element,expression,index){element=$(element);if(Object.isNumber(expression))index=expression,expression=false;if(!Object.isNumber(index))index=0;if(expression){return Prototype.Selector.find(element.nextSiblings(),expression,index);}else{var maximumLength=Object.isNumber(index)?index+1:1;return element.recursivelyCollect("nextSibling",index+1)[index];}},select:function(element){element=$(element);var expressions=Array.prototype.slice.call(arguments,1).join(', ');return Prototype.Selector.select(expressions,element);},adjacent:function(element){element=$(element);var expressions=Array.prototype.slice.call(arguments,1).join(', ');return Prototype.Selector.select(expressions,element.parentNode).without(element);},identify:function(element){element=$(element);var id=Element.readAttribute(element,'id');if(id)return id;do{id='anonymous_element_'+Element.idCounter++}while($(id));Element.writeAttribute(element,'id',id);return id;},readAttribute:function(element,name){element=$(element);if(Prototype.Browser.IE){var t=Element._attributeTranslations.read;if(t.values[name])return t.values[name](element,name);if(t.names[name])name=t.names[name];if(name.include(':')){return(!element.attributes||!element.attributes[name])?null:element.attributes[name].value;}}
return element.getAttribute(name);},writeAttribute:function(element,name,value){element=$(element);var attributes={},t=Element._attributeTranslations.write;if(typeof name=='object')attributes=name;else attributes[name]=Object.isUndefined(value)?true:value;for(var attr in attributes){name=t.names[attr]||attr;value=attributes[attr];if(t.values[attr])name=t.values[attr](element,value);if(value===false||value===null)
element.removeAttribute(name);else if(value===true)
element.setAttribute(name,name);else element.setAttribute(name,value);}
return element;},getHeight:function(element){return Element.getDimensions(element).height;},getWidth:function(element){return Element.getDimensions(element).width;},classNames:function(element){return new Element.ClassNames(element);},hasClassName:function(element,className){if(!(element=$(element)))return;var elementClassName=element.className;return(elementClassName.length>0&&(elementClassName==className||new RegExp("(^|\\s)"+className+"(\\s|$)").test(elementClassName)));},addClassName:function(element,className){if(!(element=$(element)))return;if(!Element.hasClassName(element,className))
element.className+=(element.className?' ':'')+className;return element;},removeClassName:function(element,className){if(!(element=$(element)))return;element.className=element.className.replace(new RegExp("(^|\\s+)"+className+"(\\s+|$)"),' ').strip();return element;},toggleClassName:function(element,className){if(!(element=$(element)))return;return Element[Element.hasClassName(element,className)?'removeClassName':'addClassName'](element,className);},cleanWhitespace:function(element){element=$(element);var node=element.firstChild;while(node){var nextNode=node.nextSibling;if(node.nodeType==3&&!/\S/.test(node.nodeValue))
element.removeChild(node);node=nextNode;}
return element;},empty:function(element){return $(element).innerHTML.blank();},descendantOf:function(element,ancestor){element=$(element),ancestor=$(ancestor);if(element.compareDocumentPosition)
return(element.compareDocumentPosition(ancestor)&8)===8;if(ancestor.contains)
return ancestor.contains(element)&&ancestor!==element;while(element=element.parentNode)
if(element==ancestor)return true;return false;},scrollTo:function(element){element=$(element);var pos=Element.cumulativeOffset(element);window.scrollTo(pos[0],pos[1]);return element;},getStyle:function(element,style){element=$(element);style=style=='float'?'cssFloat':style.camelize();var value=element.style[style];if(!value||value=='auto'){var css=document.defaultView.getComputedStyle(element,null);value=css?css[style]:null;}
if(style=='opacity')return value?parseFloat(value):1.0;return value=='auto'?null:value;},getOpacity:function(element){return $(element).getStyle('opacity');},setStyle:function(element,styles){element=$(element);var elementStyle=element.style,match;if(Object.isString(styles)){element.style.cssText+=';'+styles;return styles.include('opacity')?element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]):element;}
for(var property in styles)
if(property=='opacity')element.setOpacity(styles[property]);else
elementStyle[(property=='float'||property=='cssFloat')?(Object.isUndefined(elementStyle.styleFloat)?'cssFloat':'styleFloat'):property]=styles[property];return element;},setOpacity:function(element,value){element=$(element);element.style.opacity=(value==1||value==='')?'':(value<0.00001)?0:value;return element;},makePositioned:function(element){element=$(element);var pos=Element.getStyle(element,'position');if(pos=='static'||!pos){element._madePositioned=true;element.style.position='relative';if(Prototype.Browser.Opera){element.style.top=0;element.style.left=0;}}
return element;},undoPositioned:function(element){element=$(element);if(element._madePositioned){element._madePositioned=undefined;element.style.position=element.style.top=element.style.left=element.style.bottom=element.style.right='';}
return element;},makeClipping:function(element){element=$(element);if(element._overflow)return element;element._overflow=Element.getStyle(element,'overflow')||'auto';if(element._overflow!=='hidden')
element.style.overflow='hidden';return element;},undoClipping:function(element){element=$(element);if(!element._overflow)return element;element.style.overflow=element._overflow=='auto'?'':element._overflow;element._overflow=null;return element;},clonePosition:function(element,source){var options=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});source=$(source);var p=Element.viewportOffset(source),delta=[0,0],parent=null;element=$(element);if(Element.getStyle(element,'position')=='absolute'){parent=Element.getOffsetParent(element);delta=Element.viewportOffset(parent);}
if(parent==document.body){delta[0]-=document.body.offsetLeft;delta[1]-=document.body.offsetTop;}
if(options.setLeft)element.style.left=(p[0]-delta[0]+options.offsetLeft)+'px';if(options.setTop)element.style.top=(p[1]-delta[1]+options.offsetTop)+'px';if(options.setWidth)element.style.width=source.offsetWidth+'px';if(options.setHeight)element.style.height=source.offsetHeight+'px';return element;}};Object.extend(Element.Methods,{getElementsBySelector:Element.Methods.select,childElements:Element.Methods.immediateDescendants});Element._attributeTranslations={write:{names:{className:'class',htmlFor:'for'},values:{}}};if(Prototype.Browser.Opera){Element.Methods.getStyle=Element.Methods.getStyle.wrap(function(proceed,element,style){switch(style){case'height':case'width':if(!Element.visible(element))return null;var dim=parseInt(proceed(element,style),10);if(dim!==element['offset'+style.capitalize()])
return dim+'px';var properties;if(style==='height'){properties=['border-top-width','padding-top','padding-bottom','border-bottom-width'];}
else{properties=['border-left-width','padding-left','padding-right','border-right-width'];}
return properties.inject(dim,function(memo,property){var val=proceed(element,property);return val===null?memo:memo-parseInt(val,10);})+'px';default:return proceed(element,style);}});Element.Methods.readAttribute=Element.Methods.readAttribute.wrap(function(proceed,element,attribute){if(attribute==='title')return element.title;return proceed(element,attribute);});}
else if(Prototype.Browser.IE){Element.Methods.getStyle=function(element,style){element=$(element);style=(style=='float'||style=='cssFloat')?'styleFloat':style.camelize();var value=element.style[style];if(!value&&element.currentStyle)value=element.currentStyle[style];if(style=='opacity'){if(value=(element.getStyle('filter')||'').match(/alpha\(opacity=(.*)\)/))
if(value[1])return parseFloat(value[1])/100;return 1.0;}
if(value=='auto'){if((style=='width'||style=='height')&&(element.getStyle('display')!='none'))
return element['offset'+style.capitalize()]+'px';return null;}
return value;};Element.Methods.setOpacity=function(element,value){function stripAlpha(filter){return filter.replace(/alpha\([^\)]*\)/gi,'');}
element=$(element);var currentStyle=element.currentStyle;if((currentStyle&&!currentStyle.hasLayout)||(!currentStyle&&element.style.zoom=='normal'))
element.style.zoom=1;var filter=element.getStyle('filter'),style=element.style;if(value==1||value===''){(filter=stripAlpha(filter))?style.filter=filter:style.removeAttribute('filter');return element;}else if(value<0.00001)value=0;style.filter=stripAlpha(filter)+'alpha(opacity='+(value*100)+')';return element;};Element._attributeTranslations=(function(){var classProp='className',forProp='for',el=document.createElement('div');el.setAttribute(classProp,'x');if(el.className!=='x'){el.setAttribute('class','x');if(el.className==='x'){classProp='class';}}
el=null;el=document.createElement('label');el.setAttribute(forProp,'x');if(el.htmlFor!=='x'){el.setAttribute('htmlFor','x');if(el.htmlFor==='x'){forProp='htmlFor';}}
el=null;return{read:{names:{'class':classProp,'className':classProp,'for':forProp,'htmlFor':forProp},values:{_getAttr:function(element,attribute){return element.getAttribute(attribute);},_getAttr2:function(element,attribute){return element.getAttribute(attribute,2);},_getAttrNode:function(element,attribute){var node=element.getAttributeNode(attribute);return node?node.value:"";},_getEv:(function(){var el=document.createElement('div'),f;el.onclick=Prototype.emptyFunction;var value=el.getAttribute('onclick');if(String(value).indexOf('{')>-1){f=function(element,attribute){attribute=element.getAttribute(attribute);if(!attribute)return null;attribute=attribute.toString();attribute=attribute.split('{')[1];attribute=attribute.split('}')[0];return attribute.strip();};}
else if(value===''){f=function(element,attribute){attribute=element.getAttribute(attribute);if(!attribute)return null;return attribute.strip();};}
el=null;return f;})(),_flag:function(element,attribute){return $(element).hasAttribute(attribute)?attribute:null;},style:function(element){return element.style.cssText.toLowerCase();},title:function(element){return element.title;}}}}})();Element._attributeTranslations.write={names:Object.extend({cellpadding:'cellPadding',cellspacing:'cellSpacing'},Element._attributeTranslations.read.names),values:{checked:function(element,value){element.checked=!!value;},style:function(element,value){element.style.cssText=value?value:'';}}};Element._attributeTranslations.has={};$w('colSpan rowSpan vAlign dateTime accessKey tabIndex '+'encType maxLength readOnly longDesc frameBorder').each(function(attr){Element._attributeTranslations.write.names[attr.toLowerCase()]=attr;Element._attributeTranslations.has[attr.toLowerCase()]=attr;});(function(v){Object.extend(v,{href:v._getAttr2,src:v._getAttr2,type:v._getAttr,action:v._getAttrNode,disabled:v._flag,checked:v._flag,readonly:v._flag,multiple:v._flag,onload:v._getEv,onunload:v._getEv,onclick:v._getEv,ondblclick:v._getEv,onmousedown:v._getEv,onmouseup:v._getEv,onmouseover:v._getEv,onmousemove:v._getEv,onmouseout:v._getEv,onfocus:v._getEv,onblur:v._getEv,onkeypress:v._getEv,onkeydown:v._getEv,onkeyup:v._getEv,onsubmit:v._getEv,onreset:v._getEv,onselect:v._getEv,onchange:v._getEv});})(Element._attributeTranslations.read.values);if(Prototype.BrowserFeatures.ElementExtensions){(function(){function _descendants(element){var nodes=element.getElementsByTagName('*'),results=[];for(var i=0,node;node=nodes[i];i++)
if(node.tagName!=="!")
results.push(node);return results;}
Element.Methods.down=function(element,expression,index){element=$(element);if(arguments.length==1)return element.firstDescendant();return Object.isNumber(expression)?_descendants(element)[expression]:Element.select(element,expression)[index||0];}})();}}
else if(Prototype.Browser.Gecko&&/rv:1\.8\.0/.test(navigator.userAgent)){Element.Methods.setOpacity=function(element,value){element=$(element);element.style.opacity=(value==1)?0.999999:(value==='')?'':(value<0.00001)?0:value;return element;};}
else if(Prototype.Browser.WebKit){Element.Methods.setOpacity=function(element,value){element=$(element);element.style.opacity=(value==1||value==='')?'':(value<0.00001)?0:value;if(value==1)
if(element.tagName.toUpperCase()=='IMG'&&element.width){element.width++;element.width--;}else try{var n=document.createTextNode(' ');element.appendChild(n);element.removeChild(n);}catch(e){}
return element;};}
if('outerHTML'in document.documentElement){Element.Methods.replace=function(element,content){element=$(element);if(content&&content.toElement)content=content.toElement();if(Object.isElement(content)){element.parentNode.replaceChild(content,element);return element;}
content=Object.toHTML(content);var parent=element.parentNode,tagName=parent.tagName.toUpperCase();if(Element._insertionTranslations.tags[tagName]){var nextSibling=element.next(),fragments=Element._getContentFromAnonymousElement(tagName,content.stripScripts());parent.removeChild(element);if(nextSibling)
fragments.each(function(node){parent.insertBefore(node,nextSibling)});else
fragments.each(function(node){parent.appendChild(node)});}
else element.outerHTML=content.stripScripts();content.evalScripts.bind(content).defer();return element;};}
Element._returnOffset=function(l,t){var result=[l,t];result.left=l;result.top=t;return result;};Element._getContentFromAnonymousElement=function(tagName,html,force){var div=new Element('div'),t=Element._insertionTranslations.tags[tagName];var workaround=false;if(t)workaround=true;else if(force){workaround=true;t=['','',0];}
if(workaround){div.innerHTML=' '+t[0]+html+t[1];div.removeChild(div.firstChild);for(var i=t[2];i--;){div=div.firstChild;}}
else{div.innerHTML=html;}
return $A(div.childNodes);};Element._insertionTranslations={before:function(element,node){element.parentNode.insertBefore(node,element);},top:function(element,node){element.insertBefore(node,element.firstChild);},bottom:function(element,node){element.appendChild(node);},after:function(element,node){element.parentNode.insertBefore(node,element.nextSibling);},tags:{TABLE:['<table>','</table>',1],TBODY:['<table><tbody>','</tbody></table>',2],TR:['<table><tbody><tr>','</tr></tbody></table>',3],TD:['<table><tbody><tr><td>','</td></tr></tbody></table>',4],SELECT:['<select>','</select>',1]}};(function(){var tags=Element._insertionTranslations.tags;Object.extend(tags,{THEAD:tags.TBODY,TFOOT:tags.TBODY,TH:tags.TD});})();Element.Methods.Simulated={hasAttribute:function(element,attribute){attribute=Element._attributeTranslations.has[attribute]||attribute;var node=$(element).getAttributeNode(attribute);return!!(node&&node.specified);}};Element.Methods.ByTag={};Object.extend(Element,Element.Methods);(function(div){if(!Prototype.BrowserFeatures.ElementExtensions&&div['__proto__']){window.HTMLElement={};window.HTMLElement.prototype=div['__proto__'];Prototype.BrowserFeatures.ElementExtensions=true;}
div=null;})(document.createElement('div'));Element.extend=(function(){function checkDeficiency(tagName){if(typeof window.Element!='undefined'){var proto=window.Element.prototype;if(proto){var id='_'+(Math.random()+'').slice(2),el=document.createElement(tagName);proto[id]='x';var isBuggy=(el[id]!=='x');delete proto[id];el=null;return isBuggy;}}
return false;}
function extendElementWith(element,methods){for(var property in methods){var value=methods[property];if(Object.isFunction(value)&&!(property in element))
element[property]=value.methodize();}}
var HTMLOBJECTELEMENT_PROTOTYPE_BUGGY=checkDeficiency('object');if(Prototype.BrowserFeatures.SpecificElementExtensions){if(HTMLOBJECTELEMENT_PROTOTYPE_BUGGY){return function(element){if(element&&typeof element._extendedByPrototype=='undefined'){var t=element.tagName;if(t&&(/^(?:object|applet|embed)$/i.test(t))){extendElementWith(element,Element.Methods);extendElementWith(element,Element.Methods.Simulated);extendElementWith(element,Element.Methods.ByTag[t.toUpperCase()]);}}
return element;}}
return Prototype.K;}
var Methods={},ByTag=Element.Methods.ByTag;var extend=Object.extend(function(element){if(!element||typeof element._extendedByPrototype!='undefined'||element.nodeType!=1||element==window)return element;var methods=Object.clone(Methods),tagName=element.tagName.toUpperCase();if(ByTag[tagName])Object.extend(methods,ByTag[tagName]);extendElementWith(element,methods);element._extendedByPrototype=Prototype.emptyFunction;return element;},{refresh:function(){if(!Prototype.BrowserFeatures.ElementExtensions){Object.extend(Methods,Element.Methods);Object.extend(Methods,Element.Methods.Simulated);}}});extend.refresh();return extend;})();if(document.documentElement.hasAttribute){Element.hasAttribute=function(element,attribute){return element.hasAttribute(attribute);};}
else{Element.hasAttribute=Element.Methods.Simulated.hasAttribute;}
Element.addMethods=function(methods){var F=Prototype.BrowserFeatures,T=Element.Methods.ByTag;if(!methods){Object.extend(Form,Form.Methods);Object.extend(Form.Element,Form.Element.Methods);Object.extend(Element.Methods.ByTag,{"FORM":Object.clone(Form.Methods),"INPUT":Object.clone(Form.Element.Methods),"SELECT":Object.clone(Form.Element.Methods),"TEXTAREA":Object.clone(Form.Element.Methods),"BUTTON":Object.clone(Form.Element.Methods)});}
if(arguments.length==2){var tagName=methods;methods=arguments[1];}
if(!tagName)Object.extend(Element.Methods,methods||{});else{if(Object.isArray(tagName))tagName.each(extend);else extend(tagName);}
function extend(tagName){tagName=tagName.toUpperCase();if(!Element.Methods.ByTag[tagName])
Element.Methods.ByTag[tagName]={};Object.extend(Element.Methods.ByTag[tagName],methods);}
function copy(methods,destination,onlyIfAbsent){onlyIfAbsent=onlyIfAbsent||false;for(var property in methods){var value=methods[property];if(!Object.isFunction(value))continue;if(!onlyIfAbsent||!(property in destination))
destination[property]=value.methodize();}}
function findDOMClass(tagName){var klass;var trans={"OPTGROUP":"OptGroup","TEXTAREA":"TextArea","P":"Paragraph","FIELDSET":"FieldSet","UL":"UList","OL":"OList","DL":"DList","DIR":"Directory","H1":"Heading","H2":"Heading","H3":"Heading","H4":"Heading","H5":"Heading","H6":"Heading","Q":"Quote","INS":"Mod","DEL":"Mod","A":"Anchor","IMG":"Image","CAPTION":"TableCaption","COL":"TableCol","COLGROUP":"TableCol","THEAD":"TableSection","TFOOT":"TableSection","TBODY":"TableSection","TR":"TableRow","TH":"TableCell","TD":"TableCell","FRAMESET":"FrameSet","IFRAME":"IFrame"};if(trans[tagName])klass='HTML'+trans[tagName]+'Element';if(window[klass])return window[klass];klass='HTML'+tagName+'Element';if(window[klass])return window[klass];klass='HTML'+tagName.capitalize()+'Element';if(window[klass])return window[klass];var element=document.createElement(tagName),proto=element['__proto__']||element.constructor.prototype;element=null;return proto;}
var elementPrototype=window.HTMLElement?HTMLElement.prototype:Element.prototype;if(F.ElementExtensions){copy(Element.Methods,elementPrototype);copy(Element.Methods.Simulated,elementPrototype,true);}
if(F.SpecificElementExtensions){for(var tag in Element.Methods.ByTag){var klass=findDOMClass(tag);if(Object.isUndefined(klass))continue;copy(T[tag],klass.prototype);}}
Object.extend(Element,Element.Methods);delete Element.ByTag;if(Element.extend.refresh)Element.extend.refresh();Element.cache={};};document.viewport={getDimensions:function(){return{width:this.getWidth(),height:this.getHeight()};},getScrollOffsets:function(){return Element._returnOffset(window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft,window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop);}};(function(viewport){var B=Prototype.Browser,doc=document,element,property={};function getRootElement(){if(B.WebKit&&!doc.evaluate)
return document;if(B.Opera&&window.parseFloat(window.opera.version())<9.5)
return document.body;return document.documentElement;}
function define(D){if(!element)element=getRootElement();property[D]='client'+D;viewport['get'+D]=function(){return element[property[D]]};return viewport['get'+D]();}
viewport.getWidth=define.curry('Width');viewport.getHeight=define.curry('Height');})(document.viewport);Element.Storage={UID:1};Element.addMethods({getStorage:function(element){if(!(element=$(element)))return;var uid;if(element===window){uid=0;}else{if(typeof element._prototypeUID==="undefined")
element._prototypeUID=Element.Storage.UID++;uid=element._prototypeUID;}
if(!Element.Storage[uid])
Element.Storage[uid]=$H();return Element.Storage[uid];},store:function(element,key,value){if(!(element=$(element)))return;if(arguments.length===2){Element.getStorage(element).update(key);}else{Element.getStorage(element).set(key,value);}
return element;},retrieve:function(element,key,defaultValue){if(!(element=$(element)))return;var hash=Element.getStorage(element),value=hash.get(key);if(Object.isUndefined(value)){hash.set(key,defaultValue);value=defaultValue;}
return value;},clone:function(element,deep){if(!(element=$(element)))return;var clone=element.cloneNode(deep);clone._prototypeUID=void 0;if(deep){var descendants=Element.select(clone,'*'),i=descendants.length;while(i--){descendants[i]._prototypeUID=void 0;}}
return Element.extend(clone);},purge:function(element){if(!(element=$(element)))return;var purgeElement=Element._purgeElement;purgeElement(element);var descendants=element.getElementsByTagName('*'),i=descendants.length;while(i--)purgeElement(descendants[i]);return null;}});(function(){function toDecimal(pctString){var match=pctString.match(/^(\d+)%?$/i);if(!match)return null;return(Number(match[1])/100);}
function getPixelValue(value,property,context){var element=null;if(Object.isElement(value)){element=value;value=element.getStyle(property);}
if(value===null){return null;}
if((/^(?:-)?\d+(\.\d+)?(px)?$/i).test(value)){return window.parseFloat(value);}
var isPercentage=value.include('%'),isViewport=(context===document.viewport);if(/\d/.test(value)&&element&&element.runtimeStyle&&!(isPercentage&&isViewport)){var style=element.style.left,rStyle=element.runtimeStyle.left;element.runtimeStyle.left=element.currentStyle.left;element.style.left=value||0;value=element.style.pixelLeft;element.style.left=style;element.runtimeStyle.left=rStyle;return value;}
if(element&&isPercentage){context=context||element.parentNode;var decimal=toDecimal(value);var whole=null;var position=element.getStyle('position');var isHorizontal=property.include('left')||property.include('right')||property.include('width');var isVertical=property.include('top')||property.include('bottom')||property.include('height');if(context===document.viewport){if(isHorizontal){whole=document.viewport.getWidth();}else if(isVertical){whole=document.viewport.getHeight();}}else{if(isHorizontal){whole=$(context).measure('width');}else if(isVertical){whole=$(context).measure('height');}}
return(whole===null)?0:whole*decimal;}
return 0;}
function toCSSPixels(number){if(Object.isString(number)&&number.endsWith('px')){return number;}
return number+'px';}
function isDisplayed(element){var originalElement=element;while(element&&element.parentNode){var display=element.getStyle('display');if(display==='none'){return false;}
element=$(element.parentNode);}
return true;}
var hasLayout=Prototype.K;if('currentStyle'in document.documentElement){hasLayout=function(element){if(!element.currentStyle.hasLayout){element.style.zoom=1;}
return element;};}
function cssNameFor(key){if(key.include('border'))key=key+'-width';return key.camelize();}
Element.Layout=Class.create(Hash,{initialize:function($super,element,preCompute){$super();this.element=$(element);Element.Layout.PROPERTIES.each(function(property){this._set(property,null);},this);if(preCompute){this._preComputing=true;this._begin();Element.Layout.PROPERTIES.each(this._compute,this);this._end();this._preComputing=false;}},_set:function(property,value){return Hash.prototype.set.call(this,property,value);},set:function(property,value){throw"Properties of Element.Layout are read-only.";},get:function($super,property){var value=$super(property);return value===null?this._compute(property):value;},_begin:function(){if(this._prepared)return;var element=this.element;if(isDisplayed(element)){this._prepared=true;return;}
var originalStyles={position:element.style.position||'',width:element.style.width||'',visibility:element.style.visibility||'',display:element.style.display||''};element.store('prototype_original_styles',originalStyles);var position=element.getStyle('position'),width=element.getStyle('width');if(width==="0px"||width===null){element.style.display='block';width=element.getStyle('width');}
var context=(position==='fixed')?document.viewport:element.parentNode;element.setStyle({position:'absolute',visibility:'hidden',display:'block'});var positionedWidth=element.getStyle('width');var newWidth;if(width&&(positionedWidth===width)){newWidth=getPixelValue(element,'width',context);}else if(position==='absolute'||position==='fixed'){newWidth=getPixelValue(element,'width',context);}else{var parent=element.parentNode,pLayout=$(parent).getLayout();newWidth=pLayout.get('width')-
this.get('margin-left')-
this.get('border-left')-
this.get('padding-left')-
this.get('padding-right')-
this.get('border-right')-
this.get('margin-right');}
element.setStyle({width:newWidth+'px'});this._prepared=true;},_end:function(){var element=this.element;var originalStyles=element.retrieve('prototype_original_styles');element.store('prototype_original_styles',null);element.setStyle(originalStyles);this._prepared=false;},_compute:function(property){var COMPUTATIONS=Element.Layout.COMPUTATIONS;if(!(property in COMPUTATIONS)){throw"Property not found.";}
return this._set(property,COMPUTATIONS[property].call(this,this.element));},toObject:function(){var args=$A(arguments);var keys=(args.length===0)?Element.Layout.PROPERTIES:args.join(' ').split(' ');var obj={};keys.each(function(key){if(!Element.Layout.PROPERTIES.include(key))return;var value=this.get(key);if(value!=null)obj[key]=value;},this);return obj;},toHash:function(){var obj=this.toObject.apply(this,arguments);return new Hash(obj);},toCSS:function(){var args=$A(arguments);var keys=(args.length===0)?Element.Layout.PROPERTIES:args.join(' ').split(' ');var css={};keys.each(function(key){if(!Element.Layout.PROPERTIES.include(key))return;if(Element.Layout.COMPOSITE_PROPERTIES.include(key))return;var value=this.get(key);if(value!=null)css[cssNameFor(key)]=value+'px';},this);return css;},inspect:function(){return"#<Element.Layout>";}});Object.extend(Element.Layout,{PROPERTIES:$w('height width top left right bottom border-left border-right border-top border-bottom padding-left padding-right padding-top padding-bottom margin-top margin-bottom margin-left margin-right padding-box-width padding-box-height border-box-width border-box-height margin-box-width margin-box-height'),COMPOSITE_PROPERTIES:$w('padding-box-width padding-box-height margin-box-width margin-box-height border-box-width border-box-height'),COMPUTATIONS:{'height':function(element){if(!this._preComputing)this._begin();var bHeight=this.get('border-box-height');if(bHeight<=0){if(!this._preComputing)this._end();return 0;}
var bTop=this.get('border-top'),bBottom=this.get('border-bottom');var pTop=this.get('padding-top'),pBottom=this.get('padding-bottom');if(!this._preComputing)this._end();return bHeight-bTop-bBottom-pTop-pBottom;},'width':function(element){if(!this._preComputing)this._begin();var bWidth=this.get('border-box-width');if(bWidth<=0){if(!this._preComputing)this._end();return 0;}
var bLeft=this.get('border-left'),bRight=this.get('border-right');var pLeft=this.get('padding-left'),pRight=this.get('padding-right');if(!this._preComputing)this._end();return bWidth-bLeft-bRight-pLeft-pRight;},'padding-box-height':function(element){var height=this.get('height'),pTop=this.get('padding-top'),pBottom=this.get('padding-bottom');return height+pTop+pBottom;},'padding-box-width':function(element){var width=this.get('width'),pLeft=this.get('padding-left'),pRight=this.get('padding-right');return width+pLeft+pRight;},'border-box-height':function(element){if(!this._preComputing)this._begin();var height=element.offsetHeight;if(!this._preComputing)this._end();return height;},'border-box-width':function(element){if(!this._preComputing)this._begin();var width=element.offsetWidth;if(!this._preComputing)this._end();return width;},'margin-box-height':function(element){var bHeight=this.get('border-box-height'),mTop=this.get('margin-top'),mBottom=this.get('margin-bottom');if(bHeight<=0)return 0;return bHeight+mTop+mBottom;},'margin-box-width':function(element){var bWidth=this.get('border-box-width'),mLeft=this.get('margin-left'),mRight=this.get('margin-right');if(bWidth<=0)return 0;return bWidth+mLeft+mRight;},'top':function(element){var offset=element.positionedOffset();return offset.top;},'bottom':function(element){var offset=element.positionedOffset(),parent=element.getOffsetParent(),pHeight=parent.measure('height');var mHeight=this.get('border-box-height');return pHeight-mHeight-offset.top;},'left':function(element){var offset=element.positionedOffset();return offset.left;},'right':function(element){var offset=element.positionedOffset(),parent=element.getOffsetParent(),pWidth=parent.measure('width');var mWidth=this.get('border-box-width');return pWidth-mWidth-offset.left;},'padding-top':function(element){return getPixelValue(element,'paddingTop');},'padding-bottom':function(element){return getPixelValue(element,'paddingBottom');},'padding-left':function(element){return getPixelValue(element,'paddingLeft');},'padding-right':function(element){return getPixelValue(element,'paddingRight');},'border-top':function(element){return getPixelValue(element,'borderTopWidth');},'border-bottom':function(element){return getPixelValue(element,'borderBottomWidth');},'border-left':function(element){return getPixelValue(element,'borderLeftWidth');},'border-right':function(element){return getPixelValue(element,'borderRightWidth');},'margin-top':function(element){return getPixelValue(element,'marginTop');},'margin-bottom':function(element){return getPixelValue(element,'marginBottom');},'margin-left':function(element){return getPixelValue(element,'marginLeft');},'margin-right':function(element){return getPixelValue(element,'marginRight');}}});if('getBoundingClientRect'in document.documentElement){Object.extend(Element.Layout.COMPUTATIONS,{'right':function(element){var parent=hasLayout(element.getOffsetParent());var rect=element.getBoundingClientRect(),pRect=parent.getBoundingClientRect();return(pRect.right-rect.right).round();},'bottom':function(element){var parent=hasLayout(element.getOffsetParent());var rect=element.getBoundingClientRect(),pRect=parent.getBoundingClientRect();return(pRect.bottom-rect.bottom).round();}});}
Element.Offset=Class.create({initialize:function(left,top){this.left=left.round();this.top=top.round();this[0]=this.left;this[1]=this.top;},relativeTo:function(offset){return new Element.Offset(this.left-offset.left,this.top-offset.top);},inspect:function(){return"#<Element.Offset left: #{left} top: #{top}>".interpolate(this);},toString:function(){return"[#{left}, #{top}]".interpolate(this);},toArray:function(){return[this.left,this.top];}});function getLayout(element,preCompute){return new Element.Layout(element,preCompute);}
function measure(element,property){return $(element).getLayout().get(property);}
function getDimensions(element){element=$(element);var display=Element.getStyle(element,'display');if(display&&display!=='none'){return{width:element.offsetWidth,height:element.offsetHeight};}
var style=element.style;var originalStyles={visibility:style.visibility,position:style.position,display:style.display};var newStyles={visibility:'hidden',display:'block'};if(originalStyles.position!=='fixed')
newStyles.position='absolute';Element.setStyle(element,newStyles);var dimensions={width:element.offsetWidth,height:element.offsetHeight};Element.setStyle(element,originalStyles);return dimensions;}
function getOffsetParent(element){element=$(element);if(isDocument(element)||isDetached(element)||isBody(element)||isHtml(element))
return $(document.body);var isInline=(Element.getStyle(element,'display')==='inline');if(!isInline&&element.offsetParent)return $(element.offsetParent);while((element=element.parentNode)&&element!==document.body){if(Element.getStyle(element,'position')!=='static'){return isHtml(element)?$(document.body):$(element);}}
return $(document.body);}
function cumulativeOffset(element){element=$(element);var valueT=0,valueL=0;if(element.parentNode){do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;}while(element);}
return new Element.Offset(valueL,valueT);}
function positionedOffset(element){element=$(element);var layout=element.getLayout();var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;element=element.offsetParent;if(element){if(isBody(element))break;var p=Element.getStyle(element,'position');if(p!=='static')break;}}while(element);valueL-=layout.get('margin-top');valueT-=layout.get('margin-left');return new Element.Offset(valueL,valueT);}
function cumulativeScrollOffset(element){var valueT=0,valueL=0;do{valueT+=element.scrollTop||0;valueL+=element.scrollLeft||0;element=element.parentNode;}while(element);return new Element.Offset(valueL,valueT);}
function viewportOffset(forElement){element=$(element);var valueT=0,valueL=0,docBody=document.body;var element=forElement;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==docBody&&Element.getStyle(element,'position')=='absolute')break;}while(element=element.offsetParent);element=forElement;do{if(element!=docBody){valueT-=element.scrollTop||0;valueL-=element.scrollLeft||0;}}while(element=element.parentNode);return new Element.Offset(valueL,valueT);}
function absolutize(element){element=$(element);if(Element.getStyle(element,'position')==='absolute'){return element;}
var offsetParent=getOffsetParent(element);var eOffset=element.viewportOffset(),pOffset=offsetParent.viewportOffset();var offset=eOffset.relativeTo(pOffset);var layout=element.getLayout();element.store('prototype_absolutize_original_styles',{left:element.getStyle('left'),top:element.getStyle('top'),width:element.getStyle('width'),height:element.getStyle('height')});element.setStyle({position:'absolute',top:offset.top+'px',left:offset.left+'px',width:layout.get('width')+'px',height:layout.get('height')+'px'});return element;}
function relativize(element){element=$(element);if(Element.getStyle(element,'position')==='relative'){return element;}
var originalStyles=element.retrieve('prototype_absolutize_original_styles');if(originalStyles)element.setStyle(originalStyles);return element;}
if(Prototype.Browser.IE){getOffsetParent=getOffsetParent.wrap(function(proceed,element){element=$(element);if(isDocument(element)||isDetached(element)||isBody(element)||isHtml(element))
return $(document.body);var position=element.getStyle('position');if(position!=='static')return proceed(element);element.setStyle({position:'relative'});var value=proceed(element);element.setStyle({position:position});return value;});positionedOffset=positionedOffset.wrap(function(proceed,element){element=$(element);if(!element.parentNode)return new Element.Offset(0,0);var position=element.getStyle('position');if(position!=='static')return proceed(element);var offsetParent=element.getOffsetParent();if(offsetParent&&offsetParent.getStyle('position')==='fixed')
hasLayout(offsetParent);element.setStyle({position:'relative'});var value=proceed(element);element.setStyle({position:position});return value;});}else if(Prototype.Browser.Webkit){cumulativeOffset=function(element){element=$(element);var valueT=0,valueL=0;do{valueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;if(element.offsetParent==document.body)
if(Element.getStyle(element,'position')=='absolute')break;element=element.offsetParent;}while(element);return new Element.Offset(valueL,valueT);};}
Element.addMethods({getLayout:getLayout,measure:measure,getDimensions:getDimensions,getOffsetParent:getOffsetParent,cumulativeOffset:cumulativeOffset,positionedOffset:positionedOffset,cumulativeScrollOffset:cumulativeScrollOffset,viewportOffset:viewportOffset,absolutize:absolutize,relativize:relativize});function isBody(element){return element.nodeName.toUpperCase()==='BODY';}
function isHtml(element){return element.nodeName.toUpperCase()==='HTML';}
function isDocument(element){return element.nodeType===Node.DOCUMENT_NODE;}
function isDetached(element){return element!==document.body&&!Element.descendantOf(element,document.body);}
if('getBoundingClientRect'in document.documentElement){Element.addMethods({viewportOffset:function(element){element=$(element);if(isDetached(element))return new Element.Offset(0,0);var rect=element.getBoundingClientRect(),docEl=document.documentElement;return new Element.Offset(rect.left-docEl.clientLeft,rect.top-docEl.clientTop);}});}})();window.$$=function(){var expression=$A(arguments).join(', ');return Prototype.Selector.select(expression,document);};Prototype.Selector=(function(){function select(){throw new Error('Method "Prototype.Selector.select" must be defined.');}
function match(){throw new Error('Method "Prototype.Selector.match" must be defined.');}
function find(elements,expression,index){index=index||0;var match=Prototype.Selector.match,length=elements.length,matchIndex=0,i;for(i=0;i<length;i++){if(match(elements[i],expression)&&index==matchIndex++){return Element.extend(elements[i]);}}}
function extendElements(elements){for(var i=0,length=elements.length;i<length;i++){Element.extend(elements[i]);}
return elements;}
var K=Prototype.K;return{select:select,match:match,find:find,extendElements:(Element.extend===K)?K:extendElements,extendElement:Element.extend};})();Prototype._original_property=window.Sizzle;(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,done=0,toString=Object.prototype.toString,hasDuplicate=false,baseHasDuplicate=true;[0,0].sort(function(){baseHasDuplicate=false;return 0;});var Sizzle=function(selector,context,results,seed){results=results||[];var origContext=context=context||document;if(context.nodeType!==1&&context.nodeType!==9){return[];}
if(!selector||typeof selector!=="string"){return results;}
var parts=[],m,set,checkSet,check,mode,extra,prune=true,contextXML=isXML(context),soFar=selector;while((chunker.exec(""),m=chunker.exec(soFar))!==null){soFar=m[3];parts.push(m[1]);if(m[2]){extra=m[3];break;}}
if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector])
selector+=parts.shift();set=posProcess(selector,set);}}}else{if(!seed&&parts.length>1&&context.nodeType===9&&!contextXML&&Expr.match.ID.test(parts[0])&&!Expr.match.ID.test(parts[parts.length-1])){var ret=Sizzle.find(parts.shift(),context,contextXML);context=ret.expr?Sizzle.filter(ret.expr,ret.set)[0]:ret.set[0];}
if(context){var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&(parts[0]==="~"||parts[0]==="+")&&context.parentNode?context.parentNode:context,contextXML);set=ret.expr?Sizzle.filter(ret.expr,ret.set):ret.set;if(parts.length>0){checkSet=makeArray(set);}else{prune=false;}
while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();}
if(pop==null){pop=context;}
Expr.relative[cur](checkSet,pop,contextXML);}}else{checkSet=parts=[];}}
if(!checkSet){checkSet=set;}
if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);}
if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context&&context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);}
if(extra){Sizzle(extra,origContext,results,seed);Sizzle.uniqueSort(results);}
return results;};Sizzle.uniqueSort=function(results){if(sortOrder){hasDuplicate=baseHasDuplicate;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i<results.length;i++){if(results[i]===results[i-1]){results.splice(i--,1);}}}}
return results;};Sizzle.matches=function(expr,set){return Sizzle(expr,null,null,set);};Sizzle.find=function(expr,context,isXML){var set,match;if(!expr){return[];}
for(var i=0,l=Expr.order.length;i<l;i++){var type=Expr.order[i],match;if((match=Expr.leftMatch[type].exec(expr))){var left=match[1];match.splice(1,1);if(left.substr(left.length-1)!=="\\"){match[1]=(match[1]||"").replace(/\\/g,"");set=Expr.find[type](match,context,isXML);if(set!=null){expr=expr.replace(Expr.match[type],"");break;}}}}
if(!set){set=context.getElementsByTagName("*");}
return{set:set,expr:expr};};Sizzle.filter=function(expr,set,inplace,not){var old=expr,result=[],curLoop=set,match,anyFound,isXMLFilter=set&&set[0]&&isXML(set[0]);while(expr&&set.length){for(var type in Expr.filter){if((match=Expr.match[type].exec(expr))!=null){var filter=Expr.filter[type],found,item;anyFound=false;if(curLoop==result){result=[];}
if(Expr.preFilter[type]){match=Expr.preFilter[type](match,curLoop,inplace,result,not,isXMLFilter);if(!match){anyFound=found=true;}else if(match===true){continue;}}
if(match){for(var i=0;(item=curLoop[i])!=null;i++){if(item){found=filter(item,match,i,curLoop);var pass=not^!!found;if(inplace&&found!=null){if(pass){anyFound=true;}else{curLoop[i]=false;}}else if(pass){result.push(item);anyFound=true;}}}}
if(found!==undefined){if(!inplace){curLoop=result;}
expr=expr.replace(Expr.match[type],"");if(!anyFound){return[];}
break;}}}
if(expr==old){if(anyFound==null){throw"Syntax error, unrecognized expression: "+expr;}else{break;}}
old=expr;}
return curLoop;};var Expr=Sizzle.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(elem){return elem.getAttribute("href");}},relative:{"+":function(checkSet,part,isXML){var isPartStr=typeof part==="string",isTag=isPartStr&&!/\W/.test(part),isPartStrNotTag=isPartStr&&!isTag;if(isTag&&!isXML){part=part.toUpperCase();}
for(var i=0,l=checkSet.length,elem;i<l;i++){if((elem=checkSet[i])){while((elem=elem.previousSibling)&&elem.nodeType!==1){}
checkSet[i]=isPartStrNotTag||elem&&elem.nodeName===part?elem||false:elem===part;}}
if(isPartStrNotTag){Sizzle.filter(part,checkSet,true);}},">":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){var parent=elem.parentNode;checkSet[i]=parent.nodeName===part?parent:false;}}}else{for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){checkSet[i]=isPartStr?elem.parentNode:elem.parentNode===part;}}
if(isPartStr){Sizzle.filter(part,checkSet,true);}}},"":function(checkSet,part,isXML){var doneName=done++,checkFn=dirCheck;if(!/\W/.test(part)){var nodeCheck=part=isXML?part:part.toUpperCase();checkFn=dirNodeCheck;}
checkFn("parentNode",part,doneName,checkSet,nodeCheck,isXML);},"~":function(checkSet,part,isXML){var doneName=done++,checkFn=dirCheck;if(typeof part==="string"&&!/\W/.test(part)){var nodeCheck=part=isXML?part:part.toUpperCase();checkFn=dirNodeCheck;}
checkFn("previousSibling",part,doneName,checkSet,nodeCheck,isXML);}},find:{ID:function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?[m]:[];}},NAME:function(match,context,isXML){if(typeof context.getElementsByName!=="undefined"){var ret=[],results=context.getElementsByName(match[1]);for(var i=0,l=results.length;i<l;i++){if(results[i].getAttribute("name")===match[1]){ret.push(results[i]);}}
return ret.length===0?null:ret;}},TAG:function(match,context){return context.getElementsByTagName(match[1]);}},preFilter:{CLASS:function(match,curLoop,inplace,result,not,isXML){match=" "+match[1].replace(/\\/g,"")+" ";if(isXML){return match;}
for(var i=0,elem;(elem=curLoop[i])!=null;i++){if(elem){if(not^(elem.className&&(" "+elem.className+" ").indexOf(match)>=0)){if(!inplace)
result.push(elem);}else if(inplace){curLoop[i]=false;}}}
return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){}
return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;}
match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];}
if(match[2]==="~="){match[4]=" "+match[4]+" ";}
return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if((chunker.exec(match[3])||"").length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);}
return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;}
return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return i<match[3]-0;},gt:function(elem,i,match){return i>match[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i<l;i++){if(not[i]===elem){return false;}}
return true;}},CHILD:function(elem,match){var type=match[1],node=elem;switch(type){case'only':case'first':while((node=node.previousSibling)){if(node.nodeType===1)return false;}
if(type=='first')return true;node=elem;case'last':while((node=node.nextSibling)){if(node.nodeType===1)return false;}
return true;case'nth':var first=match[2],last=match[3];if(first==1&&last==0){return true;}
var doneName=match[0],parent=elem.parentNode;if(parent&&(parent.sizcache!==doneName||!elem.nodeIndex)){var count=0;for(node=parent.firstChild;node;node=node.nextSibling){if(node.nodeType===1){node.nodeIndex=++count;}}
parent.sizcache=doneName;}
var diff=elem.nodeIndex-last;if(first==0){return diff==0;}else{return(diff%first==0&&diff/first>=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=new RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);Expr.leftMatch[type]=new RegExp(/(^(?:.|\r|\n)*?)/.source+Expr.match[type].source);}
var makeArray=function(array,results){array=Array.prototype.slice.call(array,0);if(results){results.push.apply(results,array);return results;}
return array;};try{Array.prototype.slice.call(document.documentElement.childNodes,0);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i<l;i++){ret.push(array[i]);}}else{for(var i=0;array[i];i++){ret.push(array[i]);}}}
return ret;};}
var sortOrder;if(document.documentElement.compareDocumentPosition){sortOrder=function(a,b){if(!a.compareDocumentPosition||!b.compareDocumentPosition){if(a==b){hasDuplicate=true;}
return 0;}
var ret=a.compareDocumentPosition(b)&4?-1:a===b?0:1;if(ret===0){hasDuplicate=true;}
return ret;};}else if("sourceIndex"in document.documentElement){sortOrder=function(a,b){if(!a.sourceIndex||!b.sourceIndex){if(a==b){hasDuplicate=true;}
return 0;}
var ret=a.sourceIndex-b.sourceIndex;if(ret===0){hasDuplicate=true;}
return ret;};}else if(document.createRange){sortOrder=function(a,b){if(!a.ownerDocument||!b.ownerDocument){if(a==b){hasDuplicate=true;}
return 0;}
var aRange=a.ownerDocument.createRange(),bRange=b.ownerDocument.createRange();aRange.setStart(a,0);aRange.setEnd(a,0);bRange.setStart(b,0);bRange.setEnd(b,0);var ret=aRange.compareBoundaryPoints(Range.START_TO_END,bRange);if(ret===0){hasDuplicate=true;}
return ret;};}
(function(){var form=document.createElement("div"),id="script"+(new Date).getTime();form.innerHTML="<a name='"+id+"'/>";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};}
root.removeChild(form);root=form=null;})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}}
results=tmp;}
return results;};}
div.innerHTML="<a href='#'></a>";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}
div=null;})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="<p class='TEST'></p>";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;}
Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}}
return oldSizzle(query,context,extra,seed);};for(var prop in oldSizzle){Sizzle[prop]=oldSizzle[prop];}
div=null;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="<div class='test e'></div><div class='test'></div>";if(div.getElementsByClassName("e").length===0)
return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1)
return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};div=null;})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){if(sibDir&&elem.nodeType===1){elem.sizcache=doneName;elem.sizset=i;}
elem=elem[dir];var match=false;while(elem){if(elem.sizcache===doneName){match=checkSet[elem.sizset];break;}
if(elem.nodeType===1&&!isXML){elem.sizcache=doneName;elem.sizset=i;}
if(elem.nodeName===cur){match=elem;break;}
elem=elem[dir];}
checkSet[i]=match;}}}
function dirCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){if(sibDir&&elem.nodeType===1){elem.sizcache=doneName;elem.sizset=i;}
elem=elem[dir];var match=false;while(elem){if(elem.sizcache===doneName){match=checkSet[elem.sizset];break;}
if(elem.nodeType===1){if(!isXML){elem.sizcache=doneName;elem.sizset=i;}
if(typeof cur!=="string"){if(elem===cur){match=true;break;}}else if(Sizzle.filter(cur,[elem]).length>0){match=elem;break;}}
elem=elem[dir];}
checkSet[i]=match;}}}
var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&elem.ownerDocument.documentElement.nodeName!=="HTML";};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");}
selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i<l;i++){Sizzle(selector,root[i],tmpSet);}
return Sizzle.filter(later,tmpSet);};window.Sizzle=Sizzle;})();;(function(engine){var extendElements=Prototype.Selector.extendElements;function select(selector,scope){return extendElements(engine(selector,scope||document));}
function match(element,selector){return engine.matches(selector,[element]).length==1;}
Prototype.Selector.engine=engine;Prototype.Selector.select=select;Prototype.Selector.match=match;})(Sizzle);window.Sizzle=Prototype._original_property;delete Prototype._original_property;var Form={reset:function(form){form=$(form);form.reset();return form;},serializeElements:function(elements,options){if(typeof options!='object')options={hash:!!options};else if(Object.isUndefined(options.hash))options.hash=true;var key,value,submitted=false,submit=options.submit,accumulator,initial;if(options.hash){initial={};accumulator=function(result,key,value){if(key in result){if(!Object.isArray(result[key]))result[key]=[result[key]];result[key].push(value);}else result[key]=value;return result;};}else{initial='';accumulator=function(result,key,value){return result+(result?'&':'')+encodeURIComponent(key)+'='+encodeURIComponent(value);}}
return elements.inject(initial,function(result,element){if(!element.disabled&&element.name){key=element.name;value=$(element).getValue();if(value!=null&&element.type!='file'&&(element.type!='submit'||(!submitted&&submit!==false&&(!submit||key==submit)&&(submitted=true)))){result=accumulator(result,key,value);}}
return result;});}};Form.Methods={serialize:function(form,options){return Form.serializeElements(Form.getElements(form),options);},getElements:function(form){var elements=$(form).getElementsByTagName('*'),element,arr=[],serializers=Form.Element.Serializers;for(var i=0;element=elements[i];i++){arr.push(element);}
return arr.inject([],function(elements,child){if(serializers[child.tagName.toLowerCase()])
elements.push(Element.extend(child));return elements;})},getInputs:function(form,typeName,name){form=$(form);var inputs=form.getElementsByTagName('input');if(!typeName&&!name)return $A(inputs).map(Element.extend);for(var i=0,matchingInputs=[],length=inputs.length;i<length;i++){var input=inputs[i];if((typeName&&input.type!=typeName)||(name&&input.name!=name))
continue;matchingInputs.push(Element.extend(input));}
return matchingInputs;},disable:function(form){form=$(form);Form.getElements(form).invoke('disable');return form;},enable:function(form){form=$(form);Form.getElements(form).invoke('enable');return form;},findFirstElement:function(form){var elements=$(form).getElements().findAll(function(element){return'hidden'!=element.type&&!element.disabled;});var firstByIndex=elements.findAll(function(element){return element.hasAttribute('tabIndex')&&element.tabIndex>=0;}).sortBy(function(element){return element.tabIndex}).first();return firstByIndex?firstByIndex:elements.find(function(element){return/^(?:input|select|textarea)$/i.test(element.tagName);});},focusFirstElement:function(form){form=$(form);var element=form.findFirstElement();if(element)element.activate();return form;},request:function(form,options){form=$(form),options=Object.clone(options||{});var params=options.parameters,action=form.readAttribute('action')||'';if(action.blank())action=window.location.href;options.parameters=form.serialize(true);if(params){if(Object.isString(params))params=params.toQueryParams();Object.extend(options.parameters,params);}
if(form.hasAttribute('method')&&!options.method)
options.method=form.method;return new Ajax.Request(action,options);}};Form.Element={focus:function(element){$(element).focus();return element;},select:function(element){$(element).select();return element;}};Form.Element.Methods={serialize:function(element){element=$(element);if(!element.disabled&&element.name){var value=element.getValue();if(value!=undefined){var pair={};pair[element.name]=value;return Object.toQueryString(pair);}}
return'';},getValue:function(element){element=$(element);var method=element.tagName.toLowerCase();return Form.Element.Serializers[method](element);},setValue:function(element,value){element=$(element);var method=element.tagName.toLowerCase();Form.Element.Serializers[method](element,value);return element;},clear:function(element){$(element).value='';return element;},present:function(element){return $(element).value!='';},activate:function(element){element=$(element);try{element.focus();if(element.select&&(element.tagName.toLowerCase()!='input'||!(/^(?:button|reset|submit)$/i.test(element.type))))
element.select();}catch(e){}
return element;},disable:function(element){element=$(element);element.disabled=true;return element;},enable:function(element){element=$(element);element.disabled=false;return element;}};var Field=Form.Element;var $F=Form.Element.Methods.getValue;Form.Element.Serializers=(function(){function input(element,value){switch(element.type.toLowerCase()){case'checkbox':case'radio':return inputSelector(element,value);default:return valueSelector(element,value);}}
function inputSelector(element,value){if(Object.isUndefined(value))
return element.checked?element.value:null;else element.checked=!!value;}
function valueSelector(element,value){if(Object.isUndefined(value))return element.value;else element.value=value;}
function select(element,value){if(Object.isUndefined(value))
return(element.type==='select-one'?selectOne:selectMany)(element);var opt,currentValue,single=!Object.isArray(value);for(var i=0,length=element.length;i<length;i++){opt=element.options[i];currentValue=this.optionValue(opt);if(single){if(currentValue==value){opt.selected=true;return;}}
else opt.selected=value.include(currentValue);}}
function selectOne(element){var index=element.selectedIndex;return index>=0?optionValue(element.options[index]):null;}
function selectMany(element){var values,length=element.length;if(!length)return null;for(var i=0,values=[];i<length;i++){var opt=element.options[i];if(opt.selected)values.push(optionValue(opt));}
return values;}
function optionValue(opt){return Element.hasAttribute(opt,'value')?opt.value:opt.text;}
return{input:input,inputSelector:inputSelector,textarea:valueSelector,select:select,selectOne:selectOne,selectMany:selectMany,optionValue:optionValue,button:valueSelector};})();Abstract.TimedObserver=Class.create(PeriodicalExecuter,{initialize:function($super,element,frequency,callback){$super(callback,frequency);this.element=$(element);this.lastValue=this.getValue();},execute:function(){var value=this.getValue();if(Object.isString(this.lastValue)&&Object.isString(value)?this.lastValue!=value:String(this.lastValue)!=String(value)){this.callback(this.element,value);this.lastValue=value;}}});Form.Element.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.serialize(this.element);}});Abstract.EventObserver=Class.create({initialize:function(element,callback){this.element=$(element);this.callback=callback;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=='form')
this.registerFormCallbacks();else
this.registerCallback(this.element);},onElementEvent:function(){var value=this.getValue();if(this.lastValue!=value){this.callback(this.element,value);this.lastValue=value;}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback,this);},registerCallback:function(element){if(element.type){switch(element.type.toLowerCase()){case'checkbox':case'radio':Event.observe(element,'click',this.onElementEvent.bind(this));break;default:Event.observe(element,'change',this.onElementEvent.bind(this));break;}}}});Form.Element.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.Element.getValue(this.element);}});Form.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.serialize(this.element);}});(function(){var Event={KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,KEY_INSERT:45,cache:{}};var docEl=document.documentElement;var MOUSEENTER_MOUSELEAVE_EVENTS_SUPPORTED='onmouseenter'in docEl&&'onmouseleave'in docEl;var isIELegacyEvent=function(event){return false;};if(window.attachEvent){if(window.addEventListener){isIELegacyEvent=function(event){return!(event instanceof window.Event);};}else{isIELegacyEvent=function(event){return true;};}}
var _isButton;function _isButtonForDOMEvents(event,code){return event.which?(event.which===code+1):(event.button===code);}
var legacyButtonMap={0:1,1:4,2:2};function _isButtonForLegacyEvents(event,code){return event.button===legacyButtonMap[code];}
function _isButtonForWebKit(event,code){switch(code){case 0:return event.which==1&&!event.metaKey;case 1:return event.which==2||(event.which==1&&event.metaKey);case 2:return event.which==3;default:return false;}}
if(window.attachEvent){if(!window.addEventListener){_isButton=_isButtonForLegacyEvents;}else{_isButton=function(event,code){return isIELegacyEvent(event)?_isButtonForLegacyEvents(event,code):_isButtonForDOMEvents(event,code);}}}else if(Prototype.Browser.WebKit){_isButton=_isButtonForWebKit;}else{_isButton=_isButtonForDOMEvents;}
function isLeftClick(event){return _isButton(event,0)}
function isMiddleClick(event){return _isButton(event,1)}
function isRightClick(event){return _isButton(event,2)}
function element(event){event=Event.extend(event);var node=event.target,type=event.type,currentTarget=event.currentTarget;if(currentTarget&&currentTarget.tagName){if(type==='load'||type==='error'||(type==='click'&&currentTarget.tagName.toLowerCase()==='input'&&currentTarget.type==='radio'))
node=currentTarget;}
if(node.nodeType==Node.TEXT_NODE)
node=node.parentNode;return Element.extend(node);}
function findElement(event,expression){var element=Event.element(event);if(!expression)return element;while(element){if(Object.isElement(element)&&Prototype.Selector.match(element,expression)){return Element.extend(element);}
element=element.parentNode;}}
function pointer(event){return{x:pointerX(event),y:pointerY(event)};}
function pointerX(event){var docElement=document.documentElement,body=document.body||{scrollLeft:0};return event.pageX||(event.clientX+
(docElement.scrollLeft||body.scrollLeft)-
(docElement.clientLeft||0));}
function pointerY(event){var docElement=document.documentElement,body=document.body||{scrollTop:0};return event.pageY||(event.clientY+
(docElement.scrollTop||body.scrollTop)-
(docElement.clientTop||0));}
function stop(event){Event.extend(event);event.preventDefault();event.stopPropagation();event.stopped=true;}
Event.Methods={isLeftClick:isLeftClick,isMiddleClick:isMiddleClick,isRightClick:isRightClick,element:element,findElement:findElement,pointer:pointer,pointerX:pointerX,pointerY:pointerY,stop:stop};var methods=Object.keys(Event.Methods).inject({},function(m,name){m[name]=Event.Methods[name].methodize();return m;});if(window.attachEvent){function _relatedTarget(event){var element;switch(event.type){case'mouseover':case'mouseenter':element=event.fromElement;break;case'mouseout':case'mouseleave':element=event.toElement;break;default:return null;}
return Element.extend(element);}
var additionalMethods={stopPropagation:function(){this.cancelBubble=true},preventDefault:function(){this.returnValue=false},inspect:function(){return'[object Event]'}};Event.extend=function(event,element){if(!event)return false;if(!isIELegacyEvent(event))return event;if(event._extendedByPrototype)return event;event._extendedByPrototype=Prototype.emptyFunction;var pointer=Event.pointer(event);Object.extend(event,{target:event.srcElement||element,relatedTarget:_relatedTarget(event),pageX:pointer.x,pageY:pointer.y});Object.extend(event,methods);Object.extend(event,additionalMethods);return event;};}else{Event.extend=Prototype.K;}
if(window.addEventListener){Event.prototype=window.Event.prototype||document.createEvent('HTMLEvents').__proto__;Object.extend(Event.prototype,methods);}
function _createResponder(element,eventName,handler){var registry=Element.retrieve(element,'prototype_event_registry');if(Object.isUndefined(registry)){CACHE.push(element);registry=Element.retrieve(element,'prototype_event_registry',$H());}
var respondersForEvent=registry.get(eventName);if(Object.isUndefined(respondersForEvent)){respondersForEvent=[];registry.set(eventName,respondersForEvent);}
if(respondersForEvent.pluck('handler').include(handler))return false;var responder;if(eventName.include(":")){responder=function(event){if(Object.isUndefined(event.eventName))
return false;if(event.eventName!==eventName)
return false;Event.extend(event,element);handler.call(element,event);};}else{if(!MOUSEENTER_MOUSELEAVE_EVENTS_SUPPORTED&&(eventName==="mouseenter"||eventName==="mouseleave")){if(eventName==="mouseenter"||eventName==="mouseleave"){responder=function(event){Event.extend(event,element);var parent=event.relatedTarget;while(parent&&parent!==element){try{parent=parent.parentNode;}
catch(e){parent=element;}}
if(parent===element)return;handler.call(element,event);};}}else{responder=function(event){Event.extend(event,element);handler.call(element,event);};}}
responder.handler=handler;respondersForEvent.push(responder);return responder;}
function _destroyCache(){for(var i=0,length=CACHE.length;i<length;i++){Event.stopObserving(CACHE[i]);CACHE[i]=null;}}
var CACHE=[];if(Prototype.Browser.IE)
window.attachEvent('onunload',_destroyCache);if(Prototype.Browser.WebKit)
window.addEventListener('unload',Prototype.emptyFunction,false);var _getDOMEventName=Prototype.K,translations={mouseenter:"mouseover",mouseleave:"mouseout"};if(!MOUSEENTER_MOUSELEAVE_EVENTS_SUPPORTED){_getDOMEventName=function(eventName){return(translations[eventName]||eventName);};}
function observe(element,eventName,handler){element=$(element);var responder=_createResponder(element,eventName,handler);if(!responder)return element;if(eventName.include(':')){if(element.addEventListener)
element.addEventListener("dataavailable",responder,false);else{element.attachEvent("ondataavailable",responder);element.attachEvent("onlosecapture",responder);}}else{var actualEventName=_getDOMEventName(eventName);if(element.addEventListener)
element.addEventListener(actualEventName,responder,false);else
element.attachEvent("on"+actualEventName,responder);}
return element;}
function stopObserving(element,eventName,handler){element=$(element);var registry=Element.retrieve(element,'prototype_event_registry');if(!registry)return element;if(!eventName){registry.each(function(pair){var eventName=pair.key;stopObserving(element,eventName);});return element;}
var responders=registry.get(eventName);if(!responders)return element;if(!handler){responders.each(function(r){stopObserving(element,eventName,r.handler);});return element;}
var i=responders.length,responder;while(i--){if(responders[i].handler===handler){responder=responders[i];break;}}
if(!responder)return element;if(eventName.include(':')){if(element.removeEventListener)
element.removeEventListener("dataavailable",responder,false);else{element.detachEvent("ondataavailable",responder);element.detachEvent("onlosecapture",responder);}}else{var actualEventName=_getDOMEventName(eventName);if(element.removeEventListener)
element.removeEventListener(actualEventName,responder,false);else
element.detachEvent('on'+actualEventName,responder);}
registry.set(eventName,responders.without(responder));return element;}
function fire(element,eventName,memo,bubble){element=$(element);if(Object.isUndefined(bubble))
bubble=true;if(element==document&&document.createEvent&&!element.dispatchEvent)
element=document.documentElement;var event;if(document.createEvent){event=document.createEvent('HTMLEvents');event.initEvent('dataavailable',bubble,true);}else{event=document.createEventObject();event.eventType=bubble?'ondataavailable':'onlosecapture';}
event.eventName=eventName;event.memo=memo||{};if(document.createEvent)
element.dispatchEvent(event);else
element.fireEvent(event.eventType,event);return Event.extend(event);}
Event.Handler=Class.create({initialize:function(element,eventName,selector,callback){this.element=$(element);this.eventName=eventName;this.selector=selector;this.callback=callback;this.handler=this.handleEvent.bind(this);},start:function(){Event.observe(this.element,this.eventName,this.handler);return this;},stop:function(){Event.stopObserving(this.element,this.eventName,this.handler);return this;},handleEvent:function(event){var element=Event.findElement(event,this.selector);if(element)this.callback.call(this.element,event,element);}});function on(element,eventName,selector,callback){element=$(element);if(Object.isFunction(selector)&&Object.isUndefined(callback)){callback=selector,selector=null;}
return new Event.Handler(element,eventName,selector,callback).start();}
Object.extend(Event,Event.Methods);Object.extend(Event,{fire:fire,observe:observe,stopObserving:stopObserving,on:on});Element.addMethods({fire:fire,observe:observe,stopObserving:stopObserving,on:on});Object.extend(document,{fire:fire.methodize(),observe:observe.methodize(),stopObserving:stopObserving.methodize(),on:on.methodize(),loaded:false});if(window.Event)Object.extend(window.Event,Event);else window.Event=Event;})();(function(){var timer;function fireContentLoadedEvent(){if(document.loaded)return;if(timer)window.clearTimeout(timer);document.loaded=true;document.fire('dom:loaded');}
function checkReadyState(){if(document.readyState==='complete'){document.stopObserving('readystatechange',checkReadyState);fireContentLoadedEvent();}}
function pollDoScroll(){try{document.documentElement.doScroll('left');}
catch(e){timer=pollDoScroll.defer();return;}
fireContentLoadedEvent();}
if(document.addEventListener){document.addEventListener('DOMContentLoaded',fireContentLoadedEvent,false);}else{document.observe('readystatechange',checkReadyState);if(window==top)
timer=pollDoScroll.defer();}
Event.observe(window,'load',fireContentLoadedEvent);})();Element.addMethods();Hash.toQueryString=Object.toQueryString;var Toggle={display:Element.toggle};Element.Methods.childOf=Element.Methods.descendantOf;var Insertion={Before:function(element,content){return Element.insert(element,{before:content});},Top:function(element,content){return Element.insert(element,{top:content});},Bottom:function(element,content){return Element.insert(element,{bottom:content});},After:function(element,content){return Element.insert(element,{after:content});}};var $continue=new Error('"throw $continue" is deprecated, use "return" instead');var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;},within:function(element,x,y){if(this.includeScrollOffsets)
return this.withinIncludingScrolloffsets(element,x,y);this.xcomp=x;this.ycomp=y;this.offset=Element.cumulativeOffset(element);return(y>=this.offset[1]&&y<this.offset[1]+element.offsetHeight&&x>=this.offset[0]&&x<this.offset[0]+element.offsetWidth);},withinIncludingScrolloffsets:function(element,x,y){var offsetcache=Element.cumulativeScrollOffset(element);this.xcomp=x+offsetcache[0]-this.deltaX;this.ycomp=y+offsetcache[1]-this.deltaY;this.offset=Element.cumulativeOffset(element);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+element.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+element.offsetWidth);},overlap:function(mode,element){if(!mode)return 0;if(mode=='vertical')
return((this.offset[1]+element.offsetHeight)-this.ycomp)/element.offsetHeight;if(mode=='horizontal')
return((this.offset[0]+element.offsetWidth)-this.xcomp)/element.offsetWidth;},cumulativeOffset:Element.Methods.cumulativeOffset,positionedOffset:Element.Methods.positionedOffset,absolutize:function(element){Position.prepare();return Element.absolutize(element);},relativize:function(element){Position.prepare();return Element.relativize(element);},realOffset:Element.Methods.cumulativeScrollOffset,offsetParent:Element.Methods.getOffsetParent,page:Element.Methods.viewportOffset,clone:function(source,target,options){options=options||{};return Element.clonePosition(target,source,options);}};if(!document.getElementsByClassName)document.getElementsByClassName=function(instanceMethods){function iter(name){return name.blank()?null:"[contains(concat(' ', @class, ' '), ' "+name+" ')]";}
instanceMethods.getElementsByClassName=Prototype.BrowserFeatures.XPath?function(element,className){className=className.toString().strip();var cond=/\s/.test(className)?$w(className).map(iter).join(''):iter(className);return cond?document._getElementsByXPath('.//*'+cond,element):[];}:function(element,className){className=className.toString().strip();var elements=[],classNames=(/\s/.test(className)?$w(className):null);if(!classNames&&!className)return elements;var nodes=$(element).getElementsByTagName('*');className=' '+className+' ';for(var i=0,child,cn;child=nodes[i];i++){if(child.className&&(cn=' '+child.className+' ')&&(cn.include(className)||(classNames&&classNames.all(function(name){return!name.toString().blank()&&cn.include(' '+name+' ');}))))
elements.push(Element.extend(child));}
return elements;};return function(className,parentElement){return $(parentElement||document.body).getElementsByClassName(className);};}(Element.Methods);Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(element){this.element=$(element);},_each:function(iterator){this.element.className.split(/\s+/).select(function(name){return name.length>0;})._each(iterator);},set:function(className){this.element.className=className;},add:function(classNameToAdd){if(this.include(classNameToAdd))return;this.set($A(this).concat(classNameToAdd).join(' '));},remove:function(classNameToRemove){if(!this.include(classNameToRemove))return;this.set($A(this).without(classNameToRemove).join(' '));},toString:function(){return $A(this).join(' ');}};Object.extend(Element.ClassNames.prototype,Enumerable);(function(){window.Selector=Class.create({initialize:function(expression){this.expression=expression.strip();},findElements:function(rootElement){return Prototype.Selector.select(this.expression,rootElement);},match:function(element){return Prototype.Selector.match(element,this.expression);},toString:function(){return this.expression;},inspect:function(){return"#<Selector: "+this.expression+">";}});Object.extend(Selector,{matchElements:function(elements,expression){var match=Prototype.Selector.match,results=[];for(var i=0,length=elements.length;i<length;i++){var element=elements[i];if(match(element,expression)){results.push(Element.extend(element));}}
return results;},findElement:function(elements,expression,index){index=index||0;var matchIndex=0,element;for(var i=0,length=elements.length;i<length;i++){element=elements[i];if(Prototype.Selector.match(element,expression)&&index===matchIndex++){return Element.extend(element);}}},findChildElements:function(element,expressions){var selector=expressions.toArray().join(', ');return Prototype.Selector.select(selector,element||document);}});})();
;var Scriptaculous={Version:'1.9.0',require:function(libraryName){try{document.write('<script type="text/javascript" src="'+libraryName+'"><\/script>');}catch(e){var script=document.createElement('script');script.type='text/javascript';script.src=libraryName;document.getElementsByTagName('head')[0].appendChild(script);}},REQUIRED_PROTOTYPE:'1.6.0.3',load:function(){function convertVersionString(versionString){var v=versionString.replace(/_.*|\./g,'');v=parseInt(v+'0'.times(4-v.length));return versionString.indexOf('_')>-1?v-1:v;}
if((typeof Prototype=='undefined')||(typeof Element=='undefined')||(typeof Element.Methods=='undefined')||(convertVersionString(Prototype.Version)<convertVersionString(Scriptaculous.REQUIRED_PROTOTYPE)))
throw("script.aculo.us requires the Prototype JavaScript framework >= "+
Scriptaculous.REQUIRED_PROTOTYPE);var js=/scriptaculous\.js(\?.*)?$/;$$('script[src]').findAll(function(s){return s.src.match(js);}).each(function(s){var path=s.src.replace(js,''),includes=s.src.match(/\?.*load=([a-z,]*)/);(includes?includes[1]:'builder,effects,dragdrop,controls,slider,sound').split(',').each(function(include){Scriptaculous.require(path+include+'.js')});});}};Scriptaculous.load();
;String.prototype.parseColor=function(){var color='#';if(this.slice(0,4)=='rgb('){var cols=this.slice(4,this.length-1).split(',');var i=0;do{color+=parseInt(cols[i]).toColorPart()}while(++i<3);}else{if(this.slice(0,1)=='#'){if(this.length==4)for(var i=1;i<4;i++)color+=(this.charAt(i)+this.charAt(i)).toLowerCase();if(this.length==7)color=this.toLowerCase();}}
return(color.length==7?color:(arguments[0]||this));};Element.collectTextNodes=function(element){return $A($(element).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:(node.hasChildNodes()?Element.collectTextNodes(node):''));}).flatten().join('');};Element.collectTextNodesIgnoreClass=function(element,className){return $A($(element).childNodes).collect(function(node){return(node.nodeType==3?node.nodeValue:((node.hasChildNodes()&&!Element.hasClassName(node,className))?Element.collectTextNodesIgnoreClass(node,className):''));}).flatten().join('');};Element.setContentZoom=function(element,percent){element=$(element);element.setStyle({fontSize:(percent/100)+'em'});if(Prototype.Browser.WebKit)window.scrollBy(0,0);return element;};Element.getInlineOpacity=function(element){return $(element).style.opacity||'';};Element.forceRerendering=function(element){try{element=$(element);var n=document.createTextNode(' ');element.appendChild(n);element.removeChild(n);}catch(e){}};var Effect={_elementDoesNotExistError:{name:'ElementDoesNotExistError',message:'The specified DOM element does not exist, but is required for this effect to operate'},Transitions:{linear:Prototype.K,sinoidal:function(pos){return(-Math.cos(pos*Math.PI)/2)+.5;},reverse:function(pos){return 1-pos;},flicker:function(pos){var pos=((-Math.cos(pos*Math.PI)/4)+.75)+Math.random()/4;return pos>1?1:pos;},wobble:function(pos){return(-Math.cos(pos*Math.PI*(9*pos))/2)+.5;},pulse:function(pos,pulses){return(-Math.cos((pos*((pulses||5)-.5)*2)*Math.PI)/2)+.5;},spring:function(pos){return 1-(Math.cos(pos*4.5*Math.PI)*Math.exp(-pos*6));},none:function(pos){return 0;},full:function(pos){return 1;}},DefaultOptions:{duration:1.0,fps:100,sync:false,from:0.0,to:1.0,delay:0.0,queue:'parallel'},tagifyText:function(element){var tagifyStyle='position:relative';if(Prototype.Browser.IE)tagifyStyle+=';zoom:1';element=$(element);$A(element.childNodes).each(function(child){if(child.nodeType==3){child.nodeValue.toArray().each(function(character){element.insertBefore(new Element('span',{style:tagifyStyle}).update(character==' '?String.fromCharCode(160):character),child);});Element.remove(child);}});},multiple:function(element,effect){var elements;if(((typeof element=='object')||Object.isFunction(element))&&(element.length))
elements=element;else
elements=$(element).childNodes;var options=Object.extend({speed:0.1,delay:0.0},arguments[2]||{});var masterDelay=options.delay;$A(elements).each(function(element,index){new effect(element,Object.extend(options,{delay:index*options.speed+masterDelay}));});},PAIRS:{'slide':['SlideDown','SlideUp'],'blind':['BlindDown','BlindUp'],'appear':['Appear','Fade']},toggle:function(element,effect,options){element=$(element);effect=(effect||'appear').toLowerCase();return Effect[Effect.PAIRS[effect][element.visible()?1:0]](element,Object.extend({queue:{position:'end',scope:(element.id||'global'),limit:1}},options||{}));}};Effect.DefaultOptions.transition=Effect.Transitions.sinoidal;Effect.ScopedQueue=Class.create(Enumerable,{initialize:function(){this.effects=[];this.interval=null;},_each:function(iterator){this.effects._each(iterator);},add:function(effect){var timestamp=new Date().getTime();var position=Object.isString(effect.options.queue)?effect.options.queue:effect.options.queue.position;switch(position){case'front':this.effects.findAll(function(e){return e.state=='idle'}).each(function(e){e.startOn+=effect.finishOn;e.finishOn+=effect.finishOn;});break;case'with-last':timestamp=this.effects.pluck('startOn').max()||timestamp;break;case'end':timestamp=this.effects.pluck('finishOn').max()||timestamp;break;}
effect.startOn+=timestamp;effect.finishOn+=timestamp;if(!effect.options.queue.limit||(this.effects.length<effect.options.queue.limit))
this.effects.push(effect);if(!this.interval)
this.interval=setInterval(this.loop.bind(this),15);},remove:function(effect){this.effects=this.effects.reject(function(e){return e==effect});if(this.effects.length==0){clearInterval(this.interval);this.interval=null;}},loop:function(){var timePos=new Date().getTime();for(var i=0,len=this.effects.length;i<len;i++)
this.effects[i]&&this.effects[i].loop(timePos);}});Effect.Queues={instances:$H(),get:function(queueName){if(!Object.isString(queueName))return queueName;return this.instances.get(queueName)||this.instances.set(queueName,new Effect.ScopedQueue());}};Effect.Queue=Effect.Queues.get('global');Effect.Base=Class.create({position:null,start:function(options){if(options&&options.transition===false)options.transition=Effect.Transitions.linear;this.options=Object.extend(Object.extend({},Effect.DefaultOptions),options||{});this.currentFrame=0;this.state='idle';this.startOn=this.options.delay*1000;this.finishOn=this.startOn+(this.options.duration*1000);this.fromToDelta=this.options.to-this.options.from;this.totalTime=this.finishOn-this.startOn;this.totalFrames=this.options.fps*this.options.duration;this.render=(function(){function dispatch(effect,eventName){if(effect.options[eventName+'Internal'])
effect.options[eventName+'Internal'](effect);if(effect.options[eventName])
effect.options[eventName](effect);}
return function(pos){if(this.state==="idle"){this.state="running";dispatch(this,'beforeSetup');if(this.setup)this.setup();dispatch(this,'afterSetup');}
if(this.state==="running"){pos=(this.options.transition(pos)*this.fromToDelta)+this.options.from;this.position=pos;dispatch(this,'beforeUpdate');if(this.update)this.update(pos);dispatch(this,'afterUpdate');}};})();this.event('beforeStart');if(!this.options.sync)
Effect.Queues.get(Object.isString(this.options.queue)?'global':this.options.queue.scope).add(this);},loop:function(timePos){if(timePos>=this.startOn){if(timePos>=this.finishOn){this.render(1.0);this.cancel();this.event('beforeFinish');if(this.finish)this.finish();this.event('afterFinish');return;}
var pos=(timePos-this.startOn)/this.totalTime,frame=(pos*this.totalFrames).round();if(frame>this.currentFrame){this.render(pos);this.currentFrame=frame;}}},cancel:function(){if(!this.options.sync)
Effect.Queues.get(Object.isString(this.options.queue)?'global':this.options.queue.scope).remove(this);this.state='finished';},event:function(eventName){if(this.options[eventName+'Internal'])this.options[eventName+'Internal'](this);if(this.options[eventName])this.options[eventName](this);},inspect:function(){var data=$H();for(property in this)
if(!Object.isFunction(this[property]))data.set(property,this[property]);return'#<Effect:'+data.inspect()+',options:'+$H(this.options).inspect()+'>';}});Effect.Parallel=Class.create(Effect.Base,{initialize:function(effects){this.effects=effects||[];this.start(arguments[1]);},update:function(position){this.effects.invoke('render',position);},finish:function(position){this.effects.each(function(effect){effect.render(1.0);effect.cancel();effect.event('beforeFinish');if(effect.finish)effect.finish(position);effect.event('afterFinish');});}});Effect.Tween=Class.create(Effect.Base,{initialize:function(object,from,to){object=Object.isString(object)?$(object):object;var args=$A(arguments),method=args.last(),options=args.length==5?args[3]:null;this.method=Object.isFunction(method)?method.bind(object):Object.isFunction(object[method])?object[method].bind(object):function(value){object[method]=value};this.start(Object.extend({from:from,to:to},options||{}));},update:function(position){this.method(position);}});Effect.Event=Class.create(Effect.Base,{initialize:function(){this.start(Object.extend({duration:0},arguments[0]||{}));},update:Prototype.emptyFunction});Effect.Opacity=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout))
this.element.setStyle({zoom:1});var options=Object.extend({from:this.element.getOpacity()||0.0,to:1.0},arguments[1]||{});this.start(options);},update:function(position){this.element.setOpacity(position);}});Effect.Move=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({x:0,y:0,mode:'relative'},arguments[1]||{});this.start(options);},setup:function(){this.element.makePositioned();this.originalLeft=parseFloat(this.element.getStyle('left')||'0');this.originalTop=parseFloat(this.element.getStyle('top')||'0');if(this.options.mode=='absolute'){this.options.x=this.options.x-this.originalLeft;this.options.y=this.options.y-this.originalTop;}},update:function(position){this.element.setStyle({left:(this.options.x*position+this.originalLeft).round()+'px',top:(this.options.y*position+this.originalTop).round()+'px'});}});Effect.MoveBy=function(element,toTop,toLeft){return new Effect.Move(element,Object.extend({x:toLeft,y:toTop},arguments[3]||{}));};Effect.Scale=Class.create(Effect.Base,{initialize:function(element,percent){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:'box',scaleFrom:100.0,scaleTo:percent},arguments[2]||{});this.start(options);},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;this.elementPositioning=this.element.getStyle('position');this.originalStyle={};['top','left','width','height','fontSize'].each(function(k){this.originalStyle[k]=this.element.style[k];}.bind(this));this.originalTop=this.element.offsetTop;this.originalLeft=this.element.offsetLeft;var fontSize=this.element.getStyle('font-size')||'100%';['em','px','%','pt'].each(function(fontSizeType){if(fontSize.indexOf(fontSizeType)>0){this.fontSize=parseFloat(fontSize);this.fontSizeType=fontSizeType;}}.bind(this));this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;this.dims=null;if(this.options.scaleMode=='box')
this.dims=[this.element.offsetHeight,this.element.offsetWidth];if(/^content/.test(this.options.scaleMode))
this.dims=[this.element.scrollHeight,this.element.scrollWidth];if(!this.dims)
this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth];},update:function(position){var currentScale=(this.options.scaleFrom/100.0)+(this.factor*position);if(this.options.scaleContent&&this.fontSize)
this.element.setStyle({fontSize:this.fontSize*currentScale+this.fontSizeType});this.setDimensions(this.dims[0]*currentScale,this.dims[1]*currentScale);},finish:function(position){if(this.restoreAfterFinish)this.element.setStyle(this.originalStyle);},setDimensions:function(height,width){var d={};if(this.options.scaleX)d.width=width.round()+'px';if(this.options.scaleY)d.height=height.round()+'px';if(this.options.scaleFromCenter){var topd=(height-this.dims[0])/2;var leftd=(width-this.dims[1])/2;if(this.elementPositioning=='absolute'){if(this.options.scaleY)d.top=this.originalTop-topd+'px';if(this.options.scaleX)d.left=this.originalLeft-leftd+'px';}else{if(this.options.scaleY)d.top=-topd+'px';if(this.options.scaleX)d.left=-leftd+'px';}}
this.element.setStyle(d);}});Effect.Highlight=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({startcolor:'#ffff99'},arguments[1]||{});this.start(options);},setup:function(){if(this.element.getStyle('display')=='none'){this.cancel();return;}
this.oldStyle={};if(!this.options.keepBackgroundImage){this.oldStyle.backgroundImage=this.element.getStyle('background-image');this.element.setStyle({backgroundImage:'none'});}
if(!this.options.endcolor)
this.options.endcolor=this.element.getStyle('background-color').parseColor('#ffffff');if(!this.options.restorecolor)
this.options.restorecolor=this.element.getStyle('background-color');this._base=$R(0,2).map(function(i){return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16)}.bind(this));this._delta=$R(0,2).map(function(i){return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i]}.bind(this));},update:function(position){this.element.setStyle({backgroundColor:$R(0,2).inject('#',function(m,v,i){return m+((this._base[i]+(this._delta[i]*position)).round().toColorPart());}.bind(this))});},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}));}});Effect.ScrollTo=function(element){var options=arguments[1]||{},scrollOffsets=document.viewport.getScrollOffsets(),elementOffsets=$(element).cumulativeOffset();if(options.offset)elementOffsets[1]+=options.offset;return new Effect.Tween(null,scrollOffsets.top,elementOffsets[1],options,function(p){scrollTo(scrollOffsets.left,p.round());});};Effect.Fade=function(element){element=$(element);var oldOpacity=element.getInlineOpacity();var options=Object.extend({from:element.getOpacity()||1.0,to:0.0,afterFinishInternal:function(effect){if(effect.options.to!=0)return;effect.element.hide().setStyle({opacity:oldOpacity});}},arguments[1]||{});return new Effect.Opacity(element,options);};Effect.Appear=function(element){element=$(element);var options=Object.extend({from:(element.getStyle('display')=='none'?0.0:element.getOpacity()||0.0),to:1.0,afterFinishInternal:function(effect){effect.element.forceRerendering();},beforeSetup:function(effect){effect.element.setOpacity(effect.options.from).show();}},arguments[1]||{});return new Effect.Opacity(element,options);};Effect.Puff=function(element){element=$(element);var oldStyle={opacity:element.getInlineOpacity(),position:element.getStyle('position'),top:element.style.top,left:element.style.left,width:element.style.width,height:element.style.height};return new Effect.Parallel([new Effect.Scale(element,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new Effect.Opacity(element,{sync:true,to:0.0})],Object.extend({duration:1.0,beforeSetupInternal:function(effect){Position.absolutize(effect.effects[0].element);},afterFinishInternal:function(effect){effect.effects[0].element.hide().setStyle(oldStyle);}},arguments[1]||{}));};Effect.BlindUp=function(element){element=$(element);element.makeClipping();return new Effect.Scale(element,0,Object.extend({scaleContent:false,scaleX:false,restoreAfterFinish:true,afterFinishInternal:function(effect){effect.element.hide().undoClipping();}},arguments[1]||{}));};Effect.BlindDown=function(element){element=$(element);var elementDimensions=element.getDimensions();return new Effect.Scale(element,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makeClipping().setStyle({height:'0px'}).show();},afterFinishInternal:function(effect){effect.element.undoClipping();}},arguments[1]||{}));};Effect.SwitchOff=function(element){element=$(element);var oldOpacity=element.getInlineOpacity();return new Effect.Appear(element,Object.extend({duration:0.4,from:0,transition:Effect.Transitions.flicker,afterFinishInternal:function(effect){new Effect.Scale(effect.element,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetup:function(effect){effect.element.makePositioned().makeClipping();},afterFinishInternal:function(effect){effect.element.hide().undoClipping().undoPositioned().setStyle({opacity:oldOpacity});}});}},arguments[1]||{}));};Effect.DropOut=function(element){element=$(element);var oldStyle={top:element.getStyle('top'),left:element.getStyle('left'),opacity:element.getInlineOpacity()};return new Effect.Parallel([new Effect.Move(element,{x:0,y:100,sync:true}),new Effect.Opacity(element,{sync:true,to:0.0})],Object.extend({duration:0.5,beforeSetup:function(effect){effect.effects[0].element.makePositioned();},afterFinishInternal:function(effect){effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle);}},arguments[1]||{}));};Effect.Shake=function(element){element=$(element);var options=Object.extend({distance:20,duration:0.5},arguments[1]||{});var distance=parseFloat(options.distance);var split=parseFloat(options.duration)/10.0;var oldStyle={top:element.getStyle('top'),left:element.getStyle('left')};return new Effect.Move(element,{x:distance,y:0,duration:split,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:distance*2,y:0,duration:split*2,afterFinishInternal:function(effect){new Effect.Move(effect.element,{x:-distance,y:0,duration:split,afterFinishInternal:function(effect){effect.element.undoPositioned().setStyle(oldStyle);}});}});}});}});}});}});};Effect.SlideDown=function(element){element=$(element).cleanWhitespace();var oldInnerBottom=element.down().getStyle('bottom');var elementDimensions=element.getDimensions();return new Effect.Scale(element,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:window.opera?0:1,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makePositioned();effect.element.down().makePositioned();if(window.opera)effect.element.setStyle({top:''});effect.element.makeClipping().setStyle({height:'0px'}).show();},afterUpdateInternal:function(effect){effect.element.down().setStyle({bottom:(effect.dims[0]-effect.element.clientHeight)+'px'});},afterFinishInternal:function(effect){effect.element.undoClipping().undoPositioned();effect.element.down().undoPositioned().setStyle({bottom:oldInnerBottom});}},arguments[1]||{}));};Effect.SlideUp=function(element){element=$(element).cleanWhitespace();var oldInnerBottom=element.down().getStyle('bottom');var elementDimensions=element.getDimensions();return new Effect.Scale(element,window.opera?0:1,Object.extend({scaleContent:false,scaleX:false,scaleMode:'box',scaleFrom:100,scaleMode:{originalHeight:elementDimensions.height,originalWidth:elementDimensions.width},restoreAfterFinish:true,afterSetup:function(effect){effect.element.makePositioned();effect.element.down().makePositioned();if(window.opera)effect.element.setStyle({top:''});effect.element.makeClipping().show();},afterUpdateInternal:function(effect){effect.element.down().setStyle({bottom:(effect.dims[0]-effect.element.clientHeight)+'px'});},afterFinishInternal:function(effect){effect.element.hide().undoClipping().undoPositioned();effect.element.down().undoPositioned().setStyle({bottom:oldInnerBottom});}},arguments[1]||{}));};Effect.Squish=function(element){return new Effect.Scale(element,window.opera?1:0,{restoreAfterFinish:true,beforeSetup:function(effect){effect.element.makeClipping();},afterFinishInternal:function(effect){effect.element.hide().undoClipping();}});};Effect.Grow=function(element){element=$(element);var options=Object.extend({direction:'center',moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.full},arguments[1]||{});var oldStyle={top:element.style.top,left:element.style.left,height:element.style.height,width:element.style.width,opacity:element.getInlineOpacity()};var dims=element.getDimensions();var initialMoveX,initialMoveY;var moveX,moveY;switch(options.direction){case'top-left':initialMoveX=initialMoveY=moveX=moveY=0;break;case'top-right':initialMoveX=dims.width;initialMoveY=moveY=0;moveX=-dims.width;break;case'bottom-left':initialMoveX=moveX=0;initialMoveY=dims.height;moveY=-dims.height;break;case'bottom-right':initialMoveX=dims.width;initialMoveY=dims.height;moveX=-dims.width;moveY=-dims.height;break;case'center':initialMoveX=dims.width/2;initialMoveY=dims.height/2;moveX=-dims.width/2;moveY=-dims.height/2;break;}
return new Effect.Move(element,{x:initialMoveX,y:initialMoveY,duration:0.01,beforeSetup:function(effect){effect.element.hide().makeClipping().makePositioned();},afterFinishInternal:function(effect){new Effect.Parallel([new Effect.Opacity(effect.element,{sync:true,to:1.0,from:0.0,transition:options.opacityTransition}),new Effect.Move(effect.element,{x:moveX,y:moveY,sync:true,transition:options.moveTransition}),new Effect.Scale(effect.element,100,{scaleMode:{originalHeight:dims.height,originalWidth:dims.width},sync:true,scaleFrom:window.opera?1:0,transition:options.scaleTransition,restoreAfterFinish:true})],Object.extend({beforeSetup:function(effect){effect.effects[0].element.setStyle({height:'0px'}).show();},afterFinishInternal:function(effect){effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldStyle);}},options));}});};Effect.Shrink=function(element){element=$(element);var options=Object.extend({direction:'center',moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.none},arguments[1]||{});var oldStyle={top:element.style.top,left:element.style.left,height:element.style.height,width:element.style.width,opacity:element.getInlineOpacity()};var dims=element.getDimensions();var moveX,moveY;switch(options.direction){case'top-left':moveX=moveY=0;break;case'top-right':moveX=dims.width;moveY=0;break;case'bottom-left':moveX=0;moveY=dims.height;break;case'bottom-right':moveX=dims.width;moveY=dims.height;break;case'center':moveX=dims.width/2;moveY=dims.height/2;break;}
return new Effect.Parallel([new Effect.Opacity(element,{sync:true,to:0.0,from:1.0,transition:options.opacityTransition}),new Effect.Scale(element,window.opera?1:0,{sync:true,transition:options.scaleTransition,restoreAfterFinish:true}),new Effect.Move(element,{x:moveX,y:moveY,sync:true,transition:options.moveTransition})],Object.extend({beforeStartInternal:function(effect){effect.effects[0].element.makePositioned().makeClipping();},afterFinishInternal:function(effect){effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle(oldStyle);}},options));};Effect.Pulsate=function(element){element=$(element);var options=arguments[1]||{},oldOpacity=element.getInlineOpacity(),transition=options.transition||Effect.Transitions.linear,reverser=function(pos){return 1-transition((-Math.cos((pos*(options.pulses||5)*2)*Math.PI)/2)+.5);};return new Effect.Opacity(element,Object.extend(Object.extend({duration:2.0,from:0,afterFinishInternal:function(effect){effect.element.setStyle({opacity:oldOpacity});}},options),{transition:reverser}));};Effect.Fold=function(element){element=$(element);var oldStyle={top:element.style.top,left:element.style.left,width:element.style.width,height:element.style.height};element.makeClipping();return new Effect.Scale(element,5,Object.extend({scaleContent:false,scaleX:false,afterFinishInternal:function(effect){new Effect.Scale(element,1,{scaleContent:false,scaleY:false,afterFinishInternal:function(effect){effect.element.hide().undoClipping().setStyle(oldStyle);}});}},arguments[1]||{}));};Effect.Morph=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({style:{}},arguments[1]||{});if(!Object.isString(options.style))this.style=$H(options.style);else{if(options.style.include(':'))
this.style=options.style.parseStyle();else{this.element.addClassName(options.style);this.style=$H(this.element.getStyles());this.element.removeClassName(options.style);var css=this.element.getStyles();this.style=this.style.reject(function(style){return style.value==css[style.key];});options.afterFinishInternal=function(effect){effect.element.addClassName(effect.options.style);effect.transforms.each(function(transform){effect.element.style[transform.style]='';});};}}
this.start(options);},setup:function(){function parseColor(color){if(!color||['rgba(0, 0, 0, 0)','transparent'].include(color))color='#ffffff';color=color.parseColor();return $R(0,2).map(function(i){return parseInt(color.slice(i*2+1,i*2+3),16);});}
this.transforms=this.style.map(function(pair){var property=pair[0],value=pair[1],unit=null;if(value.parseColor('#zzzzzz')!='#zzzzzz'){value=value.parseColor();unit='color';}else if(property=='opacity'){value=parseFloat(value);if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout))
this.element.setStyle({zoom:1});}else if(Element.CSS_LENGTH.test(value)){var components=value.match(/^([\+\-]?[0-9\.]+)(.*)$/);value=parseFloat(components[1]);unit=(components.length==3)?components[2]:null;}
var originalValue=this.element.getStyle(property);return{style:property.camelize(),originalValue:unit=='color'?parseColor(originalValue):parseFloat(originalValue||0),targetValue:unit=='color'?parseColor(value):value,unit:unit};}.bind(this)).reject(function(transform){return((transform.originalValue==transform.targetValue)||(transform.unit!='color'&&(isNaN(transform.originalValue)||isNaN(transform.targetValue))));});},update:function(position){var style={},transform,i=this.transforms.length;while(i--)
style[(transform=this.transforms[i]).style]=transform.unit=='color'?'#'+
(Math.round(transform.originalValue[0]+
(transform.targetValue[0]-transform.originalValue[0])*position)).toColorPart()+
(Math.round(transform.originalValue[1]+
(transform.targetValue[1]-transform.originalValue[1])*position)).toColorPart()+
(Math.round(transform.originalValue[2]+
(transform.targetValue[2]-transform.originalValue[2])*position)).toColorPart():(transform.originalValue+
(transform.targetValue-transform.originalValue)*position).toFixed(3)+
(transform.unit===null?'':transform.unit);this.element.setStyle(style,true);}});Effect.Transform=Class.create({initialize:function(tracks){this.tracks=[];this.options=arguments[1]||{};this.addTracks(tracks);},addTracks:function(tracks){tracks.each(function(track){track=$H(track);var data=track.values().first();this.tracks.push($H({ids:track.keys().first(),effect:Effect.Morph,options:{style:data}}));}.bind(this));return this;},play:function(){return new Effect.Parallel(this.tracks.map(function(track){var ids=track.get('ids'),effect=track.get('effect'),options=track.get('options');var elements=[$(ids)||$$(ids)].flatten();return elements.map(function(e){return new effect(e,Object.extend({sync:true},options))});}).flatten(),this.options);}});Element.CSS_PROPERTIES=$w('backgroundColor backgroundPosition borderBottomColor borderBottomStyle '+'borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth '+'borderRightColor borderRightStyle borderRightWidth borderSpacing '+'borderTopColor borderTopStyle borderTopWidth bottom clip color '+'fontSize fontWeight height left letterSpacing lineHeight '+'marginBottom marginLeft marginRight marginTop markerOffset maxHeight '+'maxWidth minHeight minWidth opacity outlineColor outlineOffset '+'outlineWidth paddingBottom paddingLeft paddingRight paddingTop '+'right textIndent top width wordSpacing zIndex');Element.CSS_LENGTH=/^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;String.__parseStyleElement=document.createElement('div');String.prototype.parseStyle=function(){var style,styleRules=$H();if(Prototype.Browser.WebKit)
style=new Element('div',{style:this}).style;else{String.__parseStyleElement.innerHTML='<div style="'+this+'"></div>';style=String.__parseStyleElement.childNodes[0].style;}
Element.CSS_PROPERTIES.each(function(property){if(style[property])styleRules.set(property,style[property]);});if(Prototype.Browser.IE&&this.include('opacity'))
styleRules.set('opacity',this.match(/opacity:\s*((?:0|1)?(?:\.\d*)?)/)[1]);return styleRules;};if(document.defaultView&&document.defaultView.getComputedStyle){Element.getStyles=function(element){var css=document.defaultView.getComputedStyle($(element),null);return Element.CSS_PROPERTIES.inject({},function(styles,property){styles[property]=css[property];return styles;});};}else{Element.getStyles=function(element){element=$(element);var css=element.currentStyle,styles;styles=Element.CSS_PROPERTIES.inject({},function(results,property){results[property]=css[property];return results;});if(!styles.opacity)styles.opacity=element.getOpacity();return styles;};}
Effect.Methods={morph:function(element,style){element=$(element);new Effect.Morph(element,Object.extend({style:style},arguments[2]||{}));return element;},visualEffect:function(element,effect,options){element=$(element);var s=effect.dasherize().camelize(),klass=s.charAt(0).toUpperCase()+s.substring(1);new Effect[klass](element,options);return element;},highlight:function(element,options){element=$(element);new Effect.Highlight(element,options);return element;}};$w('fade appear grow shrink fold blindUp blindDown slideUp slideDown '+'pulsate shake puff squish switchOff dropOut').each(function(effect){Effect.Methods[effect]=function(element,options){element=$(element);Effect[effect.charAt(0).toUpperCase()+effect.substring(1)](element,options);return element;};});$w('getInlineOpacity forceRerendering setContentZoom collectTextNodes collectTextNodesIgnoreClass getStyles').each(function(f){Effect.Methods[f]=Element[f];});Element.addMethods(Effect.Methods);
;/******************************************************************************
Name:    Highslide JS
Version: 4.0.10 (November 25 2008)
Config:  default +events +unobtrusive +imagemap +slideshow +positioning +transitions +inline +ajax +iframe +flash +packed
Author:  Torstein Hønsi
Support: http://highslide.com/support

Licence:
Highslide JS is licensed under a Creative Commons Attribution-NonCommercial 2.5
License (http://creativecommons.org/licenses/by-nc/2.5/).

You are free:
	* to copy, distribute, display, and perform the work
	* to make derivative works

Under the following conditions:
	* Attribution. You must attribute the work in the manner  specified by  the
	  author or licensor.
	* Noncommercial. You may not use this work for commercial purposes.

* For  any  reuse  or  distribution, you  must make clear to others the license
  terms of this work.
* Any  of  these  conditions  can  be  waived  if  you  get permission from the 
  copyright holder.

Your fair use and other rights are in no way affected by the above.
******************************************************************************/
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('q k={U:{8t:\'9E\',9M:\'ch...\',9L:\'7t K ci\',bb:\'7t K cg K cf\',8x:\'cd K ce C (f)\',aF:\'cj by <i>9e 9j</i>\',aE:\'ck K cp 9e 9j co\',7Q:\'9s\',7I:\'9V\',7R:\'9Q\',77:\'9h\',71:\'9h (cn)\',93:\'cl\',9N:\'9f\',9Z:\'9f 1A (9a)\',9C:\'98\',9B:\'98 1A (9a)\',7N:\'9s (7v 1h)\',7J:\'9V (7v 3x)\',7B:\'9Q\',9K:\'cm C\',3m:\'cc %1 ca %2\',8U:\'7t K 1Y 2w, c1 a3 c2 K 3e. c0 7v bX Q 1x a3 2P.\'},4S:\'N/bY/\',aq:\'c3.4T\',6n:\'c4.4T\',7o:56,ar:56,4r:15,8w:15,4N:15,6I:15,4j:c9,9F:0.75,7X:J,8b:5,3s:2,8c:3,ak:\'43 3x\',an:1,7q:1j,b4:J,aM:\'c8://N.c7\',8X:J,3C:[],6k:aL,3E:0,8g:50,6b:1j,7c:J,4l:J,3t:\'5L\',8B:J,4h:\'1U\',8P:\'1U\',9n:H,9d:H,8i:J,3Y:a2,5x:a2,5N:J,1P:\'c6-cq\',6g:\'N-W\',73:{2H:\'<1f 2a="N-2H"><5U>\'+\'<1D 2a="N-2P">\'+\'<a 1Q="#" 1Z="{k.U.7N}">\'+\'<1u>{k.U.7Q}</1u></a>\'+\'</1D>\'+\'<1D 2a="N-3v">\'+\'<a 1Q="#" 1Z="{k.U.9Z}">\'+\'<1u>{k.U.9N}</1u></a>\'+\'</1D>\'+\'<1D 2a="N-30">\'+\'<a 1Q="#" 1Z="{k.U.9B}">\'+\'<1u>{k.U.9C}</1u></a>\'+\'</1D>\'+\'<1D 2a="N-1x">\'+\'<a 1Q="#" 1Z="{k.U.7J}">\'+\'<1u>{k.U.7I}</1u></a>\'+\'</1D>\'+\'<1D 2a="N-3e">\'+\'<a 1Q="#" 1Z="{k.U.7B}">\'+\'<1u>{k.U.7R}</1u></a>\'+\'</1D>\'+\'<1D 2a="N-1g-2v">\'+\'<a 1Q="#" 1Z="{k.U.8x}">\'+\'<1u>{k.U.9K}</1u></a>\'+\'</1D>\'+\'<1D 2a="N-1Y">\'+\'<a 1Q="#" 1Z="{k.U.71}" >\'+\'<1u>{k.U.77}</1u></a>\'+\'</1D>\'+\'</5U></1f>\',9v:\'<1f 2a="N-cH"><5U>\'+\'<1D 2a="N-2P">\'+\'<a 1Q="#" 1Z="{k.U.7N}" 2y="D k.2P(j)">\'+\'<1u>{k.U.7Q}</1u></a>\'+\'</1D>\'+\'<1D 2a="N-1x">\'+\'<a 1Q="#" 1Z="{k.U.7J}" 2y="D k.1x(j)">\'+\'<1u>{k.U.7I}</1u></a>\'+\'</1D>\'+\'<1D 2a="N-3e">\'+\'<a 1Q="#" 1Z="{k.U.7B}" 2y="D 1j">\'+\'<1u>{k.U.7R}</1u></a>\'+\'</1D>\'+\'<1D 2a="N-1Y">\'+\'<a 1Q="#" 1Z="{k.U.71}" 2y="D k.1Y(j)">\'+\'<1u>{k.U.77}</1u></a>\'+\'</1D>\'+\'</5U></1f>\'+\'<1f 2a="N-19"></1f>\'+\'<1f 2a="N-cS"><1f>\'+\'<1u 2a="N-3T" 1Z="{k.U.93}"><1u></1u></1u>\'+\'</1f></1f>\'},54:[],7a:J,V:[],72:[\'5N\',\'4h\',\'8P\',\'9n\',\'9d\',\'1P\',\'3s\',\'cR\',\'cQ\',\'cO\',\'96\',\'cP\',\'bW\',\'cF\',\'94\',\'8i\',\'3I\',\'5t\',\'3C\',\'3E\',\'7M\',\'L\',\'R\',\'6b\',\'7c\',\'4l\',\'cw\',\'cx\',\'cv\',\'2t\',\'8B\',\'3N\',\'4x\',\'3t\',\'7m\',\'6g\',\'3Y\',\'5x\',\'9I\',\'cu\',\'2N\',\'3K\',\'be\',\'br\',\'1e\'],1L:[],8v:0,7h:{x:[\'aZ\',\'1h\',\'4o\',\'3x\',\'aR\'],y:[\'5u\',\'1c\',\'8z\',\'43\',\'6t\']},6G:{},94:{},96:{},7m:{9m:{},2b:{},9q:{}},6c:[],5r:[],4p:{},42:[],6P:[],4X:[],69:{},8y:{},1p:(1b.4L&&!1F.3P),4W:/am/.Y(3M.68),53:/ct.+bl:1\\.[0-8].+bk/.Y(3M.68),$:B(1v){D 1b.8N(1v)},2k:B(1T,4q){1T[1T.14]=4q},1a:B(9U,3V,3R,58,9R){q el=1b.1a(9U);m(3V)k.8r(el,3V);m(9R)k.O(el,{7w:0,7y:\'1E\',8V:0});m(3R)k.O(el,3R);m(58)58.1K(el);D el},8r:B(el,3V){Q(q x 2X 3V)el[x]=3V[x]},O:B(el,3R){Q(q x 2X 3R){m(k.1p&&x==\'20\'){m(3R[x]>0.99)el.F.cz(\'7S\');I el.F.7S=\'cE(20=\'+(3R[x]*2U)+\')\'}I el.F[x]=3R[x]}},3S:B(){q 1T=3M.9H.6Q("cD");D 1T[1]?9D(1T[1]):H},6R:B(){q d=1b,w=1F,3U=d.8n&&d.8n!=\'bv\'?d.4V:d.19;q b=d.19;q 9G=(w.6m&&w.9X)?w.6m+w.9X:16.2M(b.9O,b.2u),9J=(w.5X&&1F.a0)?w.5X+w.a0:16.2M(b.9A,b.1V),6A=k.1p?3U.9O:(d.4V.8R||5W.6m),6M=k.1p?16.2M(3U.9A,3U.8M):(d.4V.8M||5W.5X);q L=k.1p?3U.8R:(d.4V.8R||5W.6m),R=k.1p?3U.8M:5W.5X;D{6A:16.2M(6A,9G),6M:16.2M(6M,9J),L:L,R:R,5T:k.1p?3U.5T:bx,5Y:k.1p?3U.5Y:bA}},6a:B(el){m(/5M/i.Y(el.3w)){q 6s=1b.2E(\'1B\');Q(q i=0;i<6s.14;i++){q u=6s[i].bz;m(u&&u.23(/^.*?#/,\'\')==el.3h.4e){el=6s[i];5n}}}q p={x:el.9w,y:el.6Y};4B(el.9x){el=el.9x;p.x+=el.9w;p.y+=el.6Y;m(el!=1b.19&&el!=1b.4V){p.x-=el.5T;p.y-=el.5Y}}D p},2v:B(a,2b,3Q,S){m(!a)a=k.1a(\'a\',H,{1w:\'1E\'},k.26);m(1z a.5P==\'B\')D 2b;m(S==\'3G\'){Q(q i=0;i<k.42.14;i++){m(k.42[i]&&k.42[i].a==a){k.42[i].al();k.42[i]=H;D 1j}}k.9o=J}1t{1N k.5i(a,2b,3Q,S);D 1j}1s(e){D J}},8A:B(a,2b,3Q){D k.2v(a,2b,3Q,\'3G\')},7z:B(){D k.1a(\'1f\',{18:\'N-3G-T\',2s:k.8d(k.73.9v)})},4f:B(el,3w,18){q 11=el.2E(3w);Q(q i=0;i<11.14;i++){m((1N 4k(18)).Y(11[i].18)){D 11[i]}}D H},8d:B(s){s=s.23(/\\s/g,\' \');q 29=/{k\\.U\\.([^}]+)\\}/g,55=s.24(29),U;m(55)Q(q i=0;i<55.14;i++){U=55[i].23(29,"$1");m(1z k.U[U]!=\'2g\')s=s.23(55[i],k.U[U])}D s},78:B(){q 11=1b.2E(\'a\');Q(q i=0;i<11.14;i++){q S=k.9z(11[i]);m(S&&!11[i].9y){(B(){q t=S;m(k.1r(k,\'bN\',{6w:11[i],S:t})){11[i].2y=(S==\'2w\')?B(){D k.2v(j)}:B(){D k.8A(j,{2t:t})}}})();11[i].9y=J}}m(!k.aT)21(k.78,50);I k.5m()},9z:B(el){m(el.6N==\'N\')D\'2w\';I m(el.6N==\'N-2T\')D\'2T\';I m(el.6N==\'N-1d\')D\'1d\';I m(el.6N==\'N-3i\')D\'3i\'},7n:B(a){Q(q i=0;i<k.4X.14;i++){m(k.4X[i][0]==a){q c=k.4X[i][1];k.4X[i][1]=c.4u(1);D c}}D H},aS:B(e){q 1T=k.8T();Q(q i=0;i<1T.4K.14;i++){q a=1T.4K[i];m(k.3F(a,\'2t\')==\'2T\'&&k.3F(a,\'8B\'))k.2k(k.6P,a)}k.7W(0)},7W:B(i){m(!k.6P[i])D;q a=k.6P[i];q 57=k.5d(k.3F(a,\'7M\'));m(!57)57=k.7z();q 2T=1N k.6L(a,57,1);2T.8a=B(){};2T.36=B(){k.2k(k.4X,[a,57]);k.7W(i+1)};2T.84()},97:B(){q 7V=0,6C=-1;Q(q i=0;i<k.V.14;i++){m(k.V[i]){m(k.V[i].W.F.1H&&k.V[i].W.F.1H>7V){7V=k.V[i].W.F.1H;6C=i}}}m(6C==-1)k.2R=-1;I k.V[6C].3J()},3F:B(a,5H){a.5P=a.2y;q p=a.5P?a.5P():H;a.5P=H;D(p&&1z p[5H]!=\'2g\')?p[5H]:(1z k[5H]!=\'2g\'?k[5H]:H)},6U:B(a){q 1e=k.3F(a,\'1e\');m(1e)D 1e;D a.1Q},5d:B(1v){q 1W=k.$(1v),4g=k.8y[1v],a={};m(!1W&&!4g)D H;m(!4g){4g=1W.4u(J);4g.1v=\'\';k.8y[1v]=4g;D 1W}I{D 4g.4u(J)}},51:B(d){k.88.1K(d);k.88.2s=\'\'},1y:B(A){m(!k.2p){k.2p=k.1a(\'1f\',{18:\'N-bS\',5I:\'\',2y:B(){m(k.1r(k,\'bM\'))k.1Y()}},{1l:\'2c\',1h:0},k.26,J);k.2I(1F,\'3T\',k.5c)}k.2p.F.1w=\'\';k.5c();k.2p.5I+=\'|\'+A.P;m(k.53&&k.9l)k.2p.F.5y=\'6r(\'+k.4S+\'bL.9u)\';I k.2d(k.2p,0,A.3E,k.8g)},7U:B(P){m(!k.2p)D;m(1z P!=\'2g\')k.2p.5I=k.2p.5I.23(\'|\'+P,\'\');m((1z P!=\'2g\'&&k.2p.5I!=\'\')||(k.2O&&k.3F(k.2O,\'3E\')))D;m(k.53&&k.9l)k.O(k.2p,{5y:\'1E\',L:0,R:0});I k.2d(k.2p,k.3E,0,k.8g,B(){k.O(k.2p,{1w:\'1E\',L:0,R:0})})},5c:B(A){m(!k.2p)D;q 3r=k.6R();q h=(k.1p&&A&&A.W)?2A(A.W.F.1c)+2A(A.W.F.R)+(A.Z?A.Z.1S:0):0;k.O(k.2p,{L:3r.6A+\'E\',R:16.2M(3r.6M,h)+\'E\'})},6v:B(el,1G){k.5m();q A=k.M=k.3D(el);1t{q 92=k.2O=A.76(1G);92.2y()}1s(e){k.M=k.2O=H}1t{A.1Y()}1s(e){}D 1j},2P:B(el){D k.6v(el,-1)},1x:B(el){D k.6v(el,1)},64:B(e){m(!e)e=1F.2G;m(!e.2B)e.2B=e.8e;m(1z e.2B.9p!=\'2g\')D J;m(!k.1r(k,\'bE\',e))D J;q A=k.3D();q 1G=H;8Y(e.bD){22 70:m(A)A.6j();D J;22 32:1G=2;5n;22 34:22 39:22 40:1G=1;5n;22 8:22 33:22 37:22 38:1G=-1;5n;22 27:22 13:1G=0}m(1G!==H){m(1G!=2)k.4C(1b,1F.3P?\'86\':\'85\',k.64);m(!k.8X)D J;m(e.5R)e.5R();I e.bC=1j;m(A){m(1G==0){A.1Y()}I m(1G==2){m(A.1A)A.1A.aJ()}I{m(A.1A)A.1A.30();k.6v(A.P,1G)}D 1j}}D J},bG:B(1o){k.2k(k.1L,1o)},bH:B(3W){q 2S=3W.2N;m(1z 2S==\'7s\'){Q(q i=0;i<2S.14;i++){q o={};Q(q x 2X 3W)o[x]=3W[x];o.2N=2S[i];k.2k(k.5r,o)}}I{k.2k(k.5r,3W)}},8D:B(6w,6K){q el,29=/^N-W-([0-9]+)$/;el=6w;4B(el.3h){m(el.1v&&29.Y(el.1v))D el.1v.23(29,"$1");el=el.3h}m(!6K){el=6w;4B(el.3h){m(el.3w&&k.63(el)){Q(q P=0;P<k.V.14;P++){q A=k.V[P];m(A&&A.a==el)D P}}el=el.3h}}D H},3D:B(el,6K){m(1z el==\'2g\')D k.V[k.2R]||H;m(1z el==\'3m\')D k.V[el]||H;m(1z el==\'81\')el=k.$(el);D k.V[k.8D(el,6K)]||H},63:B(a){D(a.2y&&a.2y.au().23(/\\s/g,\' \').24(/k.(bK|e)bJ/))},ad:B(){Q(q i=0;i<k.V.14;i++)m(k.V[i]&&k.V[i].5j)k.97()},1r:B(5K,8l,9k){D 5K&&5K[8l]?(5K[8l](5K,9k)!==1j):J},74:B(e){m(!e)e=1F.2G;m(e.cG>1)D J;m(!e.2B)e.2B=e.8e;q el=e.2B;4B(el.3h&&!(/N-(2w|3e|3G|3T)/.Y(el.18))){el=el.3h}q A=k.3D(el);m(A&&(A.5g||!A.5j))D J;m(A&&e.S==\'7C\'){m(e.2B.9p)D J;q 24=el.18.24(/N-(2w|3e|3T)/);m(24){k.2n={A:A,S:24[1],1h:A.x.G,L:A.x.C,1c:A.y.G,R:A.y.C,9b:e.6F,95:e.6J};k.2I(1b,\'6B\',k.62);m(e.5R)e.5R();m(/N-(2w|3G)-8H/.Y(A.T.18)){A.3J();k.8q=J}D 1j}I m(/N-3G/.Y(el.18)&&k.2R!=A.P){A.3J();A.4R(\'1n\')}}I m(e.S==\'aY\'){k.4C(1b,\'6B\',k.62);m(k.2n){m(k.2n.S==\'2w\')k.2n.A.T.F.3Z=k.5w;q 3a=k.2n.3a;m(!3a&&!k.8q&&!/(3e|3T)/.Y(k.2n.S)){m(k.1r(A,\'es\'))A.1Y()}I m(3a||(!3a&&k.9o)){k.2n.A.4R(\'1n\')}m(k.2n.A.3q)k.2n.A.3q.F.1w=\'1E\';m(3a)k.1r(k.2n.A,\'ej\',k.2n);m(3a)k.5c(A);k.8q=1j;k.2n=H}I m(/N-2w-8H/.Y(el.18)){el.F.3Z=k.5w}}D 1j},62:B(e){m(!k.2n)D J;m(!e)e=1F.2G;q a=k.2n,A=a.A;m(A.1d){m(!A.3q)A.3q=k.1a(\'1f\',H,{1l:\'2c\',L:A.x.C+\'E\',R:A.y.C+\'E\',1h:A.x.cb+\'E\',1c:A.y.cb+\'E\',1H:4,5y:(k.1p?\'eo\':\'1E\'),20:.cU},A.W,J);m(A.3q.F.1w==\'1E\')A.3q.F.1w=\'\'}a.dX=e.6F-a.9b;a.dY=e.6J-a.95;q 8s=16.er(16.a6(a.dX,2)+16.a6(a.dY,2));m(!a.3a)a.3a=(a.S!=\'2w\'&&8s>0)||(8s>(k.eh||5));m(a.3a&&e.6F>5&&e.6J>5){m(!k.1r(A,\'ei\',a))D 1j;m(a.S==\'3T\')A.3T(a);I{A.8f(a.1h+a.dX,a.1c+a.dY);m(a.S==\'2w\')A.T.F.3Z=\'3e\'}}D 1j},a1:B(e){1t{m(!e)e=1F.2G;q 5f=/e1/i.Y(e.S);m(!e.2B)e.2B=e.8e;m(k.1p)e.7Z=5f?e.ec:e.eb;q A=k.3D(e.2B);m(!A.5j)D;m(!A||!e.7Z||k.3D(e.7Z,J)==A||k.2n)D;k.1r(A,5f?\'ed\':\'ee\',e);Q(q i=0;i<A.1L.14;i++){q o=k.$(\'2h\'+A.1L[i]);m(o&&o.4O){q 2f=5f?0:o.20,K=5f?o.20:0;k.2d(o,2f,K)}}}1s(e){}},2I:B(el,2G,3L){1t{el.2I(2G,3L,1j)}1s(e){1t{el.9Y(\'4Y\'+2G,3L);el.eg(\'4Y\'+2G,3L)}1s(e){el[\'4Y\'+2G]=3L}}},4C:B(el,2G,3L){1t{el.4C(2G,3L,1j)}1s(e){1t{el.9Y(\'4Y\'+2G,3L)}1s(e){el[\'4Y\'+2G]=H}}},6V:B(i){m(k.7a&&k.54[i]&&k.54[i]!=\'2g\'){q 1B=1b.1a(\'1B\');1B.4b=B(){1B=H;k.6V(i+1)};1B.1e=k.54[i]}},aV:B(3m){m(3m&&1z 3m!=\'7s\')k.8b=3m;q 1T=k.8T();Q(q i=0;i<1T.4E.14&&i<k.8b;i++){k.2k(k.54,k.6U(1T.4E[i]))}m(k.1P)1N k.5l(k.1P,B(){k.6V(0)});I k.6V(0);q 4T=k.1a(\'1B\',{1e:k.4S+k.6n})},66:B(){m(!k.26){k.26=k.1a(\'1f\',{18:\'N-26\'},{1l:\'2c\',1h:0,1c:0,L:\'2U%\',1H:k.4j,8u:\'9E\'},1b.19,J);k.2j=k.1a(\'a\',{18:\'N-2j\',1Z:k.U.9L,2s:k.U.9M,1Q:\'bi:;\'},{1l:\'2c\',1c:\'-41\',20:k.9F,1H:1},k.26);k.88=k.1a(\'1f\',H,{1w:\'1E\'},k.26);k.3b=k.1a(\'1f\',H,{90:\'8Z\',e3:\'e4\'},H,J);16.e7=B(t,b,c,d){D c*t/d+b};16.bm=B(t,b,c,d){D c*(t/=d)*t+b};16.bd=B(t,b,c,d){m((t/=d/2)<1)D c/2*t*t+b;D-c/2*((--t)*(t-2)-1)+b};Q(q x 2X k.5Z){m(1z k[x]!=\'2g\')k.U[x]=k[x];I m(1z k.U[x]==\'2g\'&&1z k.5Z[x]!=\'2g\')k.U[x]=k.5Z[x]}k.ai=(k.1p&&k.3S()<=6&&5a.e6==\'e5:\');k.aQ=(k.1p&&k.3S()<7);k.bj=((1F.3P&&3M.9H<9)||3M.b2==\'b6\'||(k.1p&&k.3S()<5.5));k.1r(j,\'ew\')}},aa:B(){k.9t=J;m(k.79)k.79()},5m:B(){q 11=1b.4L||1b.2E(\'*\'),4L=[],4E=[],4K=[],3j={},29;Q(q i=0;i<11.14;i++){29=k.63(11[i]);m(29){k.2k(4L,11[i]);m(29[0]==\'k.2v\')k.2k(4E,11[i]);I m(29[0]==\'k.8A\')k.2k(4K,11[i]);q g=k.3F(11[i],\'2N\')||\'1E\';m(!3j[g])3j[g]=[];k.2k(3j[g],11[i])}}k.46={4L:4L,3j:3j,4E:4E,4K:4K};D k.46},8T:B(){D k.46||k.5m()},2d:B(el,o,45,3l,4G,i,3y){m(1z i==\'2g\'){m(1z 3l!=\'3m\')3l=56;m(3l<25){k.O(el,{20:45});m(4G)4G();D}i=k.6c.14;3y=45>o?1:-1;q 5C=(25/(3l-3l%25))*16.aC(o-45)}o=9D(o);q 8G=(el.2d===0||el.2d===1j||(el.2d==2&&k.1p));el.F.1m=((8G?45:o)<=0)?\'1n\':\'2i\';m(8G||o<0||(3y==1&&o>45)){m(4G)4G();D}m(el.4c&&el.4c.i!=i){af(k.6c[el.4c.i]);o=el.4c.o}el.4c={i:i,o:o,5C:(5C||el.4c.5C)};el.F.1m=(o<=0)?\'1n\':\'2i\';k.O(el,{20:o});k.6c[i]=21(B(){k.2d(el,o+el.4c.5C*3y,45,H,4G,i,3y)},25)},1Y:B(el){q A=k.3D(el);m(A)A.1Y();D 1j}};k.5l=B(1P,36){j.36=36;j.1P=1P;q v=k.3S(),6q;j.8K=k.1p&&v>=5.5&&v<7;m(!1P){m(36)36();D}k.66();j.2K=k.1a(\'2K\',{eq:0},{1m:\'1n\',1l:\'2c\',en:\'em\',L:0},k.26,J);q 8O=k.1a(\'8O\',H,H,j.2K,1);j.2F=[];Q(q i=0;i<=8;i++){m(i%3==0)6q=k.1a(\'6q\',H,{R:\'1U\'},8O,J);j.2F[i]=k.1a(\'2F\',H,H,6q,J);q F=i!=4?{dh:0,df:0}:{1l:\'44\'};k.O(j.2F[i],F)}j.2F[4].18=1P+\' N-Z\';j.9P()};k.5l.5s={9P:B(){q 1e=k.4S+(k.dc||"dd/")+j.1P+".9u";q 9S=k.4W?k.26:H;j.3u=k.1a(\'1B\',H,{1l:\'2c\',1c:\'-41\'},9S,J);q 31=j;j.3u.4b=B(){31.9T()};j.3u.1e=1e},9T:B(){q o=j.1S=j.3u.L/4,G=[[0,0],[0,-4],[-2,0],[0,-8],0,[-2,-8],[0,-2],[0,-6],[-2,-2]],1y={R:(2*o)+\'E\',L:(2*o)+\'E\'};Q(q i=0;i<=8;i++){m(G[i]){m(j.8K){q w=(i==1||i==7)?\'2U%\':j.3u.L+\'E\';q 1f=k.1a(\'1f\',H,{L:\'2U%\',R:\'2U%\',1l:\'44\',2L:\'1n\'},j.2F[i],J);k.1a(\'1f\',H,{7S:"dZ:do.ax.dp(dn=dm, 1e=\'"+j.3u.1e+"\')",1l:\'2c\',L:w,R:j.3u.R+\'E\',1h:(G[i][0]*o)+\'E\',1c:(G[i][1]*o)+\'E\'},1f,J)}I{k.O(j.2F[i],{5y:\'6r(\'+j.3u.1e+\') \'+(G[i][0]*o)+\'E \'+(G[i][1]*o)+\'E\'})}m(1F.3P&&(i==3||i==5))k.1a(\'1f\',H,1y,j.2F[i],J);k.O(j.2F[i],1y)}}j.3u=H;m(k.4p[j.1P])k.4p[j.1P].52();k.4p[j.1P]=j;m(j.36)j.36()},4n:B(A,G,9W){G=G||{x:A.x.G,y:A.y.G,w:A.x.C+A.x.1i+A.x.1R,h:A.y.C+A.y.1i+A.y.1R};m(9W)j.2K.F.1m=(G.h>=4*j.1S)?\'2i\':\'1n\';k.O(j.2K,{1h:(G.x-j.1S)+\'E\',1c:(G.y-j.1S)+\'E\',L:(G.w+2*(A.x.cb+j.1S))+\'E\'});G.w+=2*(A.x.cb-j.1S);G.h+=+2*(A.y.cb-j.1S);k.O(j.2F[4],{L:G.w>=0?G.w+\'E\':0,R:G.h>=0?G.h+\'E\':0});m(j.8K)j.2F[3].F.R=j.2F[5].F.R=j.2F[4].F.R},52:B(91){m(91)j.2K.F.1m=\'1n\';I k.51(j.2K)}};k.6d=B(A,1y){j.A=A;j.1y=1y;j.2Y=1y==\'x\'?\'dl\':\'db\';j.3k=j.2Y.61();j.5q=1y==\'x\'?\'da\':\'d0\';j.6W=j.5q.61();j.8Q=1y==\'x\'?\'d1\':\'cZ\';j.9g=j.8Q.61()};k.6d.5s={1k:B(P){8Y(P){22\'7f\':D j.1I+j.3n+(j.t-k.2j[\'1S\'+j.2Y])/2;22\'7K\':D j.G+j.cb+j.1i+(j.C-k.2j[\'1S\'+j.2Y])/2;22\'2Z\':D j.C+2*j.cb+j.1i+j.1R;22\'5e\':D j.49-j.3d-j.48;22\'5B\':D j.G-(j.A.Z?j.A.Z.1S:0);22\'8J\':D j.1k(\'2Z\')+(j.A.Z?2*j.A.Z.1S:0);22\'4m\':D j.3X?16.3A((j.C-j.3X)/2):0}},7j:B(){j.cb=(j.A.T[\'1S\'+j.2Y]-j.t)/2;j.48=k[\'8V\'+j.8Q]+2*j.cb},7G:B(){j.t=j.A.el[j.3k]?2A(j.A.el[j.3k]):j.A.el[\'1S\'+j.2Y];j.1I=j.A.1I[j.1y];j.3n=(j.A.el[\'1S\'+j.2Y]-j.t)/2;j.1i=j.1R=0;m(j.1I==0){j.1I=(k.3r[j.3k]/2)+k.3r[\'2z\'+j.5q]}},7g:B(){j.2J=\'1U\';m(j.A.8P==\'4o\')j.2J=\'4o\';I m(1N 4k(j.6W).Y(j.A.4h))j.2J=H;I m(1N 4k(j.9g).Y(j.A.4h))j.2J=\'2M\';j.G=j.1I-j.cb+j.3n;j.C=16.3O(j.1g,j.A[\'2M\'+j.2Y]||j.1g);j.3c=j.A.5N?16.3O(j.A[\'3O\'+j.2Y],j.1g):j.1g;m(k.7q&&j.1y==\'x\')j.3c=j.A.3Y;j.2B=j.A[\'2B\'+j.1y.cW()];j.3d=k[\'8V\'+j.5q];j.2z=k.3r[\'2z\'+j.5q];j.49=k.3r[j.3k]},4s:B(i){j.C=i;j.A.T.F[j.3k]=i+\'E\';j.A.W.F[j.3k]=j.1k(\'2Z\')+\'E\';m(j.A.Z)j.A.Z.4n(j.A);m(j.A.3q)j.A.3q.F[j.3k]=i+\'E\';m(j.A.2x){q d=j.A.2r;m(!j.7k)j.7k=j.A.1q[\'1S\'+j.2Y]-d[\'1S\'+j.2Y];d.F[j.3k]=(j.C-j.7k)+\'E\';m(j.1y==\'x\')j.A.4H.F.L=\'1U\';m(j.A.19)j.A.19.F[j.3k]=\'1U\'}m(j.1y==\'x\'&&j.A.1J)j.A.4v(J);m(j.1y==\'x\'&&j.A.1A&&j.A.2V){m(i==j.1g)j.A.1A.4U(\'1g-2v\');I j.A.1A.4d(\'1g-2v\')}},8S:B(i){j.G=i;j.A.W.F[j.6W]=i+\'E\';m(j.A.Z)j.A.Z.4n(j.A)}};k.5i=B(a,2b,3Q,2W){m(1b.7A&&k.1p&&!k.9t){k.79=B(){1N k.5i(a,2b,3Q,2W)};D}j.a=a;j.3Q=3Q;j.2W=2W||\'2w\';j.2x=(2W==\'3G\');j.2V=!j.2x;k.7a=1j;j.1L=[];j.M=k.M;k.M=H;k.66();q P=j.P=k.V.14;Q(q i=0;i<k.72.14;i++){q 4e=k.72[i];j[4e]=2b&&1z 2b[4e]!=\'2g\'?2b[4e]:k[4e]}m(!j.1e)j.1e=a.1Q;q el=(2b&&2b.8h)?k.$(2b.8h):a;el=j.a5=el.2E(\'1B\')[0]||el;j.5Q=el.1v||a.1v;m(!k.1r(j,\'d8\'))D J;Q(q i=0;i<k.V.14;i++){m(k.V[i]&&k.V[i].a==a&&!(j.M&&j.3C[1]==\'4i\')){k.V[i].3J();D 1j}}Q(q i=0;i<k.V.14;i++){m(k.V[i]&&k.V[i].a5!=el&&!k.V[i].6T){k.V[i].8W()}}k.V[j.P]=j;m(!k.7X){m(k.V[P-1])k.V[P-1].1Y();m(1z k.2R!=\'2g\'&&k.V[k.2R])k.V[k.2R].1Y()}j.el=el;j.1I=k.6a(el);k.3r=k.6R();q x=j.x=1N k.6d(j,\'x\');x.7G();q y=j.y=1N k.6d(j,\'y\');y.7G();m(/5M/i.Y(el.3w))j.b7(el);j.W=k.1a(\'1f\',{1v:\'N-W-\'+j.P,18:j.6g},{1m:\'1n\',1l:\'2c\',1H:k.4j++},H,J);j.W.d7=j.W.d6=k.a1;m(j.2W==\'2w\'&&j.3s==2)j.3s=0;m(!j.1P||(j.M&&j.2V&&j.3C[1]==\'4i\')){j[j.2W+\'7H\']()}I m(k.4p[j.1P]){j.7E();j[j.2W+\'7H\']()}I{j.59();q A=j;1N k.5l(j.1P,B(){A.7E();A[A.2W+\'7H\']()})}D J};k.5i.5s={7E:B(){q o=j.Z=k.4p[j.1P];o.2K.F.1H=j.W.F.1H;k.4p[j.1P]=H},59:B(){m(j.6T||j.2j)D;j.2j=k.2j;q A=j;j.2j.2y=B(){A.8W()};m(!k.1r(j,\'dq\'))D;q A=j,l=j.x.1k(\'7f\')+\'E\',t=j.y.1k(\'7f\')+\'E\';m(!2C&&j.M&&j.3C[1]==\'4i\')q 2C=j.M;m(2C){l=2C.x.1k(\'7K\')+\'E\';t=2C.y.1k(\'7K\')+\'E\';j.2j.F.1H=k.4j++}21(B(){m(A.2j)k.O(A.2j,{1h:l,1c:t,1H:k.4j++})},2U)},dM:B(){q A=j;q 1B=1b.1a(\'1B\');j.T=1B;1B.4b=B(){m(k.V[A.P])A.5D()};m(k.dN)1B.dL=B(){D 1j};1B.18=\'N-2w\';k.O(1B,{1m:\'1n\',1w:\'5b\',1l:\'2c\',9I:\'41\',1H:3});1B.1Z=k.U.8U;m(k.4W)k.26.1K(1B);m(k.1p&&k.dK)1B.1e=H;1B.1e=j.1e;j.59()},dI:B(){m(!k.1r(j,\'dJ\'))D;j.T=k.7n(j.a);m(!j.T)j.T=k.5d(j.7M);m(!j.T)j.T=k.7z();j.8p([\'67\']);m(j.67){q 19=k.4f(j.T,\'1f\',\'N-19\');m(19)19.1K(j.67);j.67.F.1w=\'5b\'}k.1r(j,\'dO\');j.1q=j.T;m(/(3i|1d)/.Y(j.2t))j.7d(j.1q);k.26.1K(j.W);k.O(j.W,{1l:\'dP\',7w:\'0 \'+k.8w+\'E 0 \'+k.4r+\'E\'});j.T=k.1a(\'1f\',{18:\'N-3G\'},{1l:\'44\',1H:3,2L:\'1n\'},j.W);j.4H=k.1a(\'1f\',H,H,j.T,1);j.4H.1K(j.1q);k.O(j.1q,{1l:\'44\',1w:\'5b\',8u:k.U.8t||\'\'});m(j.L)j.1q.F.L=j.L+\'E\';m(j.R)j.1q.F.R=j.R+\'E\';m(j.1q.2u<j.3Y)j.1q.F.L=j.3Y+\'E\';m(j.2t==\'2T\'&&!k.7n(j.a)){j.59();q 2T=1N k.6L(j.a,j.1q);q A=j;2T.36=B(){m(k.V[A.P])A.5D()};2T.8a=B(){5a.1Q=A.1e};2T.84()}I m(j.2t==\'1d\'&&j.3t==\'5L\'){j.6p()}I j.5D()},5D:B(){1t{m(!j.T)D;j.T.4b=H;m(j.6T)D;I j.6T=J;q x=j.x,y=j.y;m(j.2j){k.O(j.2j,{1c:\'-41\'});j.2j=H;k.1r(j,\'aO\')}m(j.2V){x.1g=j.T.L;y.1g=j.T.R;k.O(j.T,{L:j.x.t+\'E\',R:j.y.t+\'E\'})}I m(j.7e)j.7e();j.W.1K(j.T);k.O(j.W,{1h:j.x.1I+\'E\',1c:j.y.1I+\'E\'});k.26.1K(j.W);x.7j();y.7j();j.aI();j.b8();q 2Q=x.1g/y.1g;x.7g();j.2J(x);y.7g();j.2J(y);m(j.2x)j.b5();m(j.1J)j.4v(0,1);m(j.5N){m(j.2V)j.bg(2Q);I j.7u();q 1M=j.1A;m(1M&&j.M&&1M.2H&&1M.a4){q G=1M.aH.1l||\'\',p;Q(q 1y 2X k.7h)Q(q i=0;i<5;i++){p=j[1y];m(G.24(k.7h[1y][i])){p.G=j.M[1y].G+(j.M[1y].1i-p.1i)+(j.M[1y].C-p.C)*[0,0,.5,1,1][i];m(1M.a4==\'dS\'){m(p.G+p.C+p.1i+p.1R>p.2z+p.49-p.48)p.G=p.2z+p.49-p.C-p.3d-p.48-p.1i-p.1R;m(p.G<p.2z+p.3d)p.G=p.2z+p.3d}}}}m(j.2V&&j.x.1g>j.x.C){j.bf();m(j.1L.14==1)j.4v()}}j.82()}1s(e){1F.5a.1Q=j.1e}},7d:B(58,1U){q c=k.4f(58,\'5S\',\'N-19\');m(/(1d|3i)/.Y(j.2t)){m(j.3N)c.F.L=j.3N+\'E\';m(j.4x)c.F.R=j.4x+\'E\'}},6p:B(){m(j.9i)D;q A=j;j.19=k.4f(j.1q,\'5S\',\'N-19\');m(j.2t==\'1d\'){j.59();q 5E=k.3b.4u(1);j.19.1K(5E);j.dR=j.1q.2u;m(!j.3N)j.3N=5E.2u;q 4z=j.1q.1V-j.19.1V,h=j.4x||(k.6R()).R-4z-k.4N-k.6I,4b=j.3t==\'5L\'?\' 4b="m (k.V[\'+j.P+\']) k.V[\'+j.P+\'].5D()" \':\'\';j.19.2s+=\'<1d 4e="k\'+(1N dG()).dw()+\'" dx="0" P="\'+j.P+\'" \'+\' dv="J" F="L:\'+j.3N+\'E; R:\'+h+\'E" \'+4b+\' 1e="\'+j.1e+\'"></1d>\';j.5E=j.19.2E(\'1f\')[0];j.1d=j.19.2E(\'1d\')[0];m(j.3t==\'83\')j.7F()}m(j.2t==\'3i\'){j.19.1v=j.19.1v||\'k-ds-1v-\'+j.P;q a=j.7m;m(1z a.2b.9c==\'2g\')a.2b.9c=\'dz\';m(7T)7T.dE(j.1e,j.19.1v,j.3N,j.4x,a.dF||\'7\',a.dD,a.9m,a.2b,a.9q)}j.9i=J},7e:B(){m(j.1d&&!j.4x){j.1d.F.R=j.19.F.R=j.7p()+\'E\'}j.1q.1K(k.3b);m(!j.x.1g)j.x.1g=j.1q.2u;j.y.1g=j.1q.1V;j.1q.7i(k.3b);m(k.1p&&j.9r>2A(j.1q.6o.R)){j.9r=2A(j.1q.6o.R)}k.O(j.W,{1l:\'2c\',7w:\'0\'});k.O(j.T,{L:j.x.t+\'E\',R:j.y.t+\'E\'})},7p:B(){q h;1t{q 2m=j.1d.8C||j.1d.5z.1b;q 3b=2m.1a(\'1f\');3b.F.90=\'8Z\';2m.19.1K(3b);h=3b.6Y;m(k.1p)h+=2A(2m.19.6o.4N)+2A(2m.19.6o.6I)-1}1s(e){h=ev}D h},7F:B(){q 4w=j.1q.2u-j.5E.2u;m(4w<0)4w=0;q 4z=j.1q.1V-j.19.1V;k.O(j.1d,{L:(j.x.C-4w)+\'E\',R:(j.y.C-4z)+\'E\'});k.O(j.19,{L:j.1d.F.L,R:j.1d.F.R});j.4I=j.1d;j.2r=j.4I},b5:B(){j.7d(j.1q);m(j.2t==\'3i\'&&j.3t==\'5L\')j.6p();m(j.x.C<j.x.1g&&!j.6b)j.x.C=j.x.1g;m(j.y.C<j.y.1g&&!j.7c)j.y.C=j.y.1g;j.2r=j.1q;k.O(j.4H,{L:j.x.C+\'E\',1l:\'44\',1h:(j.x.G-j.x.1I)+\'E\',1c:(j.y.G-j.y.1I)+\'E\'});k.O(j.1q,{7y:\'1E\',L:\'1U\',R:\'1U\'});q 1W=k.4f(j.1q,\'5S\',\'N-19\');m(1W&&!/(1d|3i)/.Y(j.2t)){q 4A=1W;1W=k.1a(4A.dB,H,{2L:\'1n\'},H,J);4A.3h.dA(1W,4A);1W.1K(k.3b);1W.1K(4A);q 4w=j.1q.2u-1W.2u;q 4z=j.1q.1V-1W.1V;1W.7i(k.3b);q 6f=k.4W||3M.b2==\'b6\'?1:0;k.O(1W,{L:(j.x.C-4w-6f)+\'E\',R:(j.y.C-4z)+\'E\',2L:\'1U\',1l:\'44\'});m(6f&&4A.1V>1W.1V){1W.F.L=(2A(1W.F.L)+6f)+\'E\'}j.4I=1W;j.2r=j.4I}m(j.1d&&j.3t==\'5L\')j.7F();m(!j.4I&&j.y.C<j.4H.1V)j.2r=j.T;m(j.2r==j.T&&!j.6b&&!/(1d|3i)/.Y(j.2t)){j.x.C+=17}m(j.2r&&j.2r.1V>j.2r.3h.1V){21("1t { k.V["+j.P+"].2r.F.2L = \'1U\'; } 1s(e) {}",k.7o)}},b7:B(5M){q c=5M.dC.6Q(\',\');Q(q i=0;i<c.14;i++)c[i]=2A(c[i]);m(5M.dy.61()==\'dt\'){j.x.1I+=c[0]-c[2];j.y.1I+=c[1]-c[2];j.x.t=j.y.t=2*c[2]}I{q 5O,5F,5J=5O=c[0],5G=5F=c[1];Q(q i=0;i<c.14;i++){m(i%2==0){5J=16.3O(5J,c[i]);5O=16.2M(5O,c[i])}I{5G=16.3O(5G,c[i]);5F=16.2M(5F,c[i])}}j.x.1I+=5J;j.x.t=5O-5J;j.y.1I+=5G;j.y.t=5F-5G}},2J:B(p,4J){q 4a,2C=p.2B,1y=p==j.x?\'x\':\'y\';m(2C&&2C.24(/ /)){4a=2C.6Q(\' \');2C=4a[0]}m(2C&&k.$(2C)){p.G=k.6a(k.$(2C))[1y];m(4a&&4a[1]&&4a[1].24(/^[-]?[0-9]+E$/))p.G+=2A(4a[1])}I m(p.2J==\'1U\'||p.2J==\'4o\'){q 7x=1j;q 4M=k.5N;m(p.2J==\'4o\')p.G=16.3A(p.2z+(p.49-p.48-p.1k(\'2Z\'))/2);I p.G=16.3A(p.G-((p.1k(\'2Z\')-p.t)/2));m(p.G<p.2z+p.3d){p.G=p.2z+p.3d;7x=J}m(!4J&&p.C<p.3c){p.C=p.3c;4M=1j}m(p.G+p.1k(\'2Z\')>p.2z+p.49-p.48){m(!4J&&7x&&4M){p.C=p.1k(\'5e\')}I m(p.1k(\'2Z\')<p.1k(\'5e\')){p.G=p.2z+p.49-p.48-p.1k(\'2Z\')}I{p.G=p.2z+p.3d;m(!4J&&4M)p.C=p.1k(\'5e\')}}m(!4J&&p.C<p.3c){p.C=p.3c;4M=1j}}I m(p.2J==\'2M\'){p.G=16.du(p.G-p.C+p.t)}m(p.G<p.3d){q bc=p.G;p.G=p.3d;m(4M&&!4J)p.C=p.C-(p.G-bc)}},bg:B(2Q){q x=j.x,y=j.y;q 6S=1j;m(x.C/y.C>2Q){ x.C=y.C*2Q;m(x.C<x.3c){m(k.7q)x.3X=x.C;x.C=x.3c;m(!x.3X)y.C=x.C/2Q}6S=J}I m(x.C/y.C<2Q){ q dH=y.C;y.C=x.C/2Q;6S=J}j.7u(2Q);m(6S){x.G=x.1I-x.cb+x.3n;x.3c=x.C;j.2J(x,J);y.G=y.1I-y.cb+y.3n;y.3c=y.C;j.2J(y,J);m(j.1J)j.4v()}},7u:B(2Q){q x=j.x,y=j.y;m(j.1J){4B(y.C>j.5x&&x.C>j.3Y&&y.1k(\'2Z\')>y.1k(\'5e\')){y.C-=10;m(2Q)x.C=y.C*2Q;j.4v(0,1)}}},dQ:B(){q h=/1d/i.Y(j.2r.3w)?j.7p()+1+\'E\':\'1U\';m(j.19)j.19.F.R=h;j.2r.F.R=h;j.y.4s(j.1q.1V)},82:B(){j.4R(\'1n\');k.1r(j,\'dT\');j.89(1,{1X:j.x.1I+j.x.3n-j.x.cb,2l:j.y.1I+j.y.3n-j.y.cb,2o:j.x.t,2q:j.y.t,2e:0,35:0,28:0,3g:0,3f:j.x.t,3p:0,o:k.8c},{1X:j.x.G,2l:j.y.G,2o:j.x.C,2q:j.y.C,2e:j.x.1i,28:j.y.1i,35:j.x.1R,3g:j.y.1R,3f:j.x.3X,3p:j.x.1k(\'4m\'),o:j.Z?j.Z.1S:0},k.7o)},89:B(1O,2f,K,3l){q 47=j.3C,6x=1O?(j.M?j.M.a:H):k.2O,t=(47[1]&&6x&&k.3F(6x,\'3C\')[1]==47[1])?47[1]:47[0];m(1O&&6x&&j.2x&&47[1]==\'4i\')t=47[1]=\'2d\';m(j[t]&&t!=\'2v\'){j[t](1O,2f,K);D}m(1O)k.O(j.W,{20:1});m(j.Z&&!j.3s){m(1O)j.Z.4n(j);I j.Z.52((j.2x&&j.4l))}m(!1O&&j.1J){m(j.1A){q c=j.1A.2H;m(c&&k.3D(c)==j)c.3h.7i(c)}m(j.2x&&j.4l){j.1J.F.1c=\'-41\';k.26.1K(j.1J)}I k.51(j.1J)}m(j.br){2f.1G=1O?0:1;K.1G=1O}q t,A=j,3K=16[j.3K]||16.bm,3H=(1O?k.dV:k.dU)||2A(3l/25)||1;m(!1O)3K=16[j.be]||3K;Q(q i=1;i<=3H;i++){t=16.3A(i*(3l/3H));(B(){q 7P=i,C={};Q(q x 2X 2f){C[x]=3K(t,2f[x],K[x]-2f[x],3l);m(ap(C[x]))C[x]=K[x];m(!/^1G$/.Y(x))C[x]=16.3A(C[x])}21(B(){m(1O&&7P==1){A.T.F.1m=\'2i\';A.a.18+=\' N-7Y-4h\'}A.4s(C)},t)})()}m(1O){21(B(){m(A.Z)A.Z.2K.F.1m="2i"},t);21(B(){A.6i()},t+50)}I 21(B(){A.5h()},t)},4s:B(K){1t{m(K.1G)k.O(j.W,{20:K.1G});k.O(j.W,{L:(K.2o+K.2e+K.35+2*j.x.cb)+\'E\',R:(K.2q+K.28+K.3g+2*j.y.cb)+\'E\',1h:K.1X+\'E\',1c:K.2l+\'E\'});k.O(j.T,{1c:K.28+\'E\',1h:(K.2e+K.3p)+\'E\',L:(K.3f||K.2o)+\'E\',R:K.2q+\'E\'});m(j.2x){k.O(j.4H,{1h:(j.x.G-K.1X+j.x.1i-K.2e)+\'E\',1c:(j.y.G-K.2l+j.y.1i-K.28)+\'E\'});j.1q.F.1m=\'2i\'}m(j.Z&&j.3s){q o=j.Z.1S-K.o;j.Z.4n(j,{x:K.1X+o,y:K.2l+o,w:K.2o+K.2e+K.35+ -2*o,h:K.2q+K.28+K.3g+ -2*o},1)}j.W.F.1m=\'2i\'}1s(e){1F.5a.1Q=j.1e}},2d:B(1O,2f,K){j.3s=1j;q A=j,t=1O?56:0;m(1O){k.O(j.W,{20:0});j.4s(K);j.T.F.1m=\'2i\';k.2d(j.W,0,1)}m(j.Z){j.Z.2K.F.1H=j.W.F.1H;q 3y=1O||-1;Q(q i=2f.o;3y*i<=3y*K.o;i+=3y,t+=25){(B(){q o=1O?K.o-i:2f.o-i;21(B(){A.Z.4n(A,{x:(A.x.G+o),y:(A.y.G+o),w:(A.x.C-2*o+A.x.1i+A.x.1R),h:(A.y.C-2*o+A.y.1i+A.y.1R)},1)},t)})()}}m(1O)21(B(){A.6i()},t+50);I{21(B(){m(A.Z)A.Z.52(A.4l);k.2d(A.W,1,0);21(B(){A.5h()},56)},t)}},4i:B(1O,2f,K){m(!1O)D;q A=j,3H=2A(k.6k/25)||1,M=j.M;k.4C(1b,\'6B\',k.62);k.O(j.T,{L:(K.3f||K.2o)+\'E\',R:K.2q+\'E\'});j.Z=j.M.Z;j.M.Z=H;j.4t=k.1a(\'1f\',{18:\'N-2w\'},{1l:\'2c\',1H:4,2L:\'1n\',1w:\'1E\'});q 7l={ab:M,a8:j};Q(q x 2X 7l){j[x]=7l[x].T.4u(1);k.O(j[x],{1l:\'2c\',7y:0,1m:\'2i\'});j.4t.1K(j[x])}j.W.1K(j.4t);2f={1X:M.x.G,2o:M.x.C,2e:M.x.1i,35:M.x.1R,3f:M.x.3X||M.x.C,3p:M.x.1k(\'4m\'),2l:M.y.G,2q:M.y.C,28:M.y.1i,3g:M.y.1R,o:1/3H};K.2q=j.y.C;K.o=1;m(!K.3f)K.3f=K.2o;q t,3K=16.bd;m(3H>1)j.7D(2f);B 7L(){m(A.1J){A.1J.18=\'\';A.W.1K(A.1J);Q(q i=0;i<A.M.1L.14;i++){q 3o=k.$(\'2h\'+A.M.1L[i]);m(3o.ag===A.P)A.1J.1K(3o);I k.2d(3o,3o.20,0)}}A.4t.F.1w=\'\';A.M.T.F.1w=\'1E\'};m(/bl:1\\.[0-8].+bk/.Y(3M.68))21(7L,0);I 7L();m(k.4W){q 24=3M.68.24(/am\\/([0-9]{3})/);m(24&&2A(24[1])<dr)j.W.F.1m=\'2i\'}Q(q i=1;i<=3H;i++){t=16.3A(i*(k.6k/3H));(B(){q C={},7P=i;Q(q x 2X 2f){q 4q=3K(t,2f[x],K[x]-2f[x],k.6k);m(ap(4q))4q=K[x];C[x]=(x!=\'o\')?16.3A(4q):4q}21(B(){A.7D(C)},t)})()}21(B(){A.ac()},t+2U)},7D:B(C){1t{m(j.Z)j.Z.4n(j,{x:C.1X,y:C.2l,w:C.2o+C.2e+C.35,h:C.2q+C.28+C.3g},1);j.M.W.F.d5=\'d4(\'+(C.2l-j.M.y.G)+\'E, \'+(C.2o+C.2e+C.35+C.1X+2*j.M.x.cb-j.M.x.G)+\'E, \'+(C.2q+C.28+C.3g+C.2l+2*j.M.y.cb-j.M.y.G)+\'E, \'+(C.1X-j.M.x.G)+\'E)\';k.O(j.T,{1c:C.28+\'E\',1h:(C.2e+j.x.1k(\'4m\'))+\'E\',4N:(j.y.G-C.2l)+\'E\',4r:(j.x.G-C.1X)+\'E\'});k.O(j.W,{1c:C.2l+\'E\',1h:C.1X+\'E\',L:(C.2e+C.35+C.2o+2*j.x.cb)+\'E\',R:(C.28+C.3g+C.2q+2*j.y.cb)+\'E\'});k.O(j.4t,{L:(C.3f||C.2o)+\'E\',R:C.2q+\'E\',1h:(C.2e+C.3p)+\'E\',1c:C.28+\'E\',1m:\'2i\'});k.O(j.ab,{1c:(j.M.y.G-C.2l+j.M.y.1i-C.28)+\'E\',1h:(j.M.x.G-C.1X+j.M.x.1i-C.2e+j.M.x.1k(\'4m\')-C.3p)+\'E\'});k.O(j.a8,{20:C.o,1c:(j.y.G-C.2l+j.y.1i-C.28)+\'E\',1h:(j.x.G-C.1X+j.x.1i-C.2e+j.x.1k(\'4m\')-C.3p)+\'E\'});k.O(j.1J,{L:C.2o+\'E\',R:C.2q+\'E\',1h:(C.2e+j.x.cb)+\'E\',1c:(C.28+j.y.cb)+\'E\'})}1s(e){}},ac:B(){j.W.F.5y=j.d9||\'\';j.W.F.1m=j.T.F.1m=\'2i\';j.4t.F.1w=\'1E\';j.a.18+=\' N-7Y-4h\';j.6i();j.M.5h()},bh:B(o,el){m(!j.M)D 1j;Q(q i=0;i<j.M.1L.14;i++){q 3o=k.$(\'2h\'+j.M.1L[i]);m(3o&&3o.2h==o.2h){j.8o();3o.ag=j.P;k.2k(j.1L,j.M.1L[i]);D J}}D 1j},6i:B(){j.5j=J;j.3J();m(j.2x&&j.3t==\'83\')j.6p();m(j.2x){m(j.1d){1t{q A=j,2m=j.1d.8C||j.1d.5z.1b;k.2I(2m,\'7C\',B(){m(k.2R!=A.P)A.3J()})}1s(e){}m(k.1p&&1z j.5g!=\'d3\')j.1d.F.L=(j.3N-1)+\'E\'}}m(j.3E)k.1y(j);m(k.2O&&k.2O==j.a)k.2O=H;j.at();q p=k.3r,7b=k.6G.x+p.5T,6Z=k.6G.y+p.5Y;j.8k=j.x.G<7b&&7b<j.x.G+j.x.1k(\'2Z\')&&j.y.G<6Z&&6Z<j.y.G+j.y.1k(\'2Z\');m(j.1J)j.bn();k.1r(j,\'d2\')},at:B(){q P=j.P;q 1P=j.1P;1N k.5l(1P,B(){1t{k.V[P].a7()}1s(e){}})},a7:B(){q 1x=j.76(1);m(1x&&1x.2y.au().24(/k\\.2v/))q 1B=k.1a(\'1B\',{1e:k.6U(1x)})},76:B(1G){q 6X=j.6E(),as=k.46.3j[j.2N||\'1E\'];m(!as[6X+1G]&&j.1A&&j.1A.aN){m(1G==1)D as[0];I m(1G==-1)D as[as.14-1]}D as[6X+1G]||H},6E:B(){q 1T=k.46.3j[j.2N||\'1E\'];Q(q i=0;i<1T.14;i++){m(1T[i]==j.a)D i}D H},ba:B(){m(j[j.5t]){q 1T=k.46.3j[j.2N||\'1E\'];q s=k.U.3m.23(\'%1\',j.6E()+1).23(\'%2\',1T.14);j[j.5t].2s=\'<1f 2a="N-3m">\'+s+\'</1f>\'+j[j.5t].2s}},aI:B(){m(j.1A)D;m(!j.M){Q(q i=0;i<k.5r.14;i++){q 1M=k.5r[i],2S=1M.2N;m(1z 2S==\'2g\'||2S===H||2S===j.2N)j.1A=1N k.8I(1M)}}I{j.1A=j.M.1A}q 1M=j.1A;m(!1M)D;q A=1M.A=j;1M.ay();1M.4U(\'1g-2v\');m(1M.2H){q o=1M.aH||{};o.4P=1M.2H;o.2h=\'2H\';j.4Q(o)}m(!j.M&&j.3I)1M.3v(J);m(1M.3I){1M.3I=21(B(){k.1x(A.P)},(1M.cX||aL))}},8W:B(){k.V[j.P]=H;m(k.2O==j.a)k.2O=H;k.7U(j.P);m(j.2j)k.2j.F.1h=\'-41\';k.1r(j,\'aO\')},b3:B(){m(j.5o)D;j.5o=k.1a(\'a\',{1Q:k.aM,18:\'N-5o\',2s:k.U.aF,1Z:k.U.aE});j.4Q({4P:j.5o,1l:\'1c 1h\',2h:\'5o\'})},8p:B(8E,aD){Q(q i=0;i<8E.14;i++){q S=8E[i],s=H;m(S==\'8j\'&&!k.1r(j,\'cV\'))D;I m(S==\'4D\'&&!k.1r(j,\'cY\'))D;m(!j[S+\'6y\']&&j.5Q)j[S+\'6y\']=S+\'-Q-\'+j.5Q;m(j[S+\'6y\'])j[S]=k.5d(j[S+\'6y\']);m(!j[S]&&!j[S+\'8L\']&&j[S+\'aB\'])1t{s=dk(j[S+\'aB\'])}1s(e){}m(!j[S]&&j[S+\'8L\']){s=j[S+\'8L\']}m(!j[S]&&!s){q 1x=j.a.aP;4B(1x&&!k.63(1x)){m((1N 4k(\'N-\'+S)).Y(1x.18||H)){j[S]=1x.4u(1);5n}1x=1x.aP}}m(!j[S]&&!s&&j.5t==S)s=\'\\n\';m(!j[S]&&s)j[S]=k.1a(\'1f\',{18:\'N-\'+S,2s:s});m(aD&&j[S]){q o={1l:(S==\'4D\')?\'5u\':\'6t\'};Q(q x 2X j[S+\'a9\'])o[x]=j[S+\'a9\'][x];o.4P=j[S];j.4Q(o)}}},4R:B(1m){m(k.aQ)j.6l(\'di\',1m);m(k.bj)j.6l(\'de\',1m);m(k.53)j.6l(\'*\',1m)},6l:B(3w,1m){q 11=1b.2E(3w);q 4F=3w==\'*\'?\'2L\':\'1m\';Q(q i=0;i<11.14;i++){m(4F==\'1m\'||(1b.dg.dW(11[i],"").eu(\'2L\')==\'1U\'||11[i].b0(\'1n-by\')!=H)){q 2D=11[i].b0(\'1n-by\');m(1m==\'2i\'&&2D){2D=2D.23(\'[\'+j.P+\']\',\'\');11[i].5v(\'1n-by\',2D);m(!2D)11[i].F[4F]=11[i].8F}I m(1m==\'1n\'){q 3B=k.6a(11[i]);3B.w=11[i].2u;3B.h=11[i].1V;m(!j.3E){q bo=(3B.x+3B.w<j.x.1k(\'5B\')||3B.x>j.x.1k(\'5B\')+j.x.1k(\'8J\'));q bu=(3B.y+3B.h<j.y.1k(\'5B\')||3B.y>j.y.1k(\'5B\')+j.y.1k(\'8J\'))}q 6h=k.8D(11[i]);m(!bo&&!bu&&6h!=j.P){m(!2D){11[i].5v(\'1n-by\',\'[\'+j.P+\']\');11[i].8F=11[i].F[4F];11[i].F[4F]=\'1n\'}I m(!2D.24(\'[\'+j.P+\']\')){11[i].5v(\'1n-by\',2D+\'[\'+j.P+\']\')}}I m((2D==\'[\'+j.P+\']\'||k.2R==6h)&&6h!=j.P){11[i].5v(\'1n-by\',\'\');11[i].F[4F]=11[i].8F||\'\'}I m(2D&&2D.24(\'[\'+j.P+\']\')){11[i].5v(\'1n-by\',2D.23(\'[\'+j.P+\']\',\'\'))}}}}},3J:B(){j.W.F.1H=k.4j++;Q(q i=0;i<k.V.14;i++){m(k.V[i]&&i==k.2R){q 4y=k.V[i];4y.T.18+=\' N-\'+4y.2W+\'-8H\';m(4y.2V){4y.T.F.3Z=k.1p?\'av\':\'6O\';4y.T.1Z=k.U.bb}k.1r(j,\'ep\')}}m(j.Z)j.Z.2K.F.1H=j.W.F.1H;j.T.18=\'N-\'+j.2W;m(j.2V){j.T.1Z=k.U.8U;m(k.6n){k.5w=1F.3P?\'6O\':\'6r(\'+k.4S+k.6n+\'), 6O\';m(k.1p&&k.3S()<6)k.5w=\'av\';j.T.F.3Z=k.5w}}k.2R=j.P;k.2I(1b,1F.3P?\'86\':\'85\',k.64);k.1r(j,\'ek\')},8f:B(x,y){j.x.8S(x);j.y.8S(y)},3T:B(e){q w,h,r=e.L/e.R;w=16.2M(e.L+e.dX,16.3O(j.3Y,j.x.1g));m(j.2V&&16.aC(w-j.x.1g)<12)w=j.x.1g;h=j.2x?e.R+e.dY:w/r;m(h<16.3O(j.5x,j.y.1g)){h=16.3O(j.5x,j.y.1g);m(j.2V)w=h*r}j.80(w,h)},80:B(w,h){j.y.4s(h);j.x.4s(w)},1Y:B(){m(j.5g||!j.5j||(k.2O&&j.3C[1]==\'4i\'))D;m(!k.1r(j,\'e2\'))D;j.5g=J;m(j.1A&&!k.2O)j.1A.30();k.4C(1b,1F.3P?\'86\':\'85\',k.64);1t{m(j.2x)j.ao();j.T.F.3Z=\'e8\';j.89(0,{1X:j.x.G,2l:j.y.G,2o:j.x.C,2q:j.y.C,2e:j.x.1i,28:j.y.1i,35:j.x.1R,3g:j.y.1R,3f:j.x.3X,3p:j.x.1k(\'4m\'),o:j.Z?j.Z.1S:0},{1X:j.x.1I-j.x.cb+j.x.3n,2l:j.y.1I-j.y.cb+j.y.3n,2o:j.x.t,2q:j.y.t,2e:0,28:0,35:0,3g:0,3f:j.x.3X?j.x.t:H,3p:0,o:k.8c},k.ar)}1s(e){j.5h()}},ao:B(){m(k.53){m(!k.4Z)k.4Z=k.1a(\'1f\',H,{1l:\'2c\'},k.26);k.O(k.4Z,{L:j.x.C+\'E\',R:j.y.C+\'E\',1h:j.x.G+\'E\',1c:j.y.G+\'E\',1w:\'5b\'})}m(j.2t==\'3i\')1t{k.$(j.19.1v).e9()}1s(e){}m(j.3t==\'83\'&&!j.4l)j.aj();m(j.2r&&j.2r!=j.4I)j.2r.F.2L=\'1n\'},aj:B(){m(k.1p&&j.1d)1t{j.1d.5z.1b.19.2s=\'\'}1s(e){}m(j.2t==\'3i\')7T.ef(j.19.1v);j.19.2s=\'\'},ah:B(){m(j.Z)j.Z.2K.F.1w=\'1E\';j.3q=H;j.W.F.1w=\'1E\';k.2k(k.42,j)},al:B(){k.V[j.P]=j;m(!k.7X&&k.2R!=j.P){1t{k.V[k.2R].1Y()}1s(e){}}q z=k.4j++,6D={1w:\'\',1H:z};k.O(j.W,6D);j.5g=1j;q o=j.Z||0;m(o){m(!j.3s)6D.1m=\'1n\';k.O(o.2K,6D)}j.82()},4Q:B(o){q el=o.4P;m(1z el==\'81\')el=k.5d(el);m(!el||1z el==\'81\')D;m(!k.1r(j,\'ea\',{1o:el}))D;el.F.1w=\'5b\';o.2h=o.2h||o.4P;m(j.3C[1]==\'4i\'&&j.bh(o,el))D;j.8o();q L=o.L&&/^[0-9]+(E|%)$/.Y(o.L)?o.L:\'1U\';m(/^(1h|3x)b9$/.Y(o.1l)&&!/^[0-9]+E$/.Y(o.L))L=\'e0\';q 1o=k.1a(\'1f\',{1v:\'2h\'+k.8v++,2h:o.2h},{1l:\'2c\',1m:\'1n\',L:L,8u:k.U.8t||\'\'},j.1J,J);1o.1K(el);k.8r(1o,{4O:o.4O,20:o.20||1,5k:o.1l,2d:o.2d});m(j.aU){j.6u(1o);m(!1o.4O||j.8k)k.2d(1o,0,1o.20)}k.2k(j.1L,k.8v-1)},6u:B(1o){q p=1o.5k||\'8z 4o\';m(/1h$/.Y(p))1o.F.1h=0;m(/4o$/.Y(p))k.O(1o,{1h:\'50%\',4r:\'-\'+16.3A(1o.2u/2)+\'E\'});m(/3x$/.Y(p))1o.F.3x=0;m(/^aZ$/.Y(p)){k.O(1o,{3x:\'2U%\',8w:j.x.cb+\'E\',1c:-j.y.cb+\'E\',43:-j.y.cb+\'E\',2L:\'1U\'});j.x.1i=1o.2u}I m(/^aR$/.Y(p)){k.O(1o,{1h:\'2U%\',4r:j.x.cb+\'E\',1c:-j.y.cb+\'E\',43:-j.y.cb+\'E\',2L:\'1U\'});j.x.1R=1o.2u}m(/^1c/.Y(p))1o.F.1c=0;m(/^8z/.Y(p))k.O(1o,{1c:\'50%\',4N:\'-\'+16.3A(1o.1V/2)+\'E\'});m(/^43/.Y(p))1o.F.43=0;m(/^5u$/.Y(p)){k.O(1o,{1h:(-j.x.1i-j.x.cb)+\'E\',3x:(-j.x.1R-j.x.cb)+\'E\',43:\'2U%\',6I:j.y.cb+\'E\',L:\'1U\'});j.y.1i=1o.1V}I m(/^6t$/.Y(p)){k.O(1o,{1l:\'44\',1h:(-j.x.1i-j.x.cb)+\'E\',3x:(-j.x.1R-j.x.cb)+\'E\',1c:\'2U%\',4N:j.y.cb+\'E\',L:\'1U\'});j.y.1R=1o.1V;1o.F.1l=\'2c\'}},b8:B(){j.8p([\'4D\',\'8j\'],J);j.ba();m(j.8j)k.1r(j,\'et\');m(j.4D)k.1r(j,\'dj\');m(j.4D&&j.8i)j.4D.18+=\' N-3e\';m(k.b4)j.b3();Q(q i=0;i<k.1L.14;i++){q o=k.1L[i],6e=o.8h,2S=o.2N;m((!6e&&!2S)||(6e&&6e==j.5Q)||(2S&&2S===j.2N)){m(j.2V||(j.2x&&o.bI))j.4Q(o)}}q 60=[];Q(q i=0;i<j.1L.14;i++){q o=k.$(\'2h\'+j.1L[i]);m(/b9$/.Y(o.5k))j.6u(o);I k.2k(60,o)}Q(q i=0;i<60.14;i++)j.6u(60[i]);j.aU=J},8o:B(){m(!j.1J)j.1J=k.1a(\'1f\',{18:j.6g},{1l:\'2c\',L:j.x.C?j.x.C+\'E\':j.x.1g+\'E\',R:0,1m:\'1n\',2L:\'1n\',1H:k.1p?4:H},k.26,J)},4v:B(8m,aW){k.O(j.1J,{L:j.x.C+\'E\',R:j.y.C+\'E\'});m(8m||aW){Q(q i=0;i<j.1L.14;i++){q o=k.$(\'2h\'+j.1L[i]);m(o&&/^(5u|6t)$/.Y(o.5k)){m(k.1p&&(k.3S()<=6||1b.8n==\'bv\')){o.F.L=(j.1J.2u+2*j.x.cb+j.x.1i+j.x.1R)+\'E\'}j.y[o.5k==\'5u\'?\'1i\':\'1R\']=o.1V}}}m(8m){k.O(j.T,{1c:j.y.1i+\'E\'});k.O(j.1J,{1c:(j.y.1i+j.y.cb)+\'E\'})}},bn:B(){q b=j.1J;b.18=\'\';k.O(b,{1c:(j.y.1i+j.y.cb)+\'E\',1h:(j.x.1i+j.x.cb)+\'E\',2L:\'2i\'});m(k.4W)b.F.1m=\'2i\';j.W.1K(b);Q(q i=0;i<j.1L.14;i++){q o=k.$(\'2h\'+j.1L[i]);o.F.1H=o.2h==\'2H\'?5:4;m(!o.4O||j.8k)k.2d(o,0,o.20)}},bf:B(){m(j.1A&&j.1A.2H){j.1A.4d(\'1g-2v\');D}j.6H=k.1a(\'a\',{1Q:\'bi:k.V[\'+j.P+\'].6j();\',1Z:k.U.8x,18:\'N-1g-2v\'});m(!k.1r(j,\'bF\'))D;j.4Q({4P:j.6H,1l:k.ak,4O:J,20:k.an})},6j:B(){1t{m(!k.1r(j,\'bB\'))D;m(j.6H)k.51(j.6H);j.3J();q 1X=j.x.G-(j.x.1g-j.x.C)/2;m(1X<k.4r)1X=k.4r;j.8f(1X,j.y.G);j.80(j.x.1g,j.y.1g);j.4R(\'1n\');k.5c(j)}1s(e){1F.5a.1Q=j.T.1e}},5h:B(){j.a.18=j.a.18.23(\'N-7Y-4h\',\'\');j.4R(\'2i\');m(j.2x&&j.4l)j.ah();I{m(j.Z&&j.3s)j.Z.52();k.51(j.W)}m(k.4Z)k.4Z.F.1w=\'1E\';m(j.3E)k.7U(j.P);k.1r(j,\'bT\');k.V[j.P]=H;k.ad()}};k.6L=B(a,T,65){j.a=a;j.T=T;j.65=65};k.6L.5s={84:B(){m(!j.1e)j.1e=k.6U(j.a);m(j.1e.24(\'#\')){q 1T=j.1e.6Q(\'#\');j.1e=1T[0];j.1v=1T[1]}m(k.69[j.1e]){j.b1=k.69[j.1e];m(j.1v)j.87();I j.5A();D}1t{j.3z=1N aA()}1s(e){1t{j.3z=1N aG("bU.aw")}1s(e){1t{j.3z=1N aG("ax.aw")}1s(e){j.8a()}}}q 31=j;j.3z.bR=B(){m(31.3z.7A==4){m(31.1v)31.87();I 31.5A()}};j.3z.bt("bQ",j.1e,J);j.3z.bO(\'X-bP-bV\',\'aA\');j.3z.bw(H)},87:B(){k.66();q 3V=1F.3P||k.ai?{1e:\'cT:cB\'}:H;j.1d=k.1a(\'1d\',3V,{1l:\'2c\',1c:\'-41\'},k.26);j.5A()},5A:B(){q s=j.b1||j.3z.cA;m(j.65)k.69[j.1e]=s;m(!k.1p||k.3S()>=5.5){s=s.23(/\\s/g,\' \').23(1N 4k(\'<cC[^>]*>\',\'bp\'),\'\').23(1N 4k(\'<bq[^>]*>.*?</bq>\',\'bp\'),\'\');m(j.1d){q 2m=j.1d.8C;m(!2m&&j.1d.5z)2m=j.1d.5z.1b;m(!2m){q 31=j;21(B(){31.5A()},25);D}2m.bt();2m.cy(s);2m.1Y();1t{s=2m.8N(j.1v).2s}1s(e){1t{s=j.1d.1b.8N(j.1v).2s}1s(e){}}}I{s=s.23(1N 4k(\'^.*?<19[^>]*>(.*?)</19>.*?$\',\'i\'),\'$1\')}}k.4f(j.T,\'5S\',\'N-19\').2s=s;j.36();Q(q x 2X j)j[x]=H}};k.8I=B(3W){k.5m();Q(q x 2X 3W)j[x]=3W[x];m(j.cs)j.az()};k.8I.5s={az:B(){j.2H=k.1a(\'1f\',{2s:k.8d(k.73.2H)},H,k.26);q 5p=[\'3v\',\'30\',\'2P\',\'1x\',\'3e\',\'1g-2v\',\'1Y\'];j.1C={};q 31=j;Q(q i=0;i<5p.14;i++){j.1C[5p[i]]=k.4f(j.2H,\'1D\',\'N-\'+5p[i]);j.4d(5p[i])}j.1C.30.F.1w=\'1E\'},ay:B(){m(j.aN||!j.2H)D;q 4T=j.A.6E(),29=/5V$/;m(4T==0)j.4U(\'2P\');I m(29.Y(j.1C.2P.2E(\'a\')[0].18))j.4d(\'2P\');m(4T+1==k.46.3j[j.A.2N||\'1E\'].14){j.4U(\'1x\');j.4U(\'3v\')}I m(29.Y(j.1C.1x.2E(\'a\')[0].18)){j.4d(\'1x\');j.4d(\'3v\')}},4d:B(1C){m(!j.1C)D;q aK=j,a=j.1C[1C].2E(\'a\')[0],29=/5V$/;a.2y=B(){aK[1C]();D 1j};m(29.Y(a.18))a.18=a.18.23(29,\'\')},4U:B(1C){m(!j.1C)D;q a=j.1C[1C].2E(\'a\')[0];a.2y=B(){D 1j};m(!/5V$/.Y(a.18))a.18+=\' 5V\'},aJ:B(){m(j.3I)j.30();I j.3v()},3v:B(ae){m(j.1C){j.1C.3v.F.1w=\'1E\';j.1C.30.F.1w=\'\'}j.3I=J;m(!ae)k.1x(j.A.P)},30:B(){m(j.1C){j.1C.30.F.1w=\'1E\';j.1C.3v.F.1w=\'\'}af(j.3I);j.3I=H},2P:B(){j.30();k.2P(j.1C.2P)},1x:B(){j.30();k.1x(j.1C.1x)},3e:B(){},\'1g-2v\':B(){k.3D().6j()},1Y:B(){k.1Y(j.1C.1Y)}};m(1b.7A&&k.1p){(B(){1t{1b.4V.cN(\'1h\')}1s(e){21(cM.cI,50);D}k.aa()})()}k.5Z=k.U;q cJ=k.5i;k.2I(1F,\'6z\',B(){q 7O=\'.N 1B\',7r=\'3Z: 6r(\'+k.4S+k.aq+\'), 6O !cK;\';q F=k.1a(\'F\',{S:\'cL/cr\'},H,1b.2E(\'c5\')[0]);m(!k.1p){F.1K(1b.bZ(7O+" {"+7r+"}"))}I{q M=1b.bs[1b.bs.14-1];m(1z(M.aX)=="7s")M.aX(7O,7r)}});k.2I(1b,\'6B\',B(e){k.6G={x:e.6F,y:e.6J}});k.2I(1b,\'7C\',k.74);k.2I(1b,\'aY\',k.74);k.2I(1F,\'6z\',k.aV);k.2I(1F,\'6z\',k.aS);k.2I(1F,\'6z\',B(){k.aT=J});k.78();',62,901,'|||||||||||||||||||this|hs||if||||var||||||||||exp|function|size|return|px|style|pos|null|else|true|to|width|last|highslide|setStyles|key|for|height|type|content|lang|expanders|wrapper||test|outline||els|||length||Math||className|body|createElement|document|top|iframe|src|div|full|left|p1|false|get|position|visibility|hidden|overlay|ie|innerContent|fireEvent|catch|try|span|id|display|next|dim|typeof|slideshow|img|btn|li|none|window|op|zIndex|tpos|overlayBox|appendChild|overlays|ss|new|up|outlineType|href|p2|offset|arr|auto|offsetHeight|node|xpos|close|title|opacity|setTimeout|case|replace|match||container||yp1|re|class|params|absolute|fade|xp1|from|undefined|hsId|visible|loading|push|ypos|doc|dragArgs|xsize|dimmer|ysize|scrollerDiv|innerHTML|objectType|offsetWidth|expand|image|isHtml|onclick|scroll|parseInt|target|tgt|hiddenBy|getElementsByTagName|td|event|controls|addEventListener|justify|table|overflow|max|slideshowGroup|upcoming|previous|ratio|focusKey|sg|ajax|100|isImage|contentType|in|ucwh|wsize|pause|pThis||||xp2|onLoad||||hasDragged|clearing|minSize|marginMin|move|ximgSize|yp2|parentNode|swf|groups|wh|dur|number|tb|oDiv|ximgPad|releaseMask|page|outlineWhileAnimating|objectLoadTime|graphic|play|tagName|right|dir|xmlHttp|round|elPos|transitions|getExpander|dimmingOpacity|getParam|html|steps|autoplay|focus|easing|func|navigator|objectWidth|min|opera|custom|styles|ieVersion|resize|iebody|attribs|options|imgSize|minWidth|cursor||9999px|sleeping|bottom|relative|oFinal|anchors|trans|marginMax|clientSize|tgtArr|onload|fading|enable|name|getElementByClass|clone|anchor|crossfade|zIndexCounter|RegExp|preserveContent|imgPad|setPosition|center|pendingOutlines|val|marginLeft|setSize|fadeBox|cloneNode|sizeOverlayBox|wDiff|objectHeight|blurExp|hDiff|cNode|while|removeEventListener|heading|images|prop|fn|mediumContent|scrollingContent|moveOnly|htmls|all|allowReduce|marginTop|hideOnMouseOut|overlayId|createOverlay|doShowHide|graphicsDir|cur|disable|documentElement|safari|cacheBindings|on|mask||discardElement|destroy|geckoMac|preloadTheseImages|matches|250|cache|parent|showLoading|location|block|setDimmerSize|getNode|fitsize|over|isClosing|afterClose|Expander|isExpanded|hsPos|Outline|updateAnchors|break|credits|buttons|uclt|slideshows|prototype|numberPosition|above|setAttribute|styleRestoreCursor|minHeight|background|contentWindow|loadHTML|opos|step|contentLoaded|ruler|maxY|minY|param|owner|minX|obj|before|area|allowSizeReduction|maxX|getParams|thumbsUserSetId|preventDefault|DIV|scrollLeft|ul|disabled|self|innerHeight|scrollTop|langDefaults|os|toLowerCase|dragHandler|isHsAnchor|keyHandler|pre|init|maincontent|userAgent|cachedGets|getPosition|allowWidthReduction|faders|Dimension|tId|kdeBugCorr|wrapperClassName|wrapperKey|afterExpand|doFullExpand|transitionDuration|showHideElements|innerWidth|restoreCursor|currentStyle|writeExtendedContent|tr|url|imgs|below|positionOverlay|previousOrNext|element|other|Id|load|pageWidth|mousemove|topmostKey|stl|getAnchorIndex|clientX|mouse|fullExpandLabel|marginBottom|clientY|expOnly|Ajax|pageHeight|rel|pointer|preloadTheseAjax|split|getPageSize|changed|onLoadStarted|getSrc|preloadFullImage|lt|current|offsetTop|mY||closeTitle|overrides|skin|mouseClickHandler||getAdjacentAnchor|closeText|setClickEvents|onDomReady|continuePreloading|mX|allowHeightReduction|setObjContainerSize|htmlGetSize|loadingPos|calcExpanded|oPos|removeChild|calcBorders|sizeDiff|names|swfOptions|getCacheBinding|expandDuration|getIframePageHeight|padToMinWidth|dec|object|Click|fitOverlayBox|arrow|padding|hasMovedMin|border|getSelfRendered|readyState|moveTitle|mousedown|crossfadeStep|connectOutline|correctIframeSize|calcThumb|Create|nextText|nextTitle|loadingPosXfade|prep|contentId|previousTitle|sel|pI|previousText|moveText|filter|swfobject|undim|topZ|preloadAjaxElement|allowMultipleInstances|active|relatedTarget|resizeTo|string|show|after|run|keydown|keypress|getElementContent|garbageBin|changeSize|onError|numberOfImagesToPreload|outlineStartOffset|replaceLang|srcElement|moveTo|dimmingDuration|thumbnailId|dragByHeading|caption|mouseIsOver|evt|doWrapper|compatMode|genOverlayBox|getInline|hasFocused|setAttribs|distance|cssDirection|direction|idCounter|marginRight|fullExpandTitle|clones|middle|htmlExpand|cacheAjax|contentDocument|getWrapperKey|types|origProp|skip|blur|Slideshow|osize|hasAlphaImageLoader|Text|clientHeight|getElementById|tbody|align|ucrb|clientWidth|setPos|getAnchors|restoreTitle|margin|cancelLoading|enableKeyListener|switch|both|clear|hide|adj|resizeTitle|headingOverlay|clickY|captionOverlay|focusTopmost|Pause||spacebar|clickX|wmode|targetY|Highslide|Play|rb|Close|hasExtendedContent|JS|args|dimmingGeckoFix|flashvars|targetX|hasHtmlExpanders|form|attributes|newHeight|Previous|isDomReady|png|contentWrapper|offsetLeft|offsetParent|hsHasSetClick|isUnobtrusiveAnchor|scrollHeight|pauseTitle|pauseText|parseFloat|ltr|loadingOpacity|xScroll|appVersion|maxWidth|yScroll|fullExpandText|loadingTitle|loadingText|playText|scrollWidth|preloadGraphic|Move|nopad|appendTo|onGraphicLoad|tag|Next|vis|scrollMaxX|detachEvent|playTitle|scrollMaxY|wrapperMouseHandler|200|and|fixedControls|thumb|pow|preloadNext|newImg|Overlay|domReady|oldImg|crossfadeEnd|reOrder|wait|clearTimeout|reuse|sleep|ie6SSL|destroyObject|fullExpandPosition|awake|Safari|fullExpandOpacity|htmlPrepareClose|isNaN|expandCursor|restoreDuration||prepareNextOutline|toString|hand|XMLHTTP|Microsoft|checkFirstAndLast|getControls|XMLHttpRequest|Eval|abs|addOverlay|creditsTitle|creditsText|ActiveXObject|overlayOptions|initSlideshow|hitSpace|sls|500|creditsHref|repeat|onHideLoading|nextSibling|hideSelects|rightpanel|preloadAjax|pageLoaded|gotOverlays|preloadImages|doPanels|addRule|mouseup|leftpanel|getAttribute|cachedGet|vendor|writeCredits|showCredits|htmlSizeOperations|KDE|getImageMapAreaCorrection|getOverlays|panel|getNumber|focusTitle|tmpMin|easeInOutQuad|easingClose|createFullExpand|correctRatio|reuseOverlay|javascript|hideIframes|Gecko|rv|easeInQuad|showOverlays|clearsX|gi|script|fadeInOut|styleSheets|open|clearsY|BackCompat|send|pageXOffset||useMap|pageYOffset|onDoFullExpand|returnValue|keyCode|onKeyDown|onCreateFullExpand|registerOverlay|addSlideshow|useOnHtml|xpand|htmlE|geckodimmer|onDimmerClick|onSetClickEvent|setRequestHeader|Requested|GET|onreadystatechange|dimming|onAfterClose|Msxml2|With|headingText|keys|graphics|createTextNode|Use|click|drag|zoomin|zoomout|HEAD|drop|com|http|1001|of||Image|Expand|actual|front|bring|Loading|cancel|Powered|Go|Resize|Full|esc|homepage|the|shadow|css|useControls|Macintosh|maxHeight|maincontentEval|maincontentId|maincontentText|write|removeAttribute|responseText|blank|link|MSIE|alpha|headingEval|button|header|callee|HsExpander|important|text|arguments|doScroll|captionEval|headingId|captionText|captionId|footer|about|01|onBeforeGetCaption|toUpperCase|interval|onBeforeGetHeading|Bottom|Top|Right|onAfterExpand|boolean|rect|clip|onmouseout|onmouseover|onInit|wrapperBG|Left|Height|outlinesDir|outlines|IFRAME|fontSize|defaultView|lineHeight|SELECT|onAfterGetHeading|eval|Width|scale|sizingMethod|DXImageTransform|AlphaImageLoader|onShowLoading|525|flash|circle|floor|allowtransparency|getTime|frameborder|shape|transparent|insertBefore|nodeName|coords|expressInstallSwfurl|embedSWF|version|Date|tmpHeight|htmlCreate|onBeforeGetContent|flushImgSize|oncontextmenu|imageCreate|blockRightClick|onAfterGetContent|static|reflow|newWidth|fit|onBeforeExpand|restoreSteps|expandSteps|getComputedStyle|||progid|200px|mouseover|onBeforeClose|paddingTop|1px|https|protocol|linearTween|default|StopPlay|onCreateOverlay|toElement|fromElement|onMouseOver|onMouseOut|removeSWF|attachEvent|dragSensitivity|onDrag|onDrop|onFocus||collapse|borderCollapse|white|onBlur|cellSpacing|sqrt|onImageClick|onAfterGetCaption|getPropertyValue|300|onActivate'.split('|'),0,{}))

;Carousel=Class.create(Abstract,{initialize:function(scroller,slides,controls,options){this.scrolling=false;this.scroller=$(scroller);this.slides=slides;this.controls=controls;this.options=Object.extend({duration:1,auto:false,frequency:3,visibleSlides:1,numberScrolling:1,controlClassName:'carousel-control',jumperClassName:'carousel-jumper',disabledClassName:'carousel-disabled',selectedClassName:'carousel-selected',circular:false,wheel:true,effect:'scroll',transition:'sinoidal'},options||{});if(this.options.effect=='fade'){this.options.circular=true;}
this.slides.each(function(slide,index){slide._index=index;});if(this.controls){this.controls.invoke('observe','click',this.click.bind(this));}
if(this.options.wheel){this.scroller.observe('mousewheel',this.wheel.bindAsEventListener(this)).observe('DOMMouseScroll',this.wheel.bindAsEventListener(this));;}
if(this.options.auto){this.start();}
if(this.options.initial){var initialIndex=this.slides.indexOf($(this.options.initial));if(initialIndex>(this.options.visibleSlides-1)&&this.options.visibleSlides>1){if(initialIndex>this.slides.length-(this.options.visibleSlides+1)){initialIndex=this.slides.length-this.options.visibleSlides;}}
this.moveTo(this.slides[initialIndex]);}},click:function(event){this.stop();var element=event.findElement('a');if(!element.hasClassName(this.options.disabledClassName)){if(element.hasClassName(this.options.controlClassName)){eval("this."+element.rel+"()");}else if(element.hasClassName(this.options.jumperClassName)){this.moveTo(element.rel);if(this.options.selectedClassName){this.controls.invoke('removeClassName',this.options.selectedClassName);element.addClassName(this.options.selectedClassName);}}}
this.deactivateControls();event.stop();},moveTo:function(element,direction){if(this.options.beforeMove&&(typeof this.options.beforeMove=='function')){this.options.beforeMove(this,direction);}
this.previous=this.current?this.current:this.slides[0];this.current=$(element);var scrollerOffset=this.scroller.cumulativeOffset();var elementOffset=this.current.cumulativeOffset();if(this.scrolling){this.scrolling.cancel();}
switch(this.options.effect){case'fade':this.scrolling=new Effect.Opacity(this.scroller,{from:1.0,to:0,duration:this.options.duration,afterFinish:(function(){this.scroller.scrollLeft=elementOffset[0]-scrollerOffset[0];this.scroller.scrollTop=elementOffset[1]-scrollerOffset[1];new Effect.Opacity(this.scroller,{from:0,to:1.0,duration:this.options.duration,afterFinish:(function(){if(this.controls){this.activateControls();}
if(this.options.afterMove&&(typeof this.options.afterMove=='function')){this.options.afterMove();}}).bind(this)});}).bind(this)});break;case'scroll':default:var transition;switch(this.options.transition){case'spring':transition=Effect.Transitions.spring;break;case'sinoidal':default:transition=Effect.Transitions.sinoidal;break;}
this.scrolling=new Effect.SmoothScroll(this.scroller,{duration:this.options.duration,x:(elementOffset[0]-scrollerOffset[0]),y:(elementOffset[1]-scrollerOffset[1]),transition:transition,afterFinish:(function(){if(this.controls){this.activateControls();}
if(this.options.afterMove&&(typeof this.options.afterMove=='function')){this.options.afterMove();}
this.scrolling=false;}).bind(this)});break;}
return false;},prev:function(){if(this.options.beforePrevious&&(typeof this.options.beforePrevious=='function')){this.options.beforePrevious(this,'previous');}
if(this.current){var currentIndex=this.current._index;var prevIndex=(currentIndex==0)?(this.options.circular?this.slides.length-1:0):currentIndex-1;}else{var prevIndex=(this.options.circular?this.slides.length-1:0);}
if(prevIndex==(this.slides.length-1)&&this.options.circular&&this.options.effect!='fade'){this.scroller.scrollLeft=(this.slides.length-1)*this.slides.first().getWidth();this.scroller.scrollTop=(this.slides.length-1)*this.slides.first().getHeight();prevIndex=this.slides.length-2;}
this.moveTo(this.slides[prevIndex],'previous');},next:function(){if(this.options.beforeNext&&(typeof this.options.beforeNext=='function')){this.options.beforeNext(this,'next');}
if(this.current)
{var currentIndex=this.current._index;var nextIndex=(this.slides.length-1==currentIndex)?(this.options.circular?0:currentIndex):currentIndex+this.options.numberScrolling;}
else
{var nextIndex=this.options.numberScrolling;}
if(nextIndex==0&&this.options.circular&&this.options.effect!='fade'){this.scroller.scrollLeft=0;this.scroller.scrollTop=0;nextIndex=this.options.numberScrolling;}
if(nextIndex>this.slides.length-(this.options.visibleSlides+this.options.numberScrolling)){nextIndex=this.slides.length-this.options.visibleSlides;}
this.moveTo(this.slides[nextIndex],'next');},first:function(){this.moveTo(this.slides[0]);},last:function(){this.moveTo(this.slides[this.slides.length-1]);},toggle:function(){if(this.previous){this.moveTo(this.slides[this.previous._index]);}else{return false;}},stop:function(){if(this.timer){clearTimeout(this.timer);}},start:function(){if(this.options.circular&&this.options.effect!='fade')
{var slideWidth=parseInt(this.slides[0].getStyle('width'),10);var slideHeight=parseInt(this.slides[0].getStyle('height'),10);var scrollerWidth=parseInt(this.scroller.firstDescendant().getStyle('width'),10);var scrollerHeight=parseInt(this.scroller.firstDescendant().getStyle('height'),10);if(scrollerWidth>scrollerHeight)
this.scroller.firstDescendant().setStyle({width:(slideWidth+scrollerWidth)+'px'});else
this.scroller.firstDescendant().setStyle({height:(slideHeight+scrollerHeight)+'px'});for(i=0;i<this.options.numberScrolling;i++)
{var newDiv=document.createElement('div');this.scroller.firstDescendant().insert({bottom:newDiv});newDiv.className=this.slides[i].className;newDiv.innerHTML=this.slides[i].innerHTML;this.slides.push(newDiv);}
this.slides.each(function(slide,index){slide._index=index;});}
this.periodicallyUpdate();},pause:function(){this.stop();this.activateControls();},resume:function(event){if(event){var related=event.relatedTarget||event.toElement;if(!related||(!this.slides.include(related)&&!this.slides.any(function(slide){return related.descendantOf(slide);}))){this.start();}}else{this.start();}},periodicallyUpdate:function(){if(this.timer!=null){clearTimeout(this.timer);this.next();}
this.timer=setTimeout(this.periodicallyUpdate.bind(this),this.options.frequency*1000);},wheel:function(event){event.cancelBubble=true;event.stop();var delta=0;if(!event){event=window.event;}
if(event.wheelDelta){delta=event.wheelDelta/120;}else if(event.detail){delta=-event.detail/3;}
if(!this.scrolling){this.deactivateControls();if(delta>0){this.prev();}else{this.next();}}
return Math.round(delta);},deactivateControls:function(){this.controls.invoke('addClassName',this.options.disabledClassName);},activateControls:function(){this.controls.invoke('removeClassName',this.options.disabledClassName);},destroy:function(){clearTimeout(this.timer);this.periodicallyUpdate=emptyFunction();if(this.controls)
{this.controls.invoke('stopObserving');delete(this.controls);}
delete(this.scrolling);delete(this.scroller);delete(this.slides);delete(this.options);delete(self);}});Effect.SmoothScroll=Class.create();Object.extend(Object.extend(Effect.SmoothScroll.prototype,Effect.Base.prototype),{initialize:function(element){this.element=$(element);var options=Object.extend({x:0,y:0,mode:'absolute'},arguments[1]||{});this.start(options);},setup:function(){if(this.options.continuous&&!this.element._ext){this.element.cleanWhitespace();this.element._ext=true;this.element.appendChild(this.element.firstChild);}
this.originalLeft=this.element.scrollLeft;this.originalTop=this.element.scrollTop;if(this.options.mode=='absolute'){this.options.x-=this.originalLeft;this.options.y-=this.originalTop;}},update:function(position){this.element.scrollLeft=this.options.x*position+this.originalLeft;this.element.scrollTop=this.options.y*position+this.originalTop;}});
;(function(window){var soundManager=null;function SoundManager(smURL,smID){this.flashVersion=8;this.debugMode=false;this.debugFlash=false;this.useConsole=false;this.consoleOnly=false;this.waitForWindowLoad=false;this.nullURL='about:blank';this.allowPolling=true;this.useFastPolling=false;this.useMovieStar=true;this.bgColor='#ffffff';this.useHighPerformance=false;this.flashLoadTimeout=1000;this.wmode=null;this.allowFullScreen=true;this.allowScriptAccess='always';this.useFlashBlock=false;this.useHTML5Audio=false;this.html5Test=/^probably$/i;this.audioFormats={'mp3':{type:['audio/mpeg; codecs="mp3"','audio/mpeg','audio/mp3','audio/MPA','audio/mpa-robust'],required:true},'mp4':{related:['aac','m4a'],type:['audio/mp4; codecs="mp4a.40.2"','audio/aac','audio/x-m4a','audio/MP4A-LATM','audio/mpeg4-generic'],required:true},'ogg':{type:['audio/ogg; codecs=vorbis'],required:false},'wav':{type:['audio/wav; codecs="1"','audio/wav','audio/wave','audio/x-wav'],required:false}};this.defaultOptions={'autoLoad':false,'stream':true,'autoPlay':false,'loops':1,'onid3':null,'onload':null,'whileloading':null,'onplay':null,'onpause':null,'onresume':null,'whileplaying':null,'onstop':null,'onfinish':null,'onbeforefinish':null,'onbeforefinishtime':5000,'onbeforefinishcomplete':null,'onjustbeforefinish':null,'onjustbeforefinishtime':200,'multiShot':true,'multiShotEvents':false,'position':null,'pan':0,'type':null,'volume':100};this.flash9Options={'isMovieStar':null,'usePeakData':false,'useWaveformData':false,'useEQData':false,'onbufferchange':null,'ondataerror':null};this.movieStarOptions={'onmetadata':null,'useVideo':false,'bufferTime':3,'serverURL':null,'onconnect':null};this.version=null;this.versionNumber='V2.96a.20100822';this.movieURL=null;this.url=(smURL||null);this.altURL=null;this.swfLoaded=false;this.enabled=false;this.o=null;this.movieID='sm2-container';this.id=(smID||'sm2movie');this.swfCSS={swfDefault:'movieContainer',swfError:'swf_error',swfTimedout:'swf_timedout',swfUnblocked:'swf_unblocked',sm2Debug:'sm2_debug',highPerf:'high_performance',flashDebug:'flash_debug'};this.oMC=null;this.sounds={};this.soundIDs=[];this.muted=false;this.isFullScreen=false;this.isIE=(navigator.userAgent.match(/MSIE/i));this.isSafari=(navigator.userAgent.match(/safari/i));this.debugID='soundmanager-debug';this.debugURLParam=/([#?&])debug=1/i;this.specialWmodeCase=false;this.didFlashBlock=false;this.filePattern=null;this.filePatterns={flash8:/\.mp3(\?.*)?$/i,flash9:/\.mp3(\?.*)?$/i};this.baseMimeTypes=/^\s*audio\/(?:x-)?(?:mp(?:eg|3))\s*(?:$|;)/i;this.netStreamMimeTypes=/^\s*audio\/(?:x-)?(?:mp(?:eg|3))\s*(?:$|;)/i;this.netStreamTypes=['aac','flv','mov','mp4','m4v','f4v','m4a','mp4v','3gp','3g2'];this.netStreamPattern=new RegExp('\\.('+this.netStreamTypes.join('|')+')(\\?.*)?$','i');this.mimePattern=this.baseMimeTypes;this.features={buffering:false,peakData:false,waveformData:false,eqData:false,movieStar:false};this.sandbox={'type':null,'types':{'remote':'remote (domain-based) rules','localWithFile':'local with file access (no internet access)','localWithNetwork':'local with network (internet access only, no local access)','localTrusted':'local, trusted (local+internet access)'},'description':null,'noRemote':null,'noLocal':null};this.hasHTML5=null;this.html5={usingFlash:null};this.ignoreFlash=false;var SMSound,_s=this,_sm='soundManager',_id,_ua=navigator.userAgent,_wl=window.location.href.toString(),_fV=this.flashVersion,_doNothing,_init,_onready=[],_debugOpen=true,_debugTS,_didAppend=false,_appendSuccess=false,_didInit=false,_disabled=false,_windowLoaded=false,_wDS,_wdCount,_initComplete,_mergeObjects,_addOnReady,_processOnReady,_initUserOnload,_go,_waitForEI,_setVersionInfo,_handleFocus,_beginInit,_strings,_initMovie,_dcLoaded,_didDCLoaded,_getDocument,_createMovie,_mobileFlash,_setPolling,_debugLevels=['log','info','warn','error'],_defaultFlashVersion=8,_disableObject,_failSafely,_normalizeMovieURL,_oRemoved=null,_oRemovedHTML=null,_str,_flashBlockHandler,_getSWFCSS,_toggleDebug,_loopFix,_complain,_idCheck,_waitingForEI=false,_initPending=false,_smTimer,_onTimer,_startTimer,_stopTimer,_needsFlash=null,_featureCheck,_html5OK,_html5Only=false,_html5CanPlay,_html5Ext,_dcIE,_testHTML5,_is_pre=_ua.match(/pre\//i),_iPadOrPhone=_ua.match(/(ipad|iphone)/i),_isMobile=(_ua.match(/mobile/i)||_is_pre||_iPadOrPhone),_hasConsole=(typeof console!=='undefined'&&typeof console.log!=='undefined'),_isFocused=(typeof document.hasFocus!=='undefined'?document.hasFocus():null),_tryInitOnFocus=(typeof document.hasFocus==='undefined'&&this.isSafari),_okToDisable=!_tryInitOnFocus;this._use_maybe=(_wl.match(/sm2\-useHTML5Maybe\=1/i));this._overHTTP=(document.location?document.location.protocol.match(/http/i):null);this.useAltURL=!this._overHTTP;if(_iPadOrPhone||_is_pre){_s.useHTML5Audio=true;_s.ignoreFlash=true;}
if(_is_pre||this._use_maybe){_s.html5Test=/^(probably|maybe)$/i;}
(function(){var a='#sm2-usehtml5audio=',l=_wl,b=null;if(l.indexOf(a)!==-1){b=(l.substr(l.indexOf(a)+a.length)==='1');if(typeof console!=='undefined'&&typeof console.log!=='undefined'){console.log((b?'Enabling ':'Disabling ')+'useHTML5Audio via URL parameter');}
_s.useHTML5Audio=b;}}());this.supported=function(){return(_needsFlash?(_didInit&&!_disabled):(_s.useHTML5Audio&&_s.hasHTML5));};this.getMovie=function(smID){return _s.isIE?window[smID]:(_s.isSafari?_id(smID)||document[smID]:_id(smID));};this.loadFromXML=function(sXmlUrl){try{_s.o._loadFromXML(sXmlUrl);}catch(e){_failSafely();return true;}};this.createSound=function(oOptions){var _cs='soundManager.createSound(): ',thisOptions=null,oSound=null,_tO=null;if(!_didInit){throw _complain(_cs+_str('notReady'),arguments.callee.caller);}
if(arguments.length===2){oOptions={'id':arguments[0],'url':arguments[1]};}
thisOptions=_mergeObjects(oOptions);_tO=thisOptions;if(_tO.id.toString().charAt(0).match(/^[0-9]$/)){_s._wD(_cs+_str('badID',_tO.id),2);}
_s._wD(_cs+_tO.id+' ('+_tO.url+')',1);if(_idCheck(_tO.id,true)){_s._wD(_cs+_tO.id+' exists',1);return _s.sounds[_tO.id];}
function make(){thisOptions=_loopFix(thisOptions);_s.sounds[_tO.id]=new SMSound(_tO);_s.soundIDs.push(_tO.id);return _s.sounds[_tO.id];}
if(_html5OK(_tO)){oSound=make();_s._wD('Loading sound '+_tO.id+' from HTML5');oSound._setup_html5(_tO);}else{if(_fV>8&&_s.useMovieStar){if(_tO.isMovieStar===null){_tO.isMovieStar=((_tO.serverURL||(_tO.type?_tO.type.match(_s.netStreamPattern):false)||_tO.url.match(_s.netStreamPattern))?true:false);}
if(_tO.isMovieStar){_s._wD(_cs+'using MovieStar handling');}
if(_tO.isMovieStar){if(_tO.usePeakData){_wDS('noPeak');_tO.usePeakData=false;}
if(_tO.loops>1){_wDS('noNSLoop');}}}
oSound=make();if(_fV===8){_s.o._createSound(_tO.id,_tO.onjustbeforefinishtime,_tO.loops||1);}else{_s.o._createSound(_tO.id,_tO.url,_tO.onjustbeforefinishtime,_tO.usePeakData,_tO.useWaveformData,_tO.useEQData,_tO.isMovieStar,(_tO.isMovieStar?_tO.useVideo:false),(_tO.isMovieStar?_tO.bufferTime:false),_tO.loops||1,_tO.serverURL,_tO.duration||null,_tO.totalBytes||null,_tO.autoPlay,true);if(!_tO.serverURL){oSound.connected=true;if(_tO.onconnect){_tO.onconnect.apply(oSound);}}}}
if(_tO.autoLoad||_tO.autoPlay){if(oSound){if(_s.isHTML5){oSound.autobuffer='auto';oSound.preload='auto';}else{oSound.load(_tO);}}}
if(_tO.autoPlay){oSound.play();}
return oSound;};this.createVideo=function(oOptions){var fN='soundManager.createVideo(): ';if(arguments.length===2){oOptions={'id':arguments[0],'url':arguments[1]};}
if(_fV>=9){oOptions.isMovieStar=true;oOptions.useVideo=true;}else{_s._wD(fN+_str('f9Vid'),2);return false;}
if(!_s.useMovieStar){_s._wD(fN+_str('noMS'),2);}
return _s.createSound(oOptions);};this.destroySound=function(sID,bFromSound){if(!_idCheck(sID)){return false;}
for(var i=0;i<_s.soundIDs.length;i++){if(_s.soundIDs[i]===sID){_s.soundIDs.splice(i,1);continue;}}
_s.sounds[sID].unload();if(!bFromSound){_s.sounds[sID].destruct();}
delete _s.sounds[sID];};this.destroyVideo=this.destroySound;this.load=function(sID,oOptions){if(!_idCheck(sID)){return false;}
return _s.sounds[sID].load(oOptions);};this.unload=function(sID){if(!_idCheck(sID)){return false;}
return _s.sounds[sID].unload();};this.play=function(sID,oOptions){var fN='soundManager.play(): ';if(!_didInit){throw _complain(fN+_str('notReady'),arguments.callee.caller);}
if(!_idCheck(sID)){if(!(oOptions instanceof Object)){oOptions={url:oOptions};}
if(oOptions&&oOptions.url){_s._wD(fN+'attempting to create "'+sID+'"',1);oOptions.id=sID;return _s.createSound(oOptions).play();}else{return false;}}
return _s.sounds[sID].play(oOptions);};this.start=this.play;this.setPosition=function(sID,nMsecOffset){if(!_idCheck(sID)){return false;}
return _s.sounds[sID].setPosition(nMsecOffset);};this.stop=function(sID){if(!_idCheck(sID)){return false;}
_s._wD('soundManager.stop('+sID+')',1);return _s.sounds[sID].stop();};this.stopAll=function(){_s._wD('soundManager.stopAll()',1);for(var oSound in _s.sounds){if(_s.sounds[oSound]instanceof SMSound){_s.sounds[oSound].stop();}}};this.pause=function(sID){if(!_idCheck(sID)){return false;}
return _s.sounds[sID].pause();};this.pauseAll=function(){for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].pause();}};this.resume=function(sID){if(!_idCheck(sID)){return false;}
return _s.sounds[sID].resume();};this.resumeAll=function(){for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].resume();}};this.togglePause=function(sID){if(!_idCheck(sID)){return false;}
return _s.sounds[sID].togglePause();};this.setPan=function(sID,nPan){if(!_idCheck(sID)){return false;}
return _s.sounds[sID].setPan(nPan);};this.setVolume=function(sID,nVol){if(!_idCheck(sID)){return false;}
return _s.sounds[sID].setVolume(nVol);};this.mute=function(sID){var fN='soundManager.mute(): ',i=0;if(typeof sID!=='string'){sID=null;}
if(!sID){_s._wD(fN+'Muting all sounds');for(i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].mute();}
_s.muted=true;}else{if(!_idCheck(sID)){return false;}
_s._wD(fN+'Muting "'+sID+'"');return _s.sounds[sID].mute();}};this.muteAll=function(){_s.mute();};this.unmute=function(sID){var fN='soundManager.unmute(): ',i;if(typeof sID!=='string'){sID=null;}
if(!sID){_s._wD(fN+'Unmuting all sounds');for(i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].unmute();}
_s.muted=false;}else{if(!_idCheck(sID)){return false;}
_s._wD(fN+'Unmuting "'+sID+'"');return _s.sounds[sID].unmute();}};this.unmuteAll=function(){_s.unmute();};this.toggleMute=function(sID){if(!_idCheck(sID)){return false;}
return _s.sounds[sID].toggleMute();};this.getMemoryUse=function(){if(_fV===8){return 0;}
if(_s.o){return parseInt(_s.o._getMemoryUse(),10);}};this.disable=function(bNoDisable){if(typeof bNoDisable==='undefined'){bNoDisable=false;}
if(_disabled){return false;}
_disabled=true;_wDS('shutdown',1);for(var i=_s.soundIDs.length;i--;){_disableObject(_s.sounds[_s.soundIDs[i]]);}
_initComplete(bNoDisable);if(window.removeEventListener){window.removeEventListener('load',_initUserOnload,false);}};this.canPlayMIME=function(sMIME){var result;if(_s.hasHTML5){result=_html5CanPlay({type:sMIME});}
if(!_needsFlash||result){return result;}else{return(sMIME?(sMIME.match(_s.mimePattern)?true:false):null);}};this.canPlayURL=function(sURL){var result;if(_s.hasHTML5){result=_html5CanPlay(sURL);}
if(!_needsFlash||result){return result;}else{return(sURL?(sURL.match(_s.filePattern)?true:false):null);}};this.canPlayLink=function(oLink){if(typeof oLink.type!=='undefined'&&oLink.type){if(_s.canPlayMIME(oLink.type)){return true;}}
return _s.canPlayURL(oLink.href);};this.getSoundById=function(sID,suppressDebug){if(!sID){throw new Error('SoundManager.getSoundById(): sID is null/undefined');}
var result=_s.sounds[sID];if(!result&&!suppressDebug){_s._wD('"'+sID+'" is an invalid sound ID.',2);}
return result;};this.onready=function(oMethod,oScope){if(oMethod&&oMethod instanceof Function){if(_didInit){_wDS('queue');}
if(!oScope){oScope=window;}
_addOnReady(oMethod,oScope);_processOnReady();return true;}else{throw _str('needFunction');}};this.oninitmovie=function(){};this.onload=function(){_s._wD('soundManager.onload()',1);};this.onerror=function(){};this.getMoviePercent=function(){return(_s.o&&typeof _s.o.PercentLoaded!=='undefined'?_s.o.PercentLoaded():null);};this._writeDebug=function(sText,sType,bTimestamp){var sDID='soundmanager-debug',o,oItem,sMethod;if(!_s.debugMode){return false;}
if(typeof bTimestamp!=='undefined'&&bTimestamp){sText=sText+' | '+new Date().getTime();}
if(_hasConsole&&_s.useConsole){sMethod=_debugLevels[sType];if(typeof console[sMethod]!=='undefined'){console[sMethod](sText);}else{console.log(sText);}
if(_s.useConsoleOnly){return true;}}
try{o=_id(sDID);if(!o){return false;}
oItem=document.createElement('div');if(++_wdCount%2===0){oItem.className='sm2-alt';}
if(typeof sType==='undefined'){sType=0;}else{sType=parseInt(sType,10);}
oItem.appendChild(document.createTextNode(sText));if(sType){if(sType>=2){oItem.style.fontWeight='bold';}
if(sType===3){oItem.style.color='#ff3333';}}
o.insertBefore(oItem,o.firstChild);}catch(e){}
o=null;};this._wD=this._writeDebug;this._debug=function(){_wDS('currentObj',1);for(var i=0,j=_s.soundIDs.length;i<j;i++){_s.sounds[_s.soundIDs[i]]._debug();}};this.reboot=function(){_s._wD('soundManager.reboot()');if(_s.soundIDs.length){_s._wD('Destroying '+_s.soundIDs.length+' SMSound objects...');}
for(var i=_s.soundIDs.length;i--;){_s.sounds[_s.soundIDs[i]].destruct();}
try{if(_s.isIE){_oRemovedHTML=_s.o.innerHTML;}
_oRemoved=_s.o.parentNode.removeChild(_s.o);_s._wD('Flash movie removed.');}catch(e){_wDS('badRemove',2);}
_oRemovedHTML=null;_oRemoved=null;_s.enabled=false;_didInit=false;_waitingForEI=false;_initPending=false;_didAppend=false;_appendSuccess=false;_disabled=false;_s.swfLoaded=false;_s.soundIDs=[];_s.sounds=[];_s.o=null;for(i=_onready.length;i--;){_onready[i].fired=false;}
_s._wD(_sm+': Rebooting...');window.setTimeout(function(){_s.beginDelayedInit();},20);};this.destruct=function(){_s._wD('soundManager.destruct()');_s.disable(true);};this.beginDelayedInit=function(){_windowLoaded=true;_dcLoaded();setTimeout(_waitForEI,500);setTimeout(_beginInit,20);};_html5OK=function(iO){return((iO.type?_html5CanPlay({type:iO.type}):false)||_html5CanPlay(iO.url));};_html5CanPlay=function(sURL){if(!_s.useHTML5Audio||!_s.hasHTML5){return false;}
var result,mime,fileExt,item,aF=_s.audioFormats;if(!_html5Ext){_html5Ext=[];for(item in aF){if(aF.hasOwnProperty(item)){_html5Ext.push(item);if(aF[item].related){_html5Ext=_html5Ext.concat(aF[item].related);}}}
_html5Ext=new RegExp('\\.('+_html5Ext.join('|')+')','i');}
mime=(typeof sURL.type!=='undefined'?sURL.type:null);fileExt=(typeof sURL==='string'?sURL.toLowerCase().match(_html5Ext):null);if(!fileExt||!fileExt.length){if(!mime){return false;}}else{fileExt=fileExt[0].substr(1);}
if(fileExt&&typeof _s.html5[fileExt]!=='undefined'){return _s.html5[fileExt];}else{if(!mime){if(fileExt&&_s.html5[fileExt]){return _s.html5[fileExt];}else{mime='audio/'+fileExt;}}
result=_s.html5.canPlayType(mime);_s.html5[fileExt]=result;return result;}};_testHTML5=function(){if(!_s.useHTML5Audio||typeof Audio==='undefined'){return false;}
var a=(typeof Audio!=='undefined'?new Audio():null),item,support={},aF,i;function _cp(m){var canPlay,i,j,isOK=false;if(!a||typeof a.canPlayType!=='function'){return false;}
if(m instanceof Array){for(i=0,j=m.length;i<j&&!isOK;i++){if(_s.html5[m[i]]||a.canPlayType(m[i]).match(_s.html5Test)){isOK=true;_s.html5[m[i]]=true;}}
return isOK;}else{canPlay=(a&&typeof a.canPlayType==='function'?a.canPlayType(m):false);return(canPlay&&(canPlay.match(_s.html5Test)?true:false));}}
aF=_s.audioFormats;for(item in aF){if(aF.hasOwnProperty(item)){support[item]=_cp(aF[item].type);if(aF[item]&&aF[item].related){for(i=0;i<aF[item].related.length;i++){_s.html5[aF[item].related[i]]=support[item];}}}}
support.canPlayType=(a?_cp:null);_s.html5=_mergeObjects(_s.html5,support);};_strings={notReady:'Not loaded yet - wait for soundManager.onload() before calling sound-related methods',appXHTML:_sm+'::createMovie(): appendChild/innerHTML set failed. May be app/xhtml+xml DOM-related.',spcWmode:_sm+'::createMovie(): Removing wmode, preventing win32 below-the-fold SWF loading issue',swf404:_sm+': Verify that %s is a valid path.',tryDebug:'Try '+_sm+'.debugFlash = true for more security details (output goes to SWF.)',checkSWF:'See SWF output for more debug info.',localFail:_sm+': Non-HTTP page ('+document.location.protocol+' URL?) Review Flash player security settings for this special case:\nhttp://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html\nMay need to add/allow path, eg. c:/sm2/ or /users/me/sm2/',waitFocus:_sm+': Special case: Waiting for focus-related event..',waitImpatient:_sm+': Getting impatient, still waiting for Flash%s...',waitForever:_sm+': Waiting indefinitely for Flash (will recover if unblocked)...',needFunction:_sm+'.onready(): Function object expected',badID:'Warning: Sound ID "%s" should be a string, starting with a non-numeric character',fl9Vid:'flash 9 required for video. Exiting.',noMS:'MovieStar mode not enabled. Exiting.',currentObj:'--- '+_sm+'._debug(): Current sound objects ---',waitEI:_sm+'::initMovie(): Waiting for ExternalInterface call from Flash..',waitOnload:_sm+': Waiting for window.onload()',docLoaded:_sm+': Document already loaded',onload:_sm+'::initComplete(): calling soundManager.onload()',onloadOK:_sm+'.onload() complete',init:'-- '+_sm+'::init() --',didInit:_sm+'::init(): Already called?',flashJS:_sm+': Attempting to call Flash from JS..',noPolling:_sm+': Polling (whileloading()/whileplaying() support) is disabled.',secNote:'Flash security note: Network/internet URLs will not load due to security restrictions. Access can be configured via Flash Player Global Security Settings Page: http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html',badRemove:'Warning: Failed to remove flash movie.',noPeak:'Warning: peakData features unsupported for movieStar formats',shutdown:_sm+'.disable(): Shutting down',queue:_sm+'.onready(): Queueing handler',smFail:_sm+': Failed to initialise.',smError:'SMSound.load(): Exception: JS-Flash communication failed, or JS error.',fbTimeout:'No flash response, applying .'+_s.swfCSS.swfTimedout+' CSS..',fbLoaded:'Flash loaded',manURL:'SMSound.load(): Using manually-assigned URL',onURL:_sm+'.load(): current URL already assigned.',badFV:'soundManager.flashVersion must be 8 or 9. "%s" is invalid. Reverting to %s.',as2loop:'Note: Setting stream:false so looping can work (flash 8 limitation)',noNSLoop:'Note: Looping not implemented for MovieStar formats',needfl9:'Note: Switching to flash 9, required for MP4 formats.',mfTimeout:'Setting flashLoadTimeout = 0 (infinite) for off-screen, mobile flash case',mfOn:'mobileFlash::enabling on-screen flash repositioning'};_id=function(sID){return document.getElementById(sID);};_wdCount=0;_str=function(){var params=Array.prototype.slice.call(arguments),o=params.shift(),str=(_strings&&_strings[o]?_strings[o]:''),i,j;if(str&&params&&params.length){for(i=0,j=params.length;i<j;i++){str=str.replace('%s',params[i]);}}
return str;};_loopFix=function(sOpt){if(_fV===8&&sOpt.loops>1&&sOpt.stream){_wDS('as2loop');sOpt.stream=false;}
return sOpt;};_complain=function(sMsg,oCaller){var sPre='Error: ',errorDesc;if(!oCaller){return new Error(sPre+sMsg);}
if(typeof console!=='undefined'&&typeof console.trace!=='undefined'){console.trace();}
errorDesc=sPre+sMsg+'. \nCaller: '+oCaller.toString();return new Error(errorDesc);};_doNothing=function(){return false;};_disableObject=function(o){for(var oProp in o){if(o.hasOwnProperty(oProp)&&typeof o[oProp]==='function'){o[oProp]=_doNothing;}}
oProp=null;};_failSafely=function(bNoDisable){if(typeof bNoDisable==='undefined'){bNoDisable=false;}
if(_disabled||bNoDisable){_wDS('smFail',2);_s.disable(bNoDisable);}};_normalizeMovieURL=function(smURL){var urlParams=null;if(smURL){if(smURL.match(/\.swf(\?\.*)?$/i)){urlParams=smURL.substr(smURL.toLowerCase().lastIndexOf('.swf?')+4);if(urlParams){return smURL;}}else if(smURL.lastIndexOf('/')!==smURL.length-1){smURL=smURL+'/';}}
return(smURL&&smURL.lastIndexOf('/')!==-1?smURL.substr(0,smURL.lastIndexOf('/')+1):'./')+_s.movieURL;};_setVersionInfo=function(){if(_fV!==8&&_fV!==9){_s._wD(_str('badFV',_fV,_defaultFlashVersion));_s.flashVersion=_defaultFlashVersion;}
var isDebug=(_s.debugMode||_s.debugFlash?'_debug.swf':'.swf');if(_s.flashVersion<9&&_s.useHTML5Audio&&_s.audioFormats.mp4.required){_s._wD(_str('needfl9'));_s.flashVersion=9;}
_fV=_s.flashVersion;_s.version=_s.versionNumber+(_html5Only?' (HTML5-only mode)':(_fV===9?' (AS3/Flash 9)':' (AS2/Flash 8)'));if(_fV>8){_s.defaultOptions=_mergeObjects(_s.defaultOptions,_s.flash9Options);_s.features.buffering=true;}
if(_fV>8&&_s.useMovieStar){_s.defaultOptions=_mergeObjects(_s.defaultOptions,_s.movieStarOptions);_s.filePatterns.flash9=new RegExp('\\.(mp3|'+_s.netStreamTypes.join('|')+')(\\?.*)?$','i');_s.mimePattern=_s.netStreamMimeTypes;_s.features.movieStar=true;}else{_s.features.movieStar=false;}
_s.filePattern=_s.filePatterns[(_fV!==8?'flash9':'flash8')];_s.movieURL=(_fV===8?'soundmanager2.swf':'soundmanager2_flash9.swf').replace('.swf',isDebug);_s.features.peakData=_s.features.waveformData=_s.features.eqData=(_fV>8);};_getDocument=function(){return(document.body?document.body:(document.documentElement?document.documentElement:document.getElementsByTagName('div')[0]));};_setPolling=function(bPolling,bHighPerformance){if(!_s.o||!_s.allowPolling){return false;}
_s.o._setPolling(bPolling,bHighPerformance);};function _initDebug(){if(_s.debugURLParam.test(_wl)){_s.debugMode=true;}
var oD,oDebug,oTarget,oToggle,tmp;if(_s.debugMode){oD=document.createElement('div');oD.id=_s.debugID+'-toggle';oToggle={position:'fixed',bottom:'0px',right:'0px',width:'1.2em',height:'1.2em',lineHeight:'1.2em',margin:'2px',textAlign:'center',border:'1px solid #999',cursor:'pointer',background:'#fff',color:'#333',zIndex:10001};oD.appendChild(document.createTextNode('-'));oD.onclick=_toggleDebug;oD.title='Toggle SM2 debug console';if(_ua.match(/msie 6/i)){oD.style.position='absolute';oD.style.cursor='hand';}
for(tmp in oToggle){if(oToggle.hasOwnProperty(tmp)){oD.style[tmp]=oToggle[tmp];}}}
if(_s.debugMode&&!_id(_s.debugID)&&((!_hasConsole||!_s.useConsole)||(_s.useConsole&&_hasConsole&&!_s.consoleOnly))){oDebug=document.createElement('div');oDebug.id=_s.debugID;oDebug.style.display=(_s.debugMode?'block':'none');if(_s.debugMode&&!_id(oD.id)){try{oTarget=_getDocument();oTarget.appendChild(oD);}catch(e2){throw new Error(_str('appXHTML'));}
oTarget.appendChild(oDebug);}}
oTarget=null;_initDebug=function(){};}
_mobileFlash=(function(){var oM=null;function resetPosition(){if(oM){oM.left=oM.top='-9999px';}}
function reposition(){oM.left=window.scrollX+'px';oM.top=window.scrollY+'px';}
function setReposition(bOn){_s._wD('mobileFlash::flash on-screen hack: '+(bOn?'ON':'OFF'));var f=window[(bOn?'add':'remove')+'EventListener'];f('resize',reposition,false);f('scroll',reposition,false);}
function check(inDoc){oM=_s.oMC.style;if(_ua.match(/android/i)){if(inDoc){if(_s.flashLoadTimeout){_s._wDS('mfTimeout');_s.flashLoadTimeout=0;}
return false;}
_s._wD('mfOn');oM.position='absolute';oM.left=oM.top='0px';setReposition(true);_s.onready(function(){setReposition(false);resetPosition();});reposition();}}
return{check:check};}());_createMovie=function(smID,smURL){var specialCase=null,remoteURL=(smURL?smURL:_s.url),localURL=(_s.altURL?_s.altURL:remoteURL),oEmbed,oMovie,oTarget,tmp,movieHTML,oEl,extraClass,s,x,sClass,side='100%';smID=(typeof smID==='undefined'?_s.id:smID);if(_didAppend&&_appendSuccess){return false;}
function _initMsg(){_s._wD('-- SoundManager 2 '+_s.version+(!_html5Only&&_s.useHTML5Audio?(_s.hasHTML5?' + HTML5 audio':', no HTML5 audio support'):'')+(_s.useMovieStar?', MovieStar mode':'')+(_s.useHighPerformance?', high performance mode, ':', ')+((_s.useFastPolling?'fast':'normal')+' polling')+(_s.wmode?', wmode: '+_s.wmode:'')+(_s.debugFlash?', flash debug mode':'')+(_s.useFlashBlock?', flashBlock mode':'')+' --',1);}
if(_html5Only){_setVersionInfo();_initMsg();_s.oMC=_id(_s.movieID);_init();_didAppend=true;_appendSuccess=true;return false;}
_didAppend=true;_setVersionInfo();_s.url=_normalizeMovieURL(this._overHTTP?remoteURL:localURL);smURL=_s.url;if(_s.useHighPerformance&&_s.useMovieStar&&_s.defaultOptions.useVideo===true){specialCase='soundManager note: disabling highPerformance, not applicable with movieStar mode+useVideo';_s.useHighPerformance=false;}
_s.wmode=(!_s.wmode&&_s.useHighPerformance&&!_s.useMovieStar?'transparent':_s.wmode);if(_s.wmode!==null&&!_s.isIE&&!_s.useHighPerformance&&navigator.platform.match(/win32/i)){_s.specialWmodeCase=true;_wDS('spcWmode');_s.wmode=null;}
if(_fV===8){_s.allowFullScreen=false;}
oEmbed={name:smID,id:smID,src:smURL,width:side,height:side,quality:'high',allowScriptAccess:_s.allowScriptAccess,bgcolor:_s.bgColor,pluginspage:'http://www.macromedia.com/go/getflashplayer',type:'application/x-shockwave-flash',wmode:_s.wmode,allowFullScreen:(_s.allowFullScreen?'true':'false')};if(_s.debugFlash){oEmbed.FlashVars='debug=1';}
if(!_s.wmode){delete oEmbed.wmode;}
if(_s.isIE){oMovie=document.createElement('div');movieHTML='<object id="'+smID+'" data="'+smURL+'" type="'+oEmbed.type+'" width="'+oEmbed.width+'" height="'+oEmbed.height+'"><param name="movie" value="'+smURL+'" /><param name="AllowScriptAccess" value="'+_s.allowScriptAccess+'" /><param name="quality" value="'+oEmbed.quality+'" />'+(_s.wmode?'<param name="wmode" value="'+_s.wmode+'" /> ':'')+'<param name="bgcolor" value="'+_s.bgColor+'" /><param name="allowFullScreen" value="'+oEmbed.allowFullScreen+'" />'+(_s.debugFlash?'<param name="FlashVars" value="'+oEmbed.FlashVars+'" />':'')+'<!-- --></object>';}else{oMovie=document.createElement('embed');for(tmp in oEmbed){if(oEmbed.hasOwnProperty(tmp)){oMovie.setAttribute(tmp,oEmbed[tmp]);}}}
_initDebug();extraClass=_getSWFCSS();oTarget=_getDocument();if(oTarget){_s.oMC=_id(_s.movieID)?_id(_s.movieID):document.createElement('div');if(!_s.oMC.id){_s.oMC.id=_s.movieID;_s.oMC.className=_s.swfCSS.swfDefault+' '+extraClass;s=null;oEl=null;if(!_s.useFlashBlock){if(_s.useHighPerformance){s={position:'fixed',width:'8px',height:'8px',bottom:'0px',left:'0px',overflow:'hidden'};}else{s={position:'absolute',width:'6px',height:'6px',top:'-9999px',left:'-9999px'};}}
if(_ua.match(/webkit/i)){_s.oMC.style.zIndex=10000;}
x=null;if(!_s.debugFlash){for(x in s){if(s.hasOwnProperty(x)){_s.oMC.style[x]=s[x];}}}
try{if(!_s.isIE){_s.oMC.appendChild(oMovie);}
oTarget.appendChild(_s.oMC);if(_s.isIE){oEl=_s.oMC.appendChild(document.createElement('div'));oEl.className='sm2-object-box';oEl.innerHTML=movieHTML;}
_appendSuccess=true;}catch(e){throw new Error(_str('appXHTML'));}
_mobileFlash.check();}else{sClass=_s.oMC.className;_s.oMC.className=(sClass?sClass+' ':_s.swfCSS.swfDefault)+(extraClass?' '+extraClass:'');_s.oMC.appendChild(oMovie);if(_s.isIE){oEl=_s.oMC.appendChild(document.createElement('div'));oEl.className='sm2-object-box';oEl.innerHTML=movieHTML;}
_appendSuccess=true;_mobileFlash.check(true);}}
if(specialCase){_s._wD(specialCase);}
_initMsg();_s._wD('soundManager::createMovie(): Trying to load '+smURL+(!this._overHTTP&&_s.altURL?' (alternate URL)':''),1);};_idCheck=this.getSoundById;_wDS=function(o,errorLevel){if(!o){return'';}else{return _s._wD(_str(o),errorLevel);}};if(_wl.indexOf('debug=alert')+1&&_s.debugMode){_s._wD=function(sText){alert(sText);};}
_toggleDebug=function(){var o=_id(_s.debugID),oT=_id(_s.debugID+'-toggle');if(!o){return false;}
if(_debugOpen){oT.innerHTML='+';o.style.display='none';}else{oT.innerHTML='-';o.style.display='block';}
_debugOpen=!_debugOpen;};_debugTS=function(sEventType,bSuccess,sMessage){if(typeof sm2Debugger!=='undefined'){try{sm2Debugger.handleEvent(sEventType,bSuccess,sMessage);}catch(e){}}};_mergeObjects=function(oMain,oAdd){var o1={},i,o2,o;for(i in oMain){if(oMain.hasOwnProperty(i)){o1[i]=oMain[i];}}
o2=(typeof oAdd==='undefined'?_s.defaultOptions:oAdd);for(o in o2){if(o2.hasOwnProperty(o)&&typeof o1[o]==='undefined'){o1[o]=o2[o];}}
return o1;};_initMovie=function(){if(_html5Only){_createMovie();return false;}
if(_s.o){return false;}
_s.o=_s.getMovie(_s.id);if(!_s.o){if(!_oRemoved){_createMovie(_s.id,_s.url);}else{if(!_s.isIE){_s.oMC.appendChild(_oRemoved);}else{_s.oMC.innerHTML=_oRemovedHTML;}
_oRemoved=null;_didAppend=true;}
_s.o=_s.getMovie(_s.id);}
if(_s.o){_s._wD('soundManager::initMovie(): Got '+_s.o.nodeName+' element ('+(_didAppend?'created via JS':'static HTML')+')');_wDS('waitEI');}
if(typeof _s.oninitmovie==='function'){setTimeout(_s.oninitmovie,1);}};_go=function(sURL){if(sURL){_s.url=sURL;}
_initMovie();};_waitForEI=function(){if(_waitingForEI){return false;}
_waitingForEI=true;if(_tryInitOnFocus&&!_isFocused){_wDS('waitFocus');return false;}
var p;if(!_didInit){p=_s.getMoviePercent();_s._wD(_str('waitImpatient',(p===100?' (SWF loaded)':(p>0?' (SWF '+p+'% loaded)':''))));}
setTimeout(function(){p=_s.getMoviePercent();if(!_didInit){_s._wD(_sm+': No Flash response within expected time.\nLikely causes: '+(p===0?'Loading '+_s.movieURL+' may have failed (and/or Flash '+_fV+'+ not present?), ':'')+'Flash blocked or JS-Flash security error.'+(_s.debugFlash?' '+_str('checkSWF'):''),2);if(!this._overHTTP&&p){_wDS('localFail',2);if(!_s.debugFlash){_wDS('tryDebug',2);}}
if(p===0){_s._wD(_str('swf404',_s.url));}
_debugTS('flashtojs',false,': Timed out'+this._overHTTP?' (Check flash security or flash blockers)':' (No plugin/missing SWF?)');}
if(!_didInit&&_okToDisable){if(p===null){if(_s.useFlashBlock||_s.flashLoadTimeout===0){if(_s.useFlashBlock){_flashBlockHandler();}
_wDS('waitForever');}else{_failSafely(true);}}else{if(_s.flashLoadTimeout===0){_wDS('waitForever');}else{_failSafely(true);}}}},_s.flashLoadTimeout);};_getSWFCSS=function(){var css=[];if(_s.debugMode){css.push(_s.swfCSS.sm2Debug);}
if(_s.debugFlash){css.push(_s.swfCSS.flashDebug);}
if(_s.useHighPerformance){css.push(_s.swfCSS.highPerf);}
return css.join(' ');};_flashBlockHandler=function(){var name='soundManager::flashBlockHandler()',p=_s.getMoviePercent();if(!_s.supported()){if(_needsFlash){_s.oMC.className=_getSWFCSS()+' '+_s.swfCSS.swfDefault+' '+(p===null?_s.swfCSS.swfTimedout:_s.swfCSS.swfError);_s._wD(name+': '+_str('fbTimeout')+(p?' ('+_str('fbLoaded')+')':''));}
_s.didFlashBlock=true;_processOnReady(true);if(_s.onerror instanceof Function){_s.onerror.apply(window);}}else{if(_s.didFlashBlock){_s._wD(name+': Unblocked');}
if(_s.oMC){_s.oMC.className=_getSWFCSS()+' '+_s.swfCSS.swfDefault+(' '+_s.swfCSS.swfUnblocked);}}};_handleFocus=function(){if(_isFocused||!_tryInitOnFocus){return true;}
_okToDisable=true;_isFocused=true;_s._wD('soundManager::handleFocus()');if(_tryInitOnFocus){window.removeEventListener('mousemove',_handleFocus,false);}
_waitingForEI=false;setTimeout(_waitForEI,500);if(window.removeEventListener){window.removeEventListener('focus',_handleFocus,false);}else if(window.detachEvent){window.detachEvent('onfocus',_handleFocus);}};_initComplete=function(bNoDisable){if(_didInit){return false;}
if(_html5Only){_s._wD('-- SoundManager 2: loaded --');_didInit=true;_processOnReady();_initUserOnload();return true;}
var sClass=_s.oMC.className,wasTimeout=(_s.useFlashBlock&&_s.flashLoadTimeout&&!_s.getMoviePercent());if(!wasTimeout){_didInit=true;}
_s._wD('-- SoundManager 2 '+(_disabled?'failed to load':'loaded')+' ('+(_disabled?'security/load error':'OK')+') --',1);if(_disabled||bNoDisable){if(_s.useFlashBlock){_s.oMC.className=_getSWFCSS()+' '+(_s.getMoviePercent()===null?_s.swfCSS.swfTimedout:_s.swfCSS.swfError);}
_processOnReady();_debugTS('onload',false);if(_s.onerror instanceof Function){_s.onerror.apply(window);}
return false;}else{_debugTS('onload',true);}
if(_s.waitForWindowLoad&&!_windowLoaded){_wDS('waitOnload');if(window.addEventListener){window.addEventListener('load',_initUserOnload,false);}else if(window.attachEvent){window.attachEvent('onload',_initUserOnload);}
return false;}else{if(_s.waitForWindowLoad&&_windowLoaded){_wDS('docLoaded');}
_initUserOnload();}};_addOnReady=function(oMethod,oScope){_onready.push({'method':oMethod,'scope':(oScope||null),'fired':false});};_processOnReady=function(ignoreInit){if(!_didInit&&!ignoreInit){return false;}
var status={success:(ignoreInit?_s.supported():!_disabled)},queue=[],i,j,canRetry=(!_s.useFlashBlock||(_s.useFlashBlock&&!_s.supported()));for(i=0,j=_onready.length;i<j;i++){if(_onready[i].fired!==true){queue.push(_onready[i]);}}
if(queue.length){_s._wD(_sm+': Firing '+queue.length+' onready() item'+(queue.length>1?'s':''));for(i=0,j=queue.length;i<j;i++){if(queue[i].scope){queue[i].method.apply(queue[i].scope,[status]);}else{queue[i].method(status);}
if(!canRetry){queue[i].fired=true;}}}};_initUserOnload=function(){window.setTimeout(function(){if(_s.useFlashBlock){_flashBlockHandler();}
_processOnReady();_wDS('onload',1);_s.onload.apply(window);_wDS('onloadOK',1);},1);};_featureCheck=function(){var needsFlash,item,isBadSafari=(!_wl.match(/usehtml5audio/i)&&!_wl.match(/sm2\-ignorebadua/i)&&_s.isSafari&&_ua.match(/OS X 10_6_(3|4)/i)&&_ua.match(/(531\.22\.7|533\.16|533\.17\.8)/i)),isSpecial=(_ua.match(/iphone os (1|2|3_0|3_1)/i)?true:false);if(isSpecial){_s.hasHTML5=false;_html5Only=true;if(_s.oMC){_s.oMC.style.display='none';}
return false;}
if(_s.useHTML5Audio){if(!_s.html5||!_s.html5.canPlayType){_s._wD('SoundManager: No HTML5 Audio() support detected.');_s.hasHTML5=false;return true;}else{_s.hasHTML5=true;}
if(isBadSafari){_s._wD('SoundManager::Note: Buggy HTML5 Audio in this specific browser + OS, see https://bugs.webkit.org/show_bug.cgi?id=32159 - disabling HTML5',1);_s.useHTML5Audio=false;_s.hasHTML5=false;return true;}}else{return true;}
for(item in _s.audioFormats){if(_s.audioFormats.hasOwnProperty(item)){if(_s.audioFormats[item].required&&!_s.html5.canPlayType(_s.audioFormats[item].type)){needsFlash=true;}}}
if(_s.ignoreFlash){needsFlash=false;}
_html5Only=(_s.useHTML5Audio&&_s.hasHTML5&&!needsFlash);return needsFlash;};_init=function(){var item,tests=[];_wDS('init');if(_didInit){_wDS('didInit');return false;}
function _cleanup(){if(window.removeEventListener){window.removeEventListener('load',_s.beginDelayedInit,false);}else if(window.detachEvent){window.detachEvent('onload',_s.beginDelayedInit);}}
if(_s.hasHTML5){for(item in _s.audioFormats){if(_s.audioFormats.hasOwnProperty(item)){tests.push(item+': '+_s.html5[item]);}}
_s._wD('-- SoundManager 2: HTML5 support tests ('+_s.html5Test+'): '+tests.join(', ')+' --',1);}
if(_html5Only){if(!_didInit){_cleanup();_s.enabled=true;_initComplete();}
return true;}else{}
_initMovie();try{_wDS('flashJS');_s.o._externalInterfaceTest(false);if(!_s.allowPolling){_wDS('noPolling',1);}else{_setPolling(true,_s.useFastPolling?true:false);}
if(!_s.debugMode){_s.o._disableDebug();}
_s.enabled=true;_debugTS('jstoflash',true);}catch(e){_s._wD('js/flash exception: '+e.toString());_debugTS('jstoflash',false);_failSafely(true);_initComplete();return false;}
_initComplete();_cleanup();};_beginInit=function(){if(_initPending){return false;}
_createMovie();_initMovie();_initPending=true;return true;};_dcLoaded=function(){if(_didDCLoaded){return false;}
_didDCLoaded=true;_initDebug();_testHTML5();_s.html5.usingFlash=_featureCheck();_needsFlash=_s.html5.usingFlash;_didDCLoaded=true;_go();};_startTimer=function(oSound){if(!oSound._hasTimer){oSound._hasTimer=true;}};_stopTimer=function(oSound){if(oSound._hasTimer){oSound._hasTimer=false;}};this._setSandboxType=function(sandboxType){var sb=_s.sandbox;sb.type=sandboxType;sb.description=sb.types[(typeof sb.types[sandboxType]!=='undefined'?sandboxType:'unknown')];_s._wD('Flash security sandbox type: '+sb.type);if(sb.type==='localWithFile'){sb.noRemote=true;sb.noLocal=false;_wDS('secNote',2);}else if(sb.type==='localWithNetwork'){sb.noRemote=false;sb.noLocal=true;}else if(sb.type==='localTrusted'){sb.noRemote=false;sb.noLocal=false;}};this._externalInterfaceOK=function(flashDate){if(_s.swfLoaded){return false;}
var eiTime=new Date().getTime();_s._wD('soundManager::externalInterfaceOK()'+(flashDate?' (~'+(eiTime-flashDate)+' ms)':''));_debugTS('swf',true);_debugTS('flashtojs',true);_s.swfLoaded=true;_tryInitOnFocus=false;if(_s.isIE){setTimeout(_init,100);}else{_init();}};this._onfullscreenchange=function(bFullScreen){_s._wD('onfullscreenchange(): '+bFullScreen);_s.isFullScreen=(bFullScreen===1?true:false);if(!_s.isFullScreen){try{window.focus();_s._wD('window.focus()');}catch(e){}}};SMSound=function(oOptions){var _t=this,_resetProperties,_add_html5_events,_stop_html5_timer,_start_html5_timer,_get_html5_duration,_a;this.sID=oOptions.id;this.url=oOptions.url;this.options=_mergeObjects(oOptions);this.instanceOptions=this.options;this._iO=this.instanceOptions;this.pan=this.options.pan;this.volume=this.options.volume;this._lastURL=null;this.isHTML5=false;this.id3={};this._debug=function(){if(_s.debugMode){var stuff=null,msg=[],sF,sfBracket,maxLength=64;for(stuff in _t.options){if(_t.options[stuff]!==null){if(_t.options[stuff]instanceof Function){sF=_t.options[stuff].toString();sF=sF.replace(/\s\s+/g,' ');sfBracket=sF.indexOf('{');msg.push(' '+stuff+': {'+sF.substr(sfBracket+1,(Math.min(Math.max(sF.indexOf('\n')-1,maxLength),maxLength))).replace(/\n/g,'')+'... }');}else{msg.push(' '+stuff+': '+_t.options[stuff]);}}}
_s._wD('SMSound() merged options: {\n'+msg.join(', \n')+'\n}');}};this._debug();this.load=function(oOptions){var oS=null;if(typeof oOptions!=='undefined'){_t._iO=_mergeObjects(oOptions);_t.instanceOptions=_t._iO;}else{oOptions=_t.options;_t._iO=oOptions;_t.instanceOptions=_t._iO;if(_t._lastURL&&_t._lastURL!==_t.url){_wDS('manURL');_t._iO.url=_t.url;_t.url=null;}}
_s._wD('soundManager.load(): '+_t._iO.url,1);if(_t._iO.url===_t.url&&_t.readyState!==0&&_t.readyState!==2){_wDS('onURL',1);return _t;}
_t._lastURL=_t.url;_t.loaded=false;_t.readyState=1;_t.playState=0;if(_html5OK(_t._iO)){_s._wD('HTML 5 load: '+_t._iO.url);oS=_t._setup_html5(_t._iO);oS.load();if(_t._iO.autoPlay){_t.play();}}else{try{_t.isHTML5=false;_t._iO=_loopFix(_t._iO);if(_fV===8){_s.o._load(_t.sID,_t._iO.url,_t._iO.stream,_t._iO.autoPlay,(_t._iO.whileloading?1:0),_t._iO.loops||1);}else{_s.o._load(_t.sID,_t._iO.url,_t._iO.stream?true:false,_t._iO.autoPlay?true:false,_t._iO.loops||1);if(_t._iO.isMovieStar&&_t._iO.autoLoad&&!_t._iO.autoPlay){_t.pause();}}}catch(e){_wDS('smError',2);_debugTS('onload',false);_s.onerror();_s.disable();}}
return _t;};this.unload=function(){if(_t.readyState!==0){_s._wD('SMSound.unload(): "'+_t.sID+'"');if(_t.readyState!==2){_t.setPosition(0,true);}
if(!_t.isHTML5){if(_fV===8){_s.o._unload(_t.sID,_s.nullURL);}else{_t.setAutoPlay(false);_s.o._unload(_t.sID);}}else{_stop_html5_timer();if(_a){_a.pause();_a.src=_s.nullURL;_a.load();_t._audio=null;_a=null;}}
_resetProperties();}
return _t;};this.destruct=function(){_s._wD('SMSound.destruct(): "'+_t.sID+'"');if(!_t.isHTML5){_t._iO.onfailure=null;_s.o._destroySound(_t.sID);}else{_stop_html5_timer();if(_a){_a.pause();_a.src='about:blank';_a.load();_t._audio=null;_a=null;}}
_s.destroySound(_t.sID,true);};this.play=function(oOptions){var fN='SMSound.play(): ',allowMulti;if(!oOptions){oOptions={};}
_t._iO=_mergeObjects(oOptions,_t._iO);_t._iO=_mergeObjects(_t._iO,_t.options);_t.instanceOptions=_t._iO;if(_t._iO.serverURL){if(!_t.connected){_s._wD(fN+' Netstream not connected yet - setting autoPlay');_t.setAutoPlay(true);return _t;}}
if(_html5OK(_t._iO)){_t._setup_html5(_t._iO);_start_html5_timer();}
if(_t.playState===1){allowMulti=_t._iO.multiShot;if(!allowMulti){_s._wD(fN+'"'+_t.sID+'" already playing (one-shot)',1);return _t;}else{_s._wD(fN+'"'+_t.sID+'" already playing (multi-shot)',1);if(_t.isHTML5){_t.setPosition(_t._iO.position);}}}
if(!_t.loaded){if(_t.readyState===0){_s._wD(fN+'Attempting to load "'+_t.sID+'"',1);if(!_t.isHTML5){if(!_t._iO.serverURL){_t._iO.autoPlay=true;_t.load(_t._iO);}}else{_t.load(_t._iO);_t.readyState=1;}}else if(_t.readyState===2){_s._wD(fN+'Could not load "'+_t.sID+'" - exiting',2);return _t;}else{_s._wD(fN+'"'+_t.sID+'" is loading - attempting to play..',1);}}else{_s._wD(fN+'"'+_t.sID+'"');}
if(_t.paused&&_t.position!==null){_s._wD(fN+'"'+_t.sID+'" is resuming from paused state',1);_t.resume();}else{_s._wD(fN+'"'+_t.sID+'" is starting to play');_t.playState=1;_t.paused=false;if(!_t.instanceCount||(_fV>8&&!_t.isHTML5)){_t.instanceCount++;}
_t.position=(typeof _t._iO.position!=='undefined'&&!isNaN(_t._iO.position)?_t._iO.position:0);_t._iO=_loopFix(_t._iO);if(_t._iO.onplay){_t._iO.onplay.apply(_t);}
_t.setVolume(_t._iO.volume,true);_t.setPan(_t._iO.pan,true);if(!_t.isHTML5){if(_fV===9&&_t._iO.serverURL){_t.setAutoPlay(true);}
_s.o._start(_t.sID,_t._iO.loops||1,(_fV===9?_t.position:_t.position/1000));}else{_start_html5_timer();_t._setup_html5().play();}}
return _t;};this.start=this.play;this.stop=function(bAll){if(_t.playState===1){_t._onbufferchange(0);_t.resetOnPosition(0);if(!_t.isHTML5){_t.playState=0;}
_t.paused=false;if(_t._iO.onstop){_t._iO.onstop.apply(_t);}
if(!_t.isHTML5){_s.o._stop(_t.sID,bAll);if(_t._iO.serverURL){_t.unload();}}else{if(_a){_t.setPosition(0);_a.pause();_t.playState=0;_t._onTimer();_stop_html5_timer();_t.unload();}}
_t.instanceCount=0;_t._iO={};}
return _t;};this.setAutoPlay=function(autoPlay){_t._iO.autoPlay=autoPlay;_s.o._setAutoPlay(_t.sID,autoPlay);if(autoPlay){if(!_t.instanceCount){_t.instanceCount++;}}};this.setPosition=function(nMsecOffset,bNoDebug){if(typeof nMsecOffset==='undefined'){nMsecOffset=0;}
var offset=(_t.isHTML5?Math.max(nMsecOffset,0):Math.min(_t.duration,Math.max(nMsecOffset,0)));_t._iO.position=offset;_t.resetOnPosition(_t._iO.position);if(!_t.isHTML5){_s.o._setPosition(_t.sID,(_fV===9?_t._iO.position:_t._iO.position/1000),(_t.paused||!_t.playState));}else if(_a){_s._wD('setPosition(): setting position to '+(_t._iO.position/1000));if(_t.playState){try{_a.currentTime=_t._iO.position/1000;}catch(e){_s._wD('setPosition('+_t._iO.position+'): WARN: Caught exception: '+e.message,2);}}else{_s._wD('HTML 5 warning: cannot set position while playState == 0 (not playing)',2);}
if(_t.paused){_t._onTimer(true);if(_t._iO.useMovieStar){_t.resume();}}}
return _t;};this.pause=function(bCallFlash){if(_t.paused||(_t.playState===0&&_t.readyState!==1)){return _t;}
_s._wD('SMSound.pause()');_t.paused=true;if(!_t.isHTML5){if(bCallFlash||bCallFlash===undefined){_s.o._pause(_t.sID);}}else{_t._setup_html5().pause();_stop_html5_timer();}
if(_t._iO.onpause){_t._iO.onpause.apply(_t);}
return _t;};this.resume=function(){if(!_t.paused||_t.playState===0){return _t;}
_s._wD('SMSound.resume()');_t.paused=false;_t.playState=1;if(!_t.isHTML5){_s.o._pause(_t.sID);}else{_t._setup_html5().play();_start_html5_timer();}
if(_t._iO.onresume){_t._iO.onresume.apply(_t);}
return _t;};this.togglePause=function(){_s._wD('SMSound.togglePause()');if(_t.playState===0){_t.play({position:(_fV===9&&!_t.isHTML5?_t.position:_t.position/1000)});return _t;}
if(_t.paused){_t.resume();}else{_t.pause();}
return _t;};this.setPan=function(nPan,bInstanceOnly){if(typeof nPan==='undefined'){nPan=0;}
if(typeof bInstanceOnly==='undefined'){bInstanceOnly=false;}
if(!_t.isHTML5){_s.o._setPan(_t.sID,nPan);}else{}
_t._iO.pan=nPan;if(!bInstanceOnly){_t.pan=nPan;}
return _t;};this.setVolume=function(nVol,bInstanceOnly){if(typeof nVol==='undefined'){nVol=100;}
if(typeof bInstanceOnly==='undefined'){bInstanceOnly=false;}
if(!_t.isHTML5){_s.o._setVolume(_t.sID,(_s.muted&&!_t.muted)||_t.muted?0:nVol);}else if(_a){_a.volume=nVol/100;}
_t._iO.volume=nVol;if(!bInstanceOnly){_t.volume=nVol;}
return _t;};this.mute=function(){_t.muted=true;if(!_t.isHTML5){_s.o._setVolume(_t.sID,0);}else if(_a){_a.muted=true;}
return _t;};this.unmute=function(){_t.muted=false;var hasIO=typeof _t._iO.volume!=='undefined';if(!_t.isHTML5){_s.o._setVolume(_t.sID,hasIO?_t._iO.volume:_t.options.volume);}else if(_a){_a.muted=false;}
return _t;};this.toggleMute=function(){return(_t.muted?_t.unmute():_t.mute());};this.onposition=function(nPosition,oMethod,oScope){_t._onPositionItems.push({position:nPosition,method:oMethod,scope:(typeof oScope!=='undefined'?oScope:_t),fired:false});return _t;};this.processOnPosition=function(){var i,item,j=_t._onPositionItems.length;if(!j||!_t.playState||_t._onPositionFired>=j){return false;}
for(i=j;i--;){item=_t._onPositionItems[i];if(!item.fired&&_t.position>=item.position){item.method.apply(item.scope,[item.position]);item.fired=true;_s._onPositionFired++;}}};this.resetOnPosition=function(nPosition){var i,item,j=_t._onPositionItems.length;if(!j){return false;}
for(i=j;i--;){item=_t._onPositionItems[i];if(item.fired&&nPosition<=item.position){item.fired=false;_s._onPositionFired--;}}};this._onTimer=function(bForce){if(_t._hasTimer||bForce){var time;if(_a&&(bForce||((_t.playState>0||_t.readyState===1)&&!_t.paused))){_t.duration=_get_html5_duration();_t.durationEstimate=_t.duration;time=_a.currentTime?_a.currentTime*1000:0;_t._whileplaying(time,{},{},{},{});return true;}else{_s._wD('_onTimer: Warn for "'+_t.sID+'": '+(!_a?'Could not find element. ':'')+(_t.playState===0?'playState bad, 0?':'playState = '+_t.playState+', OK'));return false;}}};_get_html5_duration=function(){var d=(_a?_a.duration*1000:undefined);if(d){return(!isNaN(d)?d:null);}};_start_html5_timer=function(){if(_t.isHTML5){_startTimer(_t);}};_stop_html5_timer=function(){if(_t.isHTML5){_stopTimer(_t);}};_resetProperties=function(bLoaded){_t._onPositionItems=[];_t._onPositionFired=0;_t._hasTimer=null;_t._added_events=null;_t._audio=null;_a=null;_t.bytesLoaded=null;_t.bytesTotal=null;_t.position=null;_t.duration=null;_t.durationEstimate=null;_t.failures=0;_t.loaded=false;_t.playState=0;_t.paused=false;_t.readyState=0;_t.muted=false;_t.didBeforeFinish=false;_t.didJustBeforeFinish=false;_t.isBuffering=false;_t.instanceOptions={};_t.instanceCount=0;_t.peakData={left:0,right:0};_t.waveformData={left:[],right:[]};_t.eqData=[];_t.eqData.left=[];_t.eqData.right=[];};_resetProperties();this._setup_html5=function(oOptions){var _iO=_mergeObjects(_t._iO,oOptions);if(_a){if(_t.url!==_iO.url){_s._wD('setting new URL on existing object: '+_iO.url);_a.src=_iO.url;}}else{_s._wD('creating HTML 5 audio element with URL: '+_iO.url);_t._audio=new Audio(_iO.url);_a=_t._audio;_t.isHTML5=true;_add_html5_events();}
_a.loop=(_iO.loops>1?'loop':'');return _t._audio;};_add_html5_events=function(){if(_t._added_events){return false;}
_t._added_events=true;function _add(oEvt,oFn,bBubble){return(_a?_a.addEventListener(oEvt,oFn,bBubble||false):null);}
_add('load',function(e){_s._wD('HTML5::load: '+_t.sID);if(_a){_t._onbufferchange(0);_t._whileloading(_t.bytesTotal,_t.bytesTotal,_get_html5_duration());_t._onload(1);}},false);_add('canplay',function(e){_s._wD('HTML5::canplay: '+_t.sID);_t._onbufferchange(0);},false);_add('waiting',function(e){_s._wD('HTML5::waiting: '+_t.sID);_t._onbufferchange(1);},false);_add('progress',function(e){_s._wD('HTML5::progress: '+_t.sID+': loaded/total: '+(e.loaded||0)+','+(e.total||1));if(!_t.loaded&&_a){_t._onbufferchange(0);_t._whileloading(e.loaded||0,e.total||1,_get_html5_duration());}},false);_add('error',function(e){if(_a){_s._wD('HTML5::error: '+_a.error.code);_t._onload(0);}},false);_add('loadstart',function(e){_s._wD('HTML5::loadstart: '+_t.sID);_t._onbufferchange(1);},false);_add('play',function(e){_s._wD('HTML5::play: '+_t.sID);_t._onbufferchange(0);},false);_add('playing',function(e){_s._wD('HTML5::playing: '+_t.sID);_t._onbufferchange(0);},false);_add('timeupdate',function(e){_t._onTimer();},false);setTimeout(function(){if(_t&&_a){_add('ended',function(e){_s._wD('HTML5::ended: '+_t.sID);_t._onfinish();},false);}},250);};this._whileloading=function(nBytesLoaded,nBytesTotal,nDuration,nBufferLength){_t.bytesLoaded=nBytesLoaded;_t.bytesTotal=nBytesTotal;_t.duration=Math.floor(nDuration);if(!_t._iO.isMovieStar){_t.durationEstimate=parseInt((_t.bytesTotal/_t.bytesLoaded)*_t.duration,10);if(_t.durationEstimate===undefined){_t.durationEstimate=_t.duration;}
_t.bufferLength=nBufferLength;if((_t._iO.isMovieStar||_t.readyState!==3)&&_t._iO.whileloading){_t._iO.whileloading.apply(_t);}}else{_t.durationEstimate=_t.duration;if(_t.readyState!==3&&_t._iO.whileloading){_t._iO.whileloading.apply(_t);}}};this._onid3=function(oID3PropNames,oID3Data){_s._wD('SMSound._onid3(): "'+this.sID+'" ID3 data received.');var oData=[],i,j;for(i=0,j=oID3PropNames.length;i<j;i++){oData[oID3PropNames[i]]=oID3Data[i];}
_t.id3=_mergeObjects(_t.id3,oData);if(_t._iO.onid3){_t._iO.onid3.apply(_t);}};this._whileplaying=function(nPosition,oPeakData,oWaveformDataLeft,oWaveformDataRight,oEQData){if(isNaN(nPosition)||nPosition===null){return false;}
if(_t.playState===0&&nPosition>0){nPosition=0;}
_t.position=nPosition;_t.processOnPosition();if(_fV>8&&!_t.isHTML5){if(_t._iO.usePeakData&&typeof oPeakData!=='undefined'&&oPeakData){_t.peakData={left:oPeakData.leftPeak,right:oPeakData.rightPeak};}
if(_t._iO.useWaveformData&&typeof oWaveformDataLeft!=='undefined'&&oWaveformDataLeft){_t.waveformData={left:oWaveformDataLeft.split(','),right:oWaveformDataRight.split(',')};}
if(_t._iO.useEQData){if(typeof oEQData!=='undefined'&&oEQData&&oEQData.leftEQ){var eqLeft=oEQData.leftEQ.split(',');_t.eqData=eqLeft;_t.eqData.left=eqLeft;if(typeof oEQData.rightEQ!=='undefined'&&oEQData.rightEQ){_t.eqData.right=oEQData.rightEQ.split(',');}}}}
if(_t.playState===1){if(!_t.isHTML5&&_t.isBuffering){_t._onbufferchange(0);}
if(_t._iO.whileplaying){_t._iO.whileplaying.apply(_t);}
if((_t.loaded||(!_t.loaded&&_t._iO.isMovieStar))&&_t._iO.onbeforefinish&&_t._iO.onbeforefinishtime&&!_t.didBeforeFinish&&_t.duration-_t.position<=_t._iO.onbeforefinishtime){_s._wD('duration-position &lt;= onbeforefinishtime: '+_t.duration+' - '+_t.position+' &lt= '+_t._iO.onbeforefinishtime+' ('+(_t.duration-_t.position)+')');_t._onbeforefinish();}}};this._onconnect=function(bSuccess){var fN='SMSound._onconnect(): ';bSuccess=(bSuccess===1);_s._wD(fN+'"'+_t.sID+'"'+(bSuccess?' connected.':' failed to connect? - '+_t.url),(bSuccess?1:2));_t.connected=bSuccess;if(bSuccess){_t.failures=0;if(_t._iO.autoLoad||_t._iO.autoPlay){_t.load(_t._iO);}
if(_t._iO.autoPlay){_t.play();}
if(_t._iO.onconnect){_t._iO.onconnect.apply(_t,[bSuccess]);}}};this._onload=function(nSuccess){var fN='SMSound._onload(): ';nSuccess=(nSuccess===1?true:false);_s._wD(fN+'"'+_t.sID+'"'+(nSuccess?' loaded.':' failed to load? - '+_t.url),(nSuccess?1:2));if(!nSuccess&&!_t.isHTML5){if(_s.sandbox.noRemote===true){_s._wD(fN+_str('noNet'),1);}
if(_s.sandbox.noLocal===true){_s._wD(fN+_str('noLocal'),1);}}
_t.loaded=nSuccess;_t.readyState=nSuccess?3:2;if(_t._iO.onload){_t._iO.onload.apply(_t);}};this._onfailure=function(msg){_t.failures++;_s._wD('SMSound._onfailure(): "'+_t.sID+'" count '+_t.failures);if(_t._iO.onfailure&&_t.failures===1){_t._iO.onfailure(_t,msg);}else{_s._wD('SMSound._onfailure(): ignoring');}};this._onbeforefinish=function(){if(!_t.didBeforeFinish){_t.didBeforeFinish=true;if(_t._iO.onbeforefinish){_s._wD('SMSound._onbeforefinish(): "'+_t.sID+'"');_t._iO.onbeforefinish.apply(_t);}}};this._onjustbeforefinish=function(msOffset){if(!_t.didJustBeforeFinish){_t.didJustBeforeFinish=true;if(_t._iO.onjustbeforefinish){_s._wD('SMSound._onjustbeforefinish(): "'+_t.sID+'"');_t._iO.onjustbeforefinish.apply(_t);}}};this._onfinish=function(){_t._onbufferchange(0);_t.resetOnPosition(0);if(_t._iO.onbeforefinishcomplete){_t._iO.onbeforefinishcomplete.apply(_t);}
_t.didBeforeFinish=false;_t.didJustBeforeFinish=false;if(_t.instanceCount){_t.instanceCount--;if(!_t.instanceCount){_t.playState=0;_t.paused=false;_t.instanceCount=0;_t.instanceOptions={};_stop_html5_timer();}
if(!_t.instanceCount||_t._iO.multiShotEvents){if(_t._iO.onfinish){_s._wD('SMSound._onfinish(): "'+_t.sID+'"');_t._iO.onfinish.apply(_t);}else if(_t.isHTML5){_t.unload();}}}};this._onmetadata=function(oMetaData){var fN='SMSound.onmetadata()';_s._wD(fN);if(!oMetaData.width&&!oMetaData.height){_wDS('noWH');oMetaData.width=320;oMetaData.height=240;}
_t.metadata=oMetaData;_t.width=oMetaData.width;_t.height=oMetaData.height;if(_t._iO.onmetadata){_s._wD(fN+': "'+_t.sID+'"');_t._iO.onmetadata.apply(_t);}
_s._wD(fN+' complete');};this._onbufferchange=function(nIsBuffering){var fN='SMSound._onbufferchange()';if(_t.playState===0){return false;}
if((nIsBuffering&&_t.isBuffering)||(!nIsBuffering&&!_t.isBuffering)){return false;}
_t.isBuffering=(nIsBuffering===1?true:false);if(_t._iO.onbufferchange){_s._wD(fN+': '+nIsBuffering);_t._iO.onbufferchange.apply(_t);}};this._ondataerror=function(sError){if(_t.playState>0){_s._wD('SMSound._ondataerror(): '+sError);if(_t._iO.ondataerror){_t._iO.ondataerror.apply(_t);}}};};if(!_s.hasHTML5||_needsFlash){if(window.addEventListener){window.addEventListener('focus',_handleFocus,false);window.addEventListener('load',_s.beginDelayedInit,false);window.addEventListener('unload',_s.destruct,false);if(_tryInitOnFocus){window.addEventListener('mousemove',_handleFocus,false);}}else if(window.attachEvent){window.attachEvent('onfocus',_handleFocus);window.attachEvent('onload',_s.beginDelayedInit);window.attachEvent('unload',_s.destruct);}else{_debugTS('onload',false);soundManager.onerror();soundManager.disable();}}
_dcIE=function(){if(document.readyState==='complete'){_dcLoaded();document.detachEvent('onreadystatechange',_dcIE);}};if(document.addEventListener){document.addEventListener('DOMContentLoaded',_dcLoaded,false);}else if(document.attachEvent){document.attachEvent('onreadystatechange',_dcIE);}
if(document.readyState==='complete'){setTimeout(_dcLoaded,100);}}
if(typeof SM2_DEFER==='undefined'||!SM2_DEFER){soundManager=new SoundManager();}
window.SoundManager=SoundManager;window.soundManager=soundManager;}(window));
soundManager.url = pathHttp + 'flash/';
;
function Animator(options){this.setOptions(options);var _this=this;this.timerDelegate=function(){_this.onTimerEvent()};this.subjects=[];this.subjectScopes=[];this.target=0;this.state=0;this.lastTime=null;};Animator.prototype={setOptions:function(options){this.options=Animator.applyDefaults({interval:20,duration:400,onComplete:function(){},onStep:function(){},transition:Animator.tx.easeInOut},options);},seekTo:function(to){this.seekFromTo(this.state,to);},seekFromTo:function(from,to){this.target=Math.max(0,Math.min(1,to));this.state=Math.max(0,Math.min(1,from));this.lastTime=new Date().getTime();if(!this.intervalId){this.intervalId=window.setInterval(this.timerDelegate,this.options.interval);}},jumpTo:function(to){this.target=this.state=Math.max(0,Math.min(1,to));this.propagate();},toggle:function(){this.seekTo(1-this.target);},addSubject:function(subject,scope){this.subjects[this.subjects.length]=subject;this.subjectScopes[this.subjectScopes.length]=scope;return this;},clearSubjects:function(){this.subjects=[];this.subjectScopes=[];},propagate:function(){var value=this.options.transition(this.state);for(var i=0;i<this.subjects.length;i++){if(this.subjects[i].setState){this.subjects[i].setState(value);}else{this.subjects[i].apply(this.subjectScopes[i],[value]);}}},onTimerEvent:function(){var now=new Date().getTime();var timePassed=now-this.lastTime;this.lastTime=now;var movement=(timePassed/this.options.duration)*(this.state<this.target?1:-1);if(Math.abs(movement)>=Math.abs(this.state-this.target)){this.state=this.target;}else{this.state+=movement;}
try{this.propagate();}finally{this.options.onStep.call(this);if(this.target==this.state){window.clearInterval(this.intervalId);this.intervalId=null;this.options.onComplete.call(this);}}},play:function(){this.seekFromTo(0,1)},reverse:function(){this.seekFromTo(1,0)},inspect:function(){var str="#<Animator:\n";for(var i=0;i<this.subjects.length;i++){str+=this.subjects[i].inspect();}
str+=">";return str;}}
Animator.applyDefaults=function(defaults,prefs){prefs=prefs||{};var prop,result={};for(prop in defaults)result[prop]=prefs[prop]!==undefined?prefs[prop]:defaults[prop];return result;}
Animator.makeArray=function(o){if(o==null)return[];if(!o.length)return[o];var result=[];for(var i=0;i<o.length;i++)result[i]=o[i];return result;}
Animator.camelize=function(string){var oStringList=string.split('-');if(oStringList.length==1)return oStringList[0];var camelizedString=string.indexOf('-')==0
?oStringList[0].charAt(0).toUpperCase()+oStringList[0].substring(1)
:oStringList[0];for(var i=1,len=oStringList.length;i<len;i++){var s=oStringList[i];camelizedString+=s.charAt(0).toUpperCase()+s.substring(1);}
return camelizedString;}
Animator.apply=function(el,style,options){if(style instanceof Array){return new Animator(options).addSubject(new CSSStyleSubject(el,style[0],style[1]));}
return new Animator(options).addSubject(new CSSStyleSubject(el,style));}
Animator.makeEaseIn=function(a){return function(state){return Math.pow(state,a*2);}}
Animator.makeEaseOut=function(a){return function(state){return 1-Math.pow(1-state,a*2);}}
Animator.makeElastic=function(bounces){return function(state){state=Animator.tx.easeInOut(state);return((1-Math.cos(state*Math.PI*bounces))*(1-state))+state;}}
Animator.makeADSR=function(attackEnd,decayEnd,sustainEnd,sustainLevel){if(sustainLevel==null)sustainLevel=0.5;return function(state){if(state<attackEnd){return state/attackEnd;}
if(state<decayEnd){return 1-((state-attackEnd)/(decayEnd-attackEnd)*(1-sustainLevel));}
if(state<sustainEnd){return sustainLevel;}
return sustainLevel*(1-((state-sustainEnd)/(1-sustainEnd)));}}
Animator.makeBounce=function(bounces){var fn=Animator.makeElastic(bounces);return function(state){state=fn(state);return state<=1?state:2-state;}}
Animator.tx={easeInOut:function(pos){return((-Math.cos(pos*Math.PI)/2)+0.5);},linear:function(x){return x;},easeIn:Animator.makeEaseIn(1.5),easeOut:Animator.makeEaseOut(1.5),strongEaseIn:Animator.makeEaseIn(2.5),strongEaseOut:Animator.makeEaseOut(2.5),elastic:Animator.makeElastic(1),veryElastic:Animator.makeElastic(3),bouncy:Animator.makeBounce(1),veryBouncy:Animator.makeBounce(3)}
function NumericalStyleSubject(els,property,from,to,units){this.els=Animator.makeArray(els);if(property=='opacity'&&window.ActiveXObject){this.property='filter';}else{this.property=Animator.camelize(property);}
this.from=parseFloat(from);this.to=parseFloat(to);this.units=units!=null?units:'px';}
NumericalStyleSubject.prototype={setState:function(state){var style=this.getStyle(state);var visibility=(this.property=='opacity'&&state==0)?'hidden':'';var j=0;for(var i=0;i<this.els.length;i++){try{this.els[i].style[this.property]=style;}catch(e){if(this.property!='fontWeight')throw e;}
if(j++>20)return;}},getStyle:function(state){state=this.from+((this.to-this.from)*state);if(this.property=='filter')return"alpha(opacity="+Math.round(state*100)+")";if(this.property=='opacity')return state;return Math.round(state)+this.units;},inspect:function(){return"\t"+this.property+"("+this.from+this.units+" to "+this.to+this.units+")\n";}}
function ColorStyleSubject(els,property,from,to){this.els=Animator.makeArray(els);this.property=Animator.camelize(property);this.to=this.expandColor(to);this.from=this.expandColor(from);this.origFrom=from;this.origTo=to;}
ColorStyleSubject.prototype={expandColor:function(color){var hexColor,red,green,blue;hexColor=ColorStyleSubject.parseColor(color);if(hexColor){red=parseInt(hexColor.slice(1,3),16);green=parseInt(hexColor.slice(3,5),16);blue=parseInt(hexColor.slice(5,7),16);return[red,green,blue]}
if(window.DEBUG){alert("Invalid colour: '"+color+"'");}},getValueForState:function(color,state){return Math.round(this.from[color]+((this.to[color]-this.from[color])*state));},setState:function(state){var color='#'
+ColorStyleSubject.toColorPart(this.getValueForState(0,state))
+ColorStyleSubject.toColorPart(this.getValueForState(1,state))
+ColorStyleSubject.toColorPart(this.getValueForState(2,state));for(var i=0;i<this.els.length;i++){this.els[i].style[this.property]=color;}},inspect:function(){return"\t"+this.property+"("+this.origFrom+" to "+this.origTo+")\n";}}
ColorStyleSubject.parseColor=function(string){var color='#',match;if(match=ColorStyleSubject.parseColor.rgbRe.exec(string)){var part;for(var i=1;i<=3;i++){part=Math.max(0,Math.min(255,parseInt(match[i])));color+=ColorStyleSubject.toColorPart(part);}
return color;}
if(match=ColorStyleSubject.parseColor.hexRe.exec(string)){if(match[1].length==3){for(var i=0;i<3;i++){color+=match[1].charAt(i)+match[1].charAt(i);}
return color;}
return'#'+match[1];}
return false;}
ColorStyleSubject.toColorPart=function(number){if(number>255)number=255;var digits=number.toString(16);if(number<16)return'0'+digits;return digits;}
ColorStyleSubject.parseColor.rgbRe=/^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i;ColorStyleSubject.parseColor.hexRe=/^\#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/;function DiscreteStyleSubject(els,property,from,to,threshold){this.els=Animator.makeArray(els);this.property=Animator.camelize(property);this.from=from;this.to=to;this.threshold=threshold||0.5;}
DiscreteStyleSubject.prototype={setState:function(state){var j=0;for(var i=0;i<this.els.length;i++){this.els[i].style[this.property]=state<=this.threshold?this.from:this.to;}},inspect:function(){return"\t"+this.property+"("+this.from+" to "+this.to+" @ "+this.threshold+")\n";}}
function CSSStyleSubject(els,style1,style2){els=Animator.makeArray(els);this.subjects=[];if(els.length==0)return;var prop,toStyle,fromStyle;if(style2){fromStyle=this.parseStyle(style1,els[0]);toStyle=this.parseStyle(style2,els[0]);}else{toStyle=this.parseStyle(style1,els[0]);fromStyle={};for(prop in toStyle){fromStyle[prop]=CSSStyleSubject.getStyle(els[0],prop);}}
var prop;for(prop in fromStyle){if(fromStyle[prop]==toStyle[prop]){delete fromStyle[prop];delete toStyle[prop];}}
var prop,units,match,type,from,to;for(prop in fromStyle){var fromProp=String(fromStyle[prop]);var toProp=String(toStyle[prop]);if(toStyle[prop]==null){if(window.DEBUG)alert("No to style provided for '"+prop+'"');continue;}
if(from=ColorStyleSubject.parseColor(fromProp)){to=ColorStyleSubject.parseColor(toProp);type=ColorStyleSubject;}else if(fromProp.match(CSSStyleSubject.numericalRe)
&&toProp.match(CSSStyleSubject.numericalRe)){from=parseFloat(fromProp);to=parseFloat(toProp);type=NumericalStyleSubject;match=CSSStyleSubject.numericalRe.exec(fromProp);var reResult=CSSStyleSubject.numericalRe.exec(toProp);if(match[1]!=null){units=match[1];}else if(reResult[1]!=null){units=reResult[1];}else{units=reResult;}}else if(fromProp.match(CSSStyleSubject.discreteRe)
&&toProp.match(CSSStyleSubject.discreteRe)){from=fromProp;to=toProp;type=DiscreteStyleSubject;units=0;}else{if(window.DEBUG){alert("Unrecognised format for value of "
+prop+": '"+fromStyle[prop]+"'");}
continue;}
this.subjects[this.subjects.length]=new type(els,prop,from,to,units);}}
CSSStyleSubject.prototype={parseStyle:function(style,el){var rtn={};if(style.indexOf(":")!=-1){var styles=style.split(";");for(var i=0;i<styles.length;i++){var parts=CSSStyleSubject.ruleRe.exec(styles[i]);if(parts){rtn[parts[1]]=parts[2];}}}
else{var prop,value,oldClass;oldClass=el.className;el.className=style;for(var i=0;i<CSSStyleSubject.cssProperties.length;i++){prop=CSSStyleSubject.cssProperties[i];value=CSSStyleSubject.getStyle(el,prop);if(value!=null){rtn[prop]=value;}}
el.className=oldClass;}
return rtn;},setState:function(state){for(var i=0;i<this.subjects.length;i++){this.subjects[i].setState(state);}},inspect:function(){var str="";for(var i=0;i<this.subjects.length;i++){str+=this.subjects[i].inspect();}
return str;}}
CSSStyleSubject.getStyle=function(el,property){var style;if(document.defaultView&&document.defaultView.getComputedStyle){style=document.defaultView.getComputedStyle(el,"").getPropertyValue(property);if(style){return style;}}
property=Animator.camelize(property);if(el.currentStyle){style=el.currentStyle[property];}
return style||el.style[property]}
CSSStyleSubject.ruleRe=/^\s*([a-zA-Z\-]+)\s*:\s*(\S(.+\S)?)\s*$/;CSSStyleSubject.numericalRe=/^-?\d+(?:\.\d+)?(%|[a-zA-Z]{2})?$/;CSSStyleSubject.discreteRe=/^\w+$/;CSSStyleSubject.cssProperties=['azimuth','background','background-attachment','background-color','background-image','background-position','background-repeat','border-collapse','border-color','border-spacing','border-style','border-top','border-top-color','border-right-color','border-bottom-color','border-left-color','border-top-style','border-right-style','border-bottom-style','border-left-style','border-top-width','border-right-width','border-bottom-width','border-left-width','border-width','bottom','clear','clip','color','content','cursor','direction','display','elevation','empty-cells','css-float','font','font-family','font-size','font-size-adjust','font-stretch','font-style','font-variant','font-weight','height','left','letter-spacing','line-height','list-style','list-style-image','list-style-position','list-style-type','margin','margin-top','margin-right','margin-bottom','margin-left','max-height','max-width','min-height','min-width','orphans','outline','outline-color','outline-style','outline-width','overflow','padding','padding-top','padding-right','padding-bottom','padding-left','pause','position','right','size','table-layout','text-align','text-decoration','text-indent','text-shadow','text-transform','top','vertical-align','visibility','white-space','width','word-spacing','z-index','opacity','outline-offset','overflow-x','overflow-y'];function AnimatorChain(animators,options){this.animators=animators;this.setOptions(options);for(var i=0;i<this.animators.length;i++){this.listenTo(this.animators[i]);}
this.forwards=false;this.current=0;}
AnimatorChain.prototype={setOptions:function(options){this.options=Animator.applyDefaults({resetOnPlay:true},options);},play:function(){this.forwards=true;this.current=-1;if(this.options.resetOnPlay){for(var i=0;i<this.animators.length;i++){this.animators[i].jumpTo(0);}}
this.advance();},reverse:function(){this.forwards=false;this.current=this.animators.length;if(this.options.resetOnPlay){for(var i=0;i<this.animators.length;i++){this.animators[i].jumpTo(1);}}
this.advance();},toggle:function(){if(this.forwards){this.seekTo(0);}else{this.seekTo(1);}},listenTo:function(animator){var oldOnComplete=animator.options.onComplete;var _this=this;animator.options.onComplete=function(){if(oldOnComplete)oldOnComplete.call(animator);_this.advance();}},advance:function(){if(this.forwards){if(this.animators[this.current+1]==null)return;this.current++;this.animators[this.current].play();}else{if(this.animators[this.current-1]==null)return;this.current--;this.animators[this.current].reverse();}},seekTo:function(target){if(target<=0){this.forwards=false;this.animators[this.current].seekTo(0);}else{this.forwards=true;this.animators[this.current].seekTo(1);}}}
function Accordion(options){this.setOptions(options);var selected=this.options.initialSection,current;if(this.options.rememberance){current=document.location.hash.substring(1);}
this.rememberanceTexts=[];this.ans=[];var _this=this;for(var i=0;i<this.options.sections.length;i++){var el=this.options.sections[i];var an=new Animator(this.options.animatorOptions);var from=this.options.from+(this.options.shift*i);var to=this.options.to+(this.options.shift*i);an.addSubject(new NumericalStyleSubject(el,this.options.property,from,to,this.options.units));an.jumpTo(0);var activator=this.options.getActivator(el);activator.index=i;activator.onclick=function(){_this.show(this.index)};this.ans[this.ans.length]=an;this.rememberanceTexts[i]=activator.innerHTML.replace(/\s/g,"");if(this.rememberanceTexts[i]===current){selected=i;}}
this.show(selected);}
Accordion.prototype={setOptions:function(options){this.options=Object.extend({sections:null,getActivator:function(el){return document.getElementById(el.getAttribute("activator"))},shift:0,initialSection:0,rememberance:true,animatorOptions:{}},options||{});},show:function(section){for(var i=0;i<this.ans.length;i++){this.ans[i].seekTo(i>section?1:0);}
if(this.options.rememberance){document.location.hash=this.rememberanceTexts[section];}}}
;var imgPlayLight=new Image(22,22);imgPlayLight.src=pathHttp+'immagini/360-button-play-light.png';var imgPlayLight2=new Image(22,22);imgPlayLight2.src=pathHttp+'immagini/360-button-play-light.gif';var imgPauseLight=new Image(22,22);imgPauseLight.src=pathHttp+'immagini/360-button-pause-light.png';var imgPauseLight2=new Image(22,22);imgPauseLight2.src=pathHttp+'immagini/360-button-pause-light.gif';function ThreeSixtyPlayer(){var self=this;var pl=this;var sm=soundManager;var isIE=(navigator.userAgent.match(/msie/i));var isOpera=(navigator.userAgent.match(/opera/i));var isSafari=(navigator.userAgent.match(/safari/i));var isChrome=(navigator.userAgent.match(/chrome/i));var isFirefox=(navigator.userAgent.match(/firefox/i));this.excludeClass='threesixty-exclude';this.links=[];this.sounds=[];this.soundsByURL=[];this.indexByURL=[];this.lastSound=null;this.soundCount=0;this.oUITemplate=null;this.oUIImageMap=null;this.vuMeter=null;this.config={playNext:false,autoPlay:false,loadRingColor:'#DFE9F7',playRingColor:'#4D83D3',backgroundRingColor:'#eee',segmentRingColor:'rgba(255,255,255,0.33)',segmentRingColorAlt:'rgba(0,0,0,0.1)',loadRingColorMetadata:'#ddd',playRingColorMetadata:'rgba(96,160,224,0.99)',playRingColorMetadata:'rgba(128,192,256,0.9)',circleDiameter:null,circleRadius:null,imageRoot:pathHttp+'immagini/',animDuration:500,animTransition:Animator.tx.bouncy,showHMSTime:false,scaleFont:false,useWaveformData:false,waveformDataColor:'#0099ff',waveformDataDownsample:3,waveformDataOutside:false,waveformDataConstrain:false,waveformDataLineRatio:0.64,useEQData:false,eqDataColor:'#339933',eqDataDownsample:4,eqDataOutside:true,eqDataLineRatio:0.54,usePeakData:false,peakDataColor:'#ff33ff',peakDataOutside:false,peakDataLineRatio:0.5,useAmplifier:false,fontSizeMax:null,useFavIcon:false}
this.css={sDefault:'sm2_link',sBuffering:'sm2_buffering',sPlaying:'sm2_playing',sPaused:'sm2_paused'}
this.addEventHandler=function(o,evtName,evtHandler){typeof(attachEvent)=='undefined'?o.addEventListener(evtName,evtHandler,false):o.attachEvent('on'+evtName,evtHandler);}
this.removeEventHandler=function(o,evtName,evtHandler){typeof(attachEvent)=='undefined'?o.removeEventListener(evtName,evtHandler,false):o.detachEvent('on'+evtName,evtHandler);}
this.hasClass=function(o,cStr){return(typeof(o.className)!='undefined'?o.className.match(new RegExp('(\\s|^)'+cStr+'(\\s|$)')):false);}
this.addClass=function(o,cStr){if(!o||!cStr||self.hasClass(o,cStr))return false;o.className=(o.className?o.className+' ':'')+cStr;}
this.removeClass=function(o,cStr){if(!o||!cStr||!self.hasClass(o,cStr))return false;o.className=o.className.replace(new RegExp('( '+cStr+')|('+cStr+')','g'),'');}
this.getElementsByClassName=function(className,tagNames,oParent){var doc=(oParent||document);var matches=[];var i,j;var nodes=[];if(typeof tagNames!='undefined'&&typeof tagNames!='string'){for(i=tagNames.length;i--;){if(!nodes||!nodes[tagNames[i]]){nodes[tagNames[i]]=doc.getElementsByTagName(tagNames[i]);}}}else if(tagNames){nodes=doc.getElementsByTagName(tagNames);}else{nodes=doc.all||doc.getElementsByTagName('*');}
if(typeof(tagNames)!='string'){for(i=tagNames.length;i--;){for(j=nodes[tagNames[i]].length;j--;){if(self.hasClass(nodes[tagNames[i]][j],className)){matches.push(nodes[tagNames[i]][j]);}}}}else{for(i=0;i<nodes.length;i++){if(self.hasClass(nodes[i],className)){matches.push(nodes[i]);}}}
return matches;}
this.getParentByNodeName=function(oChild,sParentNodeName){if(!oChild||!sParentNodeName)return false;sParentNodeName=sParentNodeName.toLowerCase();while(oChild.parentNode&&sParentNodeName!=oChild.parentNode.nodeName.toLowerCase()){oChild=oChild.parentNode;}
return(oChild.parentNode&&sParentNodeName==oChild.parentNode.nodeName.toLowerCase()?oChild.parentNode:null);}
this.getParentByClassName=function(oChild,sParentClassName){if(!oChild||!sParentClassName)return false;while(oChild.parentNode&&!self.hasClass(oChild.parentNode,sParentClassName)){oChild=oChild.parentNode;}
return(oChild.parentNode&&self.hasClass(oChild.parentNode,sParentClassName)?oChild.parentNode:null);}
this.getSoundByURL=function(sURL){return(typeof self.soundsByURL[sURL]!='undefined'?self.soundsByURL[sURL]:null);}
this.isChildOfNode=function(o,sNodeName){if(!o||!o.parentNode){return false;}
sNodeName=sNodeName.toLowerCase();do{o=o.parentNode;}while(o&&o.parentNode&&o.nodeName.toLowerCase()!=sNodeName);return(o&&o.nodeName.toLowerCase()==sNodeName?o:null);}
this.isChildOfClass=function(oChild,oClass){if(!oChild||!oClass)return false;while(oChild.parentNode&&!self.hasClass(oChild,oClass)){oChild=self.findParent(oChild);}
return(self.hasClass(oChild,oClass));}
this.findParent=function(o){if(!o||!o.parentNode)return false;o=o.parentNode;if(o.nodeType==2){while(o&&o.parentNode&&o.parentNode.nodeType==2){o=o.parentNode;}}
return o;}
this.getStyle=function(o,sProp){try{if(o.currentStyle){return o.currentStyle[sProp];}else if(window.getComputedStyle){return document.defaultView.getComputedStyle(o,null).getPropertyValue(sProp);}}catch(e){}
return null;}
this.findXY=function(obj){var curleft=0;var curtop=0;do{curleft+=obj.offsetLeft;curtop+=obj.offsetTop;}while(obj=obj.offsetParent);return[curleft,curtop];}
this.getMouseXY=function(e){e=e?e:event;if(e.pageX||e.pageY){return[e.pageX,e.pageY];}else if(e.clientX||e.clientY){return[e.clientX+self.getScrollLeft(),e.clientY+self.getScrollTop()];}}
this.getScrollLeft=function(){return(document.body.scrollLeft+document.documentElement.scrollLeft);}
this.getScrollTop=function(){return(document.body.scrollTop+document.documentElement.scrollTop);}
this.events={play:function(){pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className=pl.css.sPlaying;pl.addClass(this._360data.oUIBox,this._360data.className);self.fanOut(this);},stop:function(){pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className='';self.fanIn(this);},pause:function(){pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className=pl.css.sPaused;pl.addClass(this._360data.oUIBox,this._360data.className);},resume:function(){pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className=pl.css.sPlaying;pl.addClass(this._360data.oUIBox,this._360data.className);},finish:function(){pl.removeClass(this._360data.oUIBox,this._360data.className);this._360data.className='';this._360data.didFinish=true;self.fanIn(this);if(pl.config.playNext){var nextLink=(pl.indexByURL[this._360data.oLink.href]+1);if(nextLink<pl.links.length){pl.handleClick({'target':pl.links[nextLink]});}}},whileloading:function(){if(this.paused){self.updatePlaying.apply(this);}},whileplaying:function(){self.updatePlaying.apply(this);this._360data.fps++;},bufferchange:function(){if(this.isBuffering){pl.addClass(this._360data.oUIBox,pl.css.sBuffering);}else{pl.removeClass(this._360data.oUIBox,pl.css.sBuffering);}}}
this.stopEvent=function(e){if(typeof e!='undefined'&&typeof e.preventDefault!='undefined'){e.preventDefault();}else if(typeof event!='undefined'&&typeof event.returnValue!='undefined'){event.returnValue=false;}
return false;}
this.getTheDamnLink=(isIE)?function(e){return(e&&e.target?e.target:window.event.srcElement);}:function(e){return e.target;}
this.handleClick=function(e){if(e.button>1){return true;}
var o=self.getTheDamnLink(e);if(o.nodeName.toLowerCase()!='a'){o=self.isChildOfNode(o,'a');if(!o)return true;}
if(!self.isChildOfClass(o,'ui360')){return true;}
var sURL=o.getAttribute('href');if(!o.href||!sm.canPlayLink(o)||self.hasClass(o,self.excludeClass)){return true;}
sm._writeDebug('handleClick()');var soundURL=(o.href);var thisSound=self.getSoundByURL(soundURL);if(thisSound){if(thisSound==self.lastSound){thisSound.togglePause();}else{thisSound.togglePause();sm._writeDebug('sound different than last sound: '+self.lastSound.sID);if(self.lastSound){self.stopSound(self.lastSound);}}}else{thisSound=sm.createSound({id:'ui360Sound'+(self.soundCount++),url:soundURL,onplay:self.events.play,onstop:self.events.stop,onpause:self.events.pause,onresume:self.events.resume,onfinish:self.events.finish,onbufferchange:self.events.bufferchange,whileloading:self.events.whileloading,whileplaying:self.events.whileplaying});var oContainer=o.parentNode;thisSound._360data={oUI360:self.getParentByClassName(o,'ui360'),oLink:o,className:self.css.sPlaying,oUIBox:self.getElementsByClassName('sm2-360ui','div',oContainer)[0],oCanvas:self.getElementsByClassName('sm2-canvas','canvas',oContainer)[0],oButton:self.getElementsByClassName('sm2-360btn','img',oContainer)[0],oTiming:self.getElementsByClassName('sm2-timing','div',oContainer)[0],oCover:self.getElementsByClassName('sm2-cover','div',oContainer)[0],lastTime:null,didFinish:null,pauseCount:0,radius:0,amplifier:(self.config.usePeakData?0.9:1),radiusMax:self.config.circleDiameter*0.175,width:0,widthMax:self.config.circleDiameter*0.4,lastValues:{bytesLoaded:0,bytesTotal:0,position:0,durationEstimate:0},animating:false,oAnim:new Animator({duration:self.config.animDuration,transition:self.config.animTransition,onComplete:function(){}}),oAnimProgress:function(nProgress){var thisSound=this;thisSound._360data.radius=parseInt(thisSound._360data.radiusMax*thisSound._360data.amplifier*nProgress);thisSound._360data.width=parseInt(thisSound._360data.widthMax*thisSound._360data.amplifier*nProgress);if(self.config.scaleFont&&self.config.fontSizeMax!=null){thisSound._360data.oTiming.style.fontSize=parseInt(Math.max(1,self.config.fontSizeMax*nProgress))+'px';thisSound._360data.oTiming.style.opacity=nProgress;}
if(thisSound.paused||thisSound.playState==0||thisSound._360data.lastValues.bytesLoaded==0||thisSound._360data.lastValues.position==0){self.updatePlaying.apply(thisSound);}},fps:0};if(typeof self.Metadata!='undefined'&&self.getElementsByClassName('metadata','div',thisSound._360data.oUI360).length){thisSound._360data.metadata=new self.Metadata(thisSound,self);}
thisSound._360data.oCover.style.width=self.config.circleDiameter+'px';thisSound._360data.oCover.style.height=self.config.circleDiameter+'px';if(self.config.scaleFont&&self.config.fontSizeMax!=null){thisSound._360data.oTiming.style.fontSize='1px';}
thisSound._360data.oAnim.addSubject(thisSound._360data.oAnimProgress,thisSound);self.refreshCoords(thisSound);self.updatePlaying.apply(thisSound);self.soundsByURL[soundURL]=thisSound;self.sounds.push(thisSound);if(self.lastSound){self.stopSound(self.lastSound);}
thisSound.play();}
self.lastSound=thisSound;if(typeof e!='undefined'&&typeof e.preventDefault!='undefined'){e.preventDefault();}else if(typeof event!='undefined'){event.returnValue=false;}
return false;}
this.fanOut=function(oSound){var thisSound=oSound;if(thisSound._360data.animating==1){return false;}
thisSound._360data.animating=0;soundManager._writeDebug('fanOut: '+thisSound.sID+': '+thisSound._360data.oLink.href);thisSound._360data.oAnim.seekTo(1);window.setTimeout(function(){thisSound._360data.animating=0;},self.config.animDuration+20);}
this.fanIn=function(oSound){var thisSound=oSound;if(thisSound._360data.animating==-1){return false;}
thisSound._360data.animating=-1;soundManager._writeDebug('fanIn: '+thisSound.sID+': '+thisSound._360data.oLink.href);thisSound._360data.oAnim.seekTo(0);window.setTimeout(function(){thisSound._360data.didFinish=false;thisSound._360data.animating=0;self.resetLastValues(thisSound);},self.config.animDuration+20);}
this.resetLastValues=function(oSound){var oData=oSound._360data;oData.lastValues.position=0;}
this.refreshCoords=function(thisSound){thisSound._360data.canvasXY=self.findXY(thisSound._360data.oCanvas);thisSound._360data.canvasMid=[self.config.circleRadius,self.config.circleRadius];thisSound._360data.canvasMidXY=[thisSound._360data.canvasXY[0]+thisSound._360data.canvasMid[0],thisSound._360data.canvasXY[1]+thisSound._360data.canvasMid[1]];}
this.stopSound=function(oSound){soundManager._writeDebug('stopSound: '+oSound.sID);soundManager.stop(oSound.sID);soundManager.unload(oSound.sID);}
this.buttonClick=function(e){var o=e?(e.target?e.target:e.srcElement):event.srcElement;self.handleClick({target:self.getParentByClassName(o,'sm2-360ui').nextSibling});return false;}
this.buttonMouseDown=function(e){document.onmousemove=function(e){self.mouseDown(e);}
self.stopEvent(e);return false;}
this.mouseDown=function(e){if(!self.lastSound){self.stopEvent(e);return false;}
var thisSound=self.lastSound;self.refreshCoords(thisSound);var oData=self.lastSound._360data;self.addClass(oData.oUIBox,'sm2_dragging');oData.pauseCount=(self.lastSound.paused?1:0);self.mmh(e?e:event);document.onmousemove=self.mmh;document.onmouseup=self.mouseUp;self.stopEvent(e);return false;}
this.mouseUp=function(e){var oData=self.lastSound._360data;self.removeClass(oData.oUIBox,'sm2_dragging');if(oData.pauseCount==0){self.lastSound.resume();}
document.onmousemove=null;document.onmouseup=null;}
var fullCircle=360;this.mmh=function(e){if(typeof e=='undefined'){var e=event;}
var oSound=self.lastSound;var coords=self.getMouseXY(e);var x=coords[0];var y=coords[1];var deltaX=x-oSound._360data.canvasMidXY[0];var deltaY=y-oSound._360data.canvasMidXY[1];var angle=Math.floor(fullCircle-(self.rad2deg(Math.atan2(deltaX,deltaY))+180));oSound.setPosition(oSound.durationEstimate*(angle/fullCircle));self.stopEvent(e);return false;}
this.drawSolidArc=function(oCanvas,color,radius,width,radians,startAngle,noClear){var x=radius;var y=radius;var canvas=oCanvas;if(canvas.getContext){var ctx=canvas.getContext('2d');}
var oCanvas=ctx;if(!noClear){self.clearCanvas(canvas);}
if(color){ctx.fillStyle=color;}else{}
oCanvas.beginPath();if(isNaN(radians)){radians=0;}
var innerRadius=radius-width;var doesntLikeZero=(isOpera||isSafari);if(!doesntLikeZero||(doesntLikeZero&&radius>0)){oCanvas.arc(0,0,radius,startAngle,radians,false);var endPoint=self.getArcEndpointCoords(innerRadius,radians);oCanvas.lineTo(endPoint.x,endPoint.y);oCanvas.arc(0,0,innerRadius,radians,startAngle,true);oCanvas.closePath();oCanvas.fill();}}
this.getArcEndpointCoords=function(radius,radians){return{x:radius*Math.cos(radians),y:radius*Math.sin(radians)};}
this.deg2rad=function(nDeg){return(nDeg*Math.PI/180);}
this.rad2deg=function(nRad){return(nRad*180/Math.PI);}
this.getTime=function(nMSec,bAsString){var nSec=Math.floor(nMSec/1000);var min=Math.floor(nSec/60);var sec=nSec-(min*60);return(bAsString?(min+':'+(sec<10?'0'+sec:sec)):{'min':min,'sec':sec});}
this.clearCanvas=function(oCanvas){var canvas=oCanvas;var ctx=null;if(canvas.getContext){ctx=canvas.getContext('2d');}
var width=canvas.offsetWidth;var height=canvas.offsetHeight;ctx.clearRect(-(width/2),-(height/2),width,height);}
var fullCircle=(isOpera||isChrome?359.9:360);this.updatePlaying=function(){if(this.bytesLoaded){this._360data.lastValues.bytesLoaded=this.bytesLoaded;this._360data.lastValues.bytesTotal=this.bytesTotal;}
if(this.position){this._360data.lastValues.position=this.position;}
if(this.durationEstimate){this._360data.lastValues.durationEstimate=this.durationEstimate;}
self.drawSolidArc(this._360data.oCanvas,self.config.backgroundRingColor,this._360data.width,this._360data.radius,self.deg2rad(fullCircle),false);self.drawSolidArc(this._360data.oCanvas,(this._360data.metadata?self.config.loadRingColorMetadata:self.config.loadRingColor),this._360data.width,this._360data.radius,self.deg2rad(fullCircle*(this._360data.lastValues.bytesLoaded/this._360data.lastValues.bytesTotal)),0,true);if(this._360data.lastValues.position!=0){self.drawSolidArc(this._360data.oCanvas,(this._360data.metadata?self.config.playRingColorMetadata:self.config.playRingColor),this._360data.width,this._360data.radius,self.deg2rad((this._360data.didFinish==1?fullCircle:fullCircle*(this._360data.lastValues.position/this._360data.lastValues.durationEstimate))),0,true);}
if(this._360data.metadata){this._360data.metadata.events.whileplaying();}
var timeNow=(self.config.showHMSTime?self.getTime(this.position,true):parseInt(this.position/1000));if(timeNow!=this._360data.lastTime){this._360data.lastTime=timeNow;this._360data.oTiming.innerHTML=timeNow;}
if(!isIE){self.updateWaveform(this);}
if(self.config.useFavIcon&&self.vuMeter){self.vuMeter.updateVU(this);}}
this.updateWaveform=function(oSound){if((!self.config.useWaveformData&&!self.config.useEQData)||(!sm.features.waveformData&&!sm.features.eqData)){return false;}
if(!oSound.waveformData.left.length&&!oSound.eqData.length&&!oSound.peakData.left){return false;}
var oCanvas=oSound._360data.oCanvas.getContext('2d');var offX=0;var offY=parseInt(self.config.circleDiameter/2);var scale=offY/2;var lineWidth=Math.floor(self.config.circleDiameter-(self.config.circleDiameter*0.175)/(self.config.circleDiameter/255));lineWidth=1;var lineHeight=1;var thisY=0;var offset=offY;if(self.config.useWaveformData){var downSample=self.config.waveformDataDownsample;downSample=Math.max(1,downSample);var dataLength=256;var sampleCount=(dataLength/downSample);var startAngle=0;var endAngle=0;var waveData=null;var innerRadius=(self.config.waveformDataOutside?1:(self.config.waveformDataConstrain?0.5:0.565));var scale=(self.config.waveformDataOutside?0.7:0.75);var perItemAngle=self.deg2rad((360/sampleCount)*self.config.waveformDataLineRatio);for(var i=0;i<dataLength;i+=downSample){startAngle=self.deg2rad(360*(i/(sampleCount)*1/downSample));endAngle=startAngle+perItemAngle;waveData=oSound.waveformData.left[i];if(waveData<0&&self.config.waveformDataConstrain){waveData=Math.abs(waveData);}
self.drawSolidArc(oSound._360data.oCanvas,self.config.waveformDataColor,oSound._360data.width*innerRadius,oSound._360data.radius*scale*1.25*waveData,endAngle,startAngle,true);}}
if(self.config.useEQData){var downSample=self.config.eqDataDownsample;var yDiff=0;downSample=Math.max(1,downSample);var eqSamples=192;var sampleCount=(eqSamples/downSample);var innerRadius=(self.config.eqDataOutside?1:0.565);var direction=(self.config.eqDataOutside?-1:1);var scale=(self.config.eqDataOutside?0.5:0.75);var startAngle=0;var endAngle=0;var perItemAngle=self.deg2rad((360/sampleCount)*self.config.eqDataLineRatio);var playedAngle=self.deg2rad((oSound._360data.didFinish==1?360:360*(oSound._360data.lastValues.position/oSound._360data.lastValues.durationEstimate)));var j=0;var iAvg=0;for(var i=0;i<eqSamples;i+=downSample){startAngle=self.deg2rad(360*(i/eqSamples));endAngle=startAngle+perItemAngle;self.drawSolidArc(oSound._360data.oCanvas,(endAngle>playedAngle?self.config.eqDataColor:self.config.playRingColor),oSound._360data.width*innerRadius,oSound._360data.radius*scale*(oSound.eqData.left[i]*direction),endAngle,startAngle,true);}}
if(self.config.usePeakData){if(!oSound._360data.animating){var nPeak=(oSound.peakData.left||oSound.peakData.right);var eqSamples=3;for(var i=0;i<eqSamples;i++){nPeak=(nPeak||oSound.eqData[i]);}
oSound._360data.amplifier=(self.config.useAmplifier?(0.9+(nPeak*0.1)):1);oSound._360data.radiusMax=self.config.circleDiameter*0.175*oSound._360data.amplifier;oSound._360data.widthMax=self.config.circleDiameter*0.4*oSound._360data.amplifier;oSound._360data.radius=parseInt(oSound._360data.radiusMax*oSound._360data.amplifier);oSound._360data.width=parseInt(oSound._360data.widthMax*oSound._360data.amplifier);}}}
this.updateWaveformOld=function(oSound){if((!self.config.useWaveformData&&!self.config.useEQData&&!self.config.usePeakData)||(!sm.features.waveformData&&!sm.features.eqData&&!sm.features.peakData)){return false;}
if(!oSound.waveformData.left.length&&!oSound.eqData.length&&!oSound.peakData.left.length){return false;}
var oCanvas=oSound._360data.oCanvas.getContext('2d');var offX=0;var offY=parseInt(self.config.circleDiameter*2/3);var scale=offY*1/3;var downSample=1;downSample=Math.max(1,downSample);var j=oSound.waveformData.left.length;var lineWidth=Math.max(1,((j*1/downSample)/self.config.circleDiameter));var lineHeight=scale*2.5;var thisY=0;var offset=offY;var rotateDeg=-90;oCanvas.rotate(self.deg2rad(rotateDeg*-1));oCanvas.translate(-self.config.circleRadius,-self.config.circleRadius);if(self.config.useWaveformData){for(var i=0;i<j;i+=downSample){thisY=offY+(oSound.waveformData.left[i]*scale);oCanvas.fillRect((i/j*(self.config.circleDiameter-lineWidth)+1),thisY,lineWidth,lineHeight);}}else{var offset=9;var yDiff=0;for(var i=0;i<128;i+=4){yDiff=oSound.eqData[i]*scale;oCanvas.fillRect(i/128*(self.config.circleDiameter-4),self.config.circleDiameter-yDiff,lineWidth*3,yDiff);}}
oCanvas.translate(self.config.circleRadius,self.config.circleRadius);oCanvas.rotate(self.deg2rad(rotateDeg));}
this.callbackCount=0;this.peakDataHistory=[];this.getUIHTML=function(){return['<canvas class="sm2-canvas" width="'+self.config.circleDiameter+'" height="'+self.config.circleDiameter+'"></canvas>',' <img src="'+self.config.imageRoot+'empty.gif" class="sm2-360btn sm2-360btn-default" style="border:none" />',' <div class="sm2-timing'+(navigator.userAgent.match(/safari/i)?' alignTweak':'')+'"></div>',' <div class="sm2-cover"></div>'];}
this.init=function(){var oItems=$$('div.ui360');var oLinks=[];for(var i=0,j=oItems.length;i<j;i++)
{oLinks.push(oItems[i].getElementsByTagName('a')[0]);oItems[i].style.backgroundImage='none';}
var foundItems=0;var oCanvas=null;var oCanvasCTX=null;var oCover=null;self.oUITemplate=document.createElement('div');self.oUITemplate.className='sm2-360ui';var oFakeUI=document.createElement('div');oFakeUI.className='ui360';var oFakeUIBox=oFakeUI.appendChild(self.oUITemplate.cloneNode(true));oFakeUI.style.position='absolute';oFakeUI.style.left='-9999px';var uiHTML=self.getUIHTML();oFakeUIBox.innerHTML=uiHTML[1]+uiHTML[2]+uiHTML[3];delete uiHTML;var oTemp=document.body.appendChild(oFakeUI);self.config.circleDiameter=parseInt(oFakeUIBox.offsetWidth);self.config.circleRadius=parseInt(self.config.circleDiameter/2);var oTiming=self.getElementsByClassName('sm2-timing','div',oTemp)[0];self.config.fontSizeMax=parseInt(self.getStyle(oTiming,'font-size'));if(isNaN(self.config.fontSizeMax))
{self.config.fontSizeMax=null;}
oFakeUI.parentNode.removeChild(oFakeUI);delete oFakeUI;delete oFakeUIBox;delete oTemp;self.oUITemplate.innerHTML=self.getUIHTML().join('');for(i=0,j=oLinks.length;i<j;i++)
{if(sm.canPlayLink(oLinks[i])&&!self.hasClass(oLinks[i],self.excludeClass))
{self.addClass(oLinks[i],self.css.sDefault);self.links[foundItems]=(oLinks[i]);self.indexByURL[oLinks[i].href]=foundItems;foundItems++;var oUI=oLinks[i].parentNode.insertBefore(self.oUITemplate.cloneNode(true),oLinks[i]);if(isIE&&typeof G_vmlCanvasManager!='undefined'){var o=oLinks[i].parentNode;var o2=document.createElement('canvas');o2.className='sm2-canvas';var oID='sm2_canvas_'+parseInt(Math.random()*1048576);o2.id=oID;o2.width=self.config.circleDiameter;o2.height=self.config.circleDiameter;oUI.appendChild(o2);G_vmlCanvasManager.initElement(o2);oCanvas=document.getElementById(oID);}else{oCanvas=oLinks[i].parentNode.getElementsByTagName('canvas')[0];}
oCover=self.getElementsByClassName('sm2-cover','div',oLinks[i].parentNode)[0];var oBtn=oLinks[i].parentNode.getElementsByTagName('img')[0];var oBtn=oLinks[i].parentNode.getElementsByTagName('img')[0];if(isIE)
self.addEventHandler(oBtn,'click',self.buttonClick);else
oBtn.observe('click',self.buttonClick);if(isIE)
self.addEventHandler(oCover,'mousedown',self.mouseDown);else
oCover.observe('mousedown',self.mouseDown);oCanvasCTX=oCanvas.getContext('2d');oCanvasCTX.translate(self.config.circleRadius,self.config.circleRadius);oCanvasCTX.rotate(self.deg2rad(-90));}}
if(self.config.autoPlay){self.handleClick({target:self.links[0],preventDefault:function(){}});}
sm._writeDebug('threeSixtyPlayer.init(): Found '+foundItems+' relevant items.');if(self.config.useFavIcon&&typeof this.VUMeter!='undefined'){this.vuMeter=new this.VUMeter(this);}}}
ThreeSixtyPlayer.prototype.VUMeter=function(oParent){var self=oParent;var me=this;this.vuMeterData=[];this.vuDataCanvas=null;var _head=document.getElementsByTagName('head')[0];var isOpera=(navigator.userAgent.match(/opera/i));var isFirefox=(navigator.userAgent.match(/firefox/i));this.setPageIcon=function(sDataURL){if(!self.config.useFavIcon||!self.config.usePeakData||!sDataURL){return false;}
var link=document.getElementById('sm2-favicon');if(link){_head.removeChild(link);link=null;}
if(!link){link=document.createElement('link');link.id='sm2-favicon';link.rel='shortcut icon';link.type='image/png';link.href=sDataURL;document.getElementsByTagName('head')[0].appendChild(link);}}
this.resetPageIcon=function(){if(!self.config.useFavIcon){return false;}
var link=document.getElementById('favicon');if(link){link.href='/favicon.ico';}}
this.updateVU=function(oSound){if(soundManager.flashVersion>=9&&self.config.useFavIcon&&self.config.usePeakData){me.setPageIcon(me.vuMeterData[parseInt(16*oSound.peakData.left)][parseInt(16*oSound.peakData.right)]);}}
this.createVUData=function(){var i=0;var j=0;var canvas=me.vuDataCanvas.getContext('2d');var vuGrad=canvas.createLinearGradient(0,16,0,0);vuGrad.addColorStop(0,'rgb(0,192,0)');vuGrad.addColorStop(0.30,'rgb(0,255,0)');vuGrad.addColorStop(0.625,'rgb(255,255,0)');vuGrad.addColorStop(0.85,'rgb(255,0,0)');var bgGrad=canvas.createLinearGradient(0,16,0,0);var outline='rgba(0,0,0,0.2)';bgGrad.addColorStop(0,outline);bgGrad.addColorStop(1,'rgba(0,0,0,0.5)');for(i=0;i<16;i++){me.vuMeterData[i]=[];}
for(var i=0;i<16;i++){for(j=0;j<16;j++){me.vuDataCanvas.setAttribute('width',16);me.vuDataCanvas.setAttribute('height',16);canvas.fillStyle=bgGrad;canvas.fillRect(0,0,7,15);canvas.fillRect(8,0,7,15);canvas.fillStyle=vuGrad;canvas.fillRect(0,15-i,7,16-(16-i));canvas.fillRect(8,15-j,7,16-(16-j));canvas.clearRect(0,3,16,1);canvas.clearRect(0,7,16,1);canvas.clearRect(0,11,16,1);me.vuMeterData[i][j]=me.vuDataCanvas.toDataURL('image/png');}}};this.testCanvas=function(noOpaque){var c=document.createElement('canvas');var ctx=null;if(!c||typeof c.getContext=='undefined'){return null;}
ctx=c.getContext('2d');if(!ctx||typeof c.toDataURL!='function'){return null;}
try{var ok=c.toDataURL('image/png');}catch(e){return null;}
return c;}
this.init=function(){if(self.config.useFavIcon){me.vuDataCanvas=me.testCanvas(true);if(me.vuDataCanvas&&(isFirefox||isOpera)){me.createVUData();}else{self.config.useFavIcon=false;}}}
this.init();}
ThreeSixtyPlayer.prototype.Metadata=function(oSound,oParent){soundManager._wD('Metadata()');var me=this;var oBox=oSound._360data.oUI360;var o=oBox.getElementsByTagName('ul')[0];var oItems=o.getElementsByTagName('li');var isFirefox=(navigator.userAgent.match(/firefox/i));this.lastWPExec=0;this.refreshInterval=250;var isAlt=false;this.events={whileplaying:function(){var width=oSound._360data.width;var radius=oSound._360data.radius;var fullDuration=(oSound.durationEstimate||(me.totalTime*1000));var isAlt=null;for(var i=0,j=me.data.length;i<j;i++){isAlt=(i%2==0);oParent.drawSolidArc(oSound._360data.oCanvas,(isAlt?oParent.config.segmentRingColorAlt:oParent.config.segmentRingColor),isAlt?width:width,isAlt?radius/2:radius/2,oParent.deg2rad(360*(me.data[i].endTimeMS/fullDuration)),oParent.deg2rad(360*((me.data[i].startTimeMS||1)/fullDuration)),true);}
var d=new Date();if(d-me.lastWPExec>me.refreshInterval){me.refresh();me.lastWPExec=d;}}}
this.refresh=function(){var index=null;var now=oSound.position;var metadata=oSound._360data.metadata.data;for(var i=0,j=metadata.length;i<j;i++){if(now>=metadata[i].startTimeMS&&now<=metadata[i].endTimeMS){index=i;break;}}
if(index!=metadata.currentItem&&index<metadata.length){oSound._360data.oLink.innerHTML=metadata.mainTitle+' <span class="metadata"><span class="sm2_divider"> | </span><span class="sm2_metadata">'+metadata[index].title+'</span></span>';metadata.currentItem=index;}}
this.totalTime=0;this.strToTime=function(sTime){var segments=sTime.split(':');var seconds=0;for(var i=segments.length;i--;){seconds+=parseInt(segments[i])*Math.pow(60,segments.length-1-i,10);}
return seconds;}
this.data=[];this.data.givenDuration=null;this.data.currentItem=null;this.data.mainTitle=oSound._360data.oLink.innerHTML;for(var i=0;i<oItems.length;i++){this.data[i]={o:null,title:oItems[i].getElementsByTagName('p')[0].innerHTML,startTime:oItems[i].getElementsByTagName('span')[0].innerHTML,startSeconds:me.strToTime(oItems[i].getElementsByTagName('span')[0].innerHTML.replace(/[()]/g,'')),duration:0,durationMS:null,startTimeMS:null,endTimeMS:null,oNote:null}}
var oDuration=oParent.getElementsByClassName('duration','div',oBox);this.data.givenDuration=(oDuration.length?me.strToTime(oDuration[0].innerHTML)*1000:0);for(i=0;i<this.data.length;i++){this.data[i].duration=parseInt(this.data[i+1]?this.data[i+1].startSeconds:(me.data.givenDuration?me.data.givenDuration:oSound.durationEstimate)/1000)-this.data[i].startSeconds;this.data[i].startTimeMS=this.data[i].startSeconds*1000;this.data[i].durationMS=this.data[i].duration*1000;this.data[i].endTimeMS=this.data[i].startTimeMS+this.data[i].durationMS;this.totalTime+=this.data[i].duration;}}
var threeSixtyPlayer=null;if(navigator.userAgent.match(/webkit/i)&&navigator.userAgent.match(/mobile/i)){soundManager.useHTML5Audio=true;}
soundManager.debugMode=false;soundManager.consoleOnly=false;soundManager.flashVersion=8;soundManager.useHighPerformance=true;soundManager.useFlashBlock=true;if(soundManager.debugMode){var t=window.setInterval(function(){if(threeSixtyPlayer&&threeSixtyPlayer.lastSound&&threeSixtyPlayer.lastSound._360data.fps&&typeof window.isHome==='undefined'){soundManager._writeDebug('fps: ~'+threeSixtyPlayer.lastSound._360data.fps);threeSixtyPlayer.lastSound._360data.fps=0;}},1000);}
threeSixtyPlayer=new ThreeSixtyPlayer();if(threeSixtyPlayer.config.useWaveformData){soundManager.flash9Options.useWaveformData=true;}
if(threeSixtyPlayer.config.useEQData){soundManager.flash9Options.useEQData=true;}
if(threeSixtyPlayer.config.usePeakData){soundManager.flash9Options.usePeakData=true;}
soundManager.onready(function(){if(soundManager.supported()){threeSixtyPlayer.init();}});
;Event.observe(window,'load',initGooglemap);document.observe('dom:loaded',init);document.observe('click',manageEventClick);var carouselNewsEvidenza;var carouselCommenti;function init()
{hs.graphicsDir='http://admin.abc.sm/class/js/highslide/graphics/';hs.outlineType='rounded-white';hs.align='center';hs.showCredits=false;if($('newsletter_nome')&&$('newsletter_cognome')&&$('newsletter_email'))
{$('newsletter_nome').observe('focus',manageEventFocus);$('newsletter_cognome').observe('focus',manageEventFocus);$('newsletter_email').observe('focus',manageEventFocus);}
if($('note_e_richieste'))
$('note_e_richieste').observe('focus',manageEventFocus);if($('emailLogin')&&$('passwordLogin')&&$('emailForgottenEmail'))
{$('emailLogin').observe('focus',manageEventFocus);$('passwordLogin').observe('focus',manageEventFocus);$('emailForgottenEmail').observe('focus',manageEventFocus);}
if($('emailRegistrati')&&$('passwordRegistrati')&&$('nicknameRegistrati'))
{$('emailRegistrati').observe('focus',manageEventFocus);$('passwordRegistrati').observe('focus',manageEventFocus);$('nicknameRegistrati').observe('focus',manageEventFocus);}
new PeriodicalExecuter(function(){var date=new Date();var hours=(date.getHours()<10)?'0'+date.getHours():date.getHours();var minutes=(date.getMinutes()<10)?'0'+date.getMinutes():date.getMinutes();var seconds=(date.getSeconds()<10)?'0'+date.getSeconds():date.getSeconds();$('timeHeader').update(hours+':'+minutes+':'+seconds);},1);if($('containerNewsEvidenza'))
{carouselNewsEvidenza=new Carousel('containerNewsEvidenza',$$('#containerNewsEvidenzaBatch .newsEvidenza'),null,{duration:0.5,auto:true,frequency:8,circular:true,wheel:false,effect:'scroll',transition:'sinoidal'});new PeriodicalExecuter(function(){updateNewsEvidenza();updateNewsGiorno();},300);}
if($('containerAltreNews'))
{if($$('#containerAltreNewsBatch .altreNews').size()>1)
new Carousel('containerAltreNews',$$('#containerAltreNewsBatch .altreNews'),null,{duration:1.0,auto:true,frequency:8,circular:true,wheel:false,effect:'scroll',transition:'sinoidal'});}
if($('iscr_email'))
$('iscr_email').observe('submit',manageEventSubmit);if($('formSondaggi'))
$('formSondaggi').observe('submit',manageEventSubmit);if($('loginCommenti'))
$('loginCommenti').observe('submit',manageEventSubmit);if($('forgottenEmailForm'))
$('forgottenEmailForm').observe('submit',manageEventSubmit);if($('registratiCommenti'))
$('registratiCommenti').observe('submit',manageEventSubmit);if($('registratiMedium'))
$('registratiMedium').observe('submit',manageEventSubmit);if($('sendCommenti'))
$('sendCommenti').observe('submit',manageEventSubmit);if($('formConcorso'))
$('formConcorso').observe('submit',manageEventSubmit);if($('formContatti'))
$('formContatti').observe('submit',manageEventSubmit);if($('formSegnalazioneNotizie'))
$('formSegnalazioneNotizie').observe('submit',manageEventSubmit);if($('formPubblicita'))
$('formPubblicita').observe('submit',manageEventSubmit);if($('commento'))
$('commento').observe('keyup',manageTextareaKeyup);if($('navigationListNews'))
{var moveLinkNews=new MoveLink('navigationListContainer','navigationListNews','linkPreviousNews','linkNextNews');}
if($('containerNewsTabBar'))
{var arrayLink=$('containerNewsTabBar').getElementsBySelector('ul li a');arrayLink.each(function(a){var aRelatedElementId=a.id.replace('Link','');a.relatedElement=$(aRelatedElementId);});}
if($('containerCommenti'))
{carouselCommenti=new Carousel('containerCommenti',$$('#contentCommenti .innerContainerCommenti'),$$('div.paginazioneCommenti a'),{offsetCommenti:0,duration:1.0,numberScrolling:1,wheel:false,effect:'scroll',transition:'sinoidal',beforeNext:function(carousel,direction)
{if(carousel.options.offsetCommenti==(carousel.slides.length-1))
{carousel.options.offsetCommenti++;var url=pathHttp+'web_services.php';var params=new Hash();params.set('action','fetch_commenti');params.set('id_news',idNews);params.set('limit','3');params.set('offset',carousel.options.offsetCommenti);new Ajax.Request(url,{asynchronous:false,method:'post',contentType:'application/x-www-form-urlencoded',parameters:params,onSuccess:function(transport)
{if(transport.responseText!='')
{var newDiv=document.createElement('div');carousel.scroller.firstDescendant().insert({bottom:newDiv});newDiv.className=carousel.slides[0].className;newDiv.innerHTML=transport.responseText;carousel.slides.push(newDiv);carousel.slides.each(function(slide,index){slide._index=index;});}}});}},beforePrevious:function(carousel,direction)
{if(carousel.options.offsetCommenti>0)
carousel.options.offsetCommenti--;}});}
if($('containerElencoAttivita'))
{var moveListEventi=new Move('containerElencoAttivita','batchElencoAttivita','attivita','paginazione',8,'');}
if($('datiAttivita'))
{hs.align='center';hs.transitions=['expand','crossfade'];hs.outlineType='rounded-white';hs.fadeInOut=true;hs.addSlideshow({slideshowGroup:'group1',interval:5000,repeat:false,useControls:true,fixedControls:'fit',overlayOptions:{opacity:.75,position:'bottom center',hideOnMouseOut:true}});}
if($('galleriaImmagini'))
{hs.align='center';hs.transitions=['expand','crossfade'];hs.outlineType='rounded-white';hs.fadeInOut=true;hs.addSlideshow({slideshowGroup:'galleriaImmaginiHS',interval:5000,repeat:false,useControls:true,fixedControls:'fit',overlayOptions:{opacity:.75,position:'bottom center',hideOnMouseOut:true}});}
if($('bannerDiretteStreaming'))
{var viewPortDimensions=document.viewport.getDimensions();var originLeft=Math.round(viewPortDimensions.width*30/100);$('bannerDiretteStreaming').setStyle({left:originLeft+'px'});var top=Math.round((viewPortDimensions.height/2)-($('bannerDiretteStreaming').getHeight()/2))+300;new Effect.Move('bannerDiretteStreaming',{x:0,y:top,duration:5.0,mode:'relative'});}
if($('flasherDiretteStreamingBox'))
{window.blinker=new blink('flasherDiretteStreamingBox',700);blinker.start();}
if($('flasherDiretteStreamingHeader'))
{window.blinker=new blink('flasherDiretteStreamingHeader',700);blinker.start();}}
function initGooglemap()
{if($('googlemapLarge'))
{var googlemap=new DisplayGooglemap('googlemapLarge','googlemapData');googlemap.setMarkerHTMLData('#containerElencoAttivita','.attivita .mapData','.attivita .linkMappa');}
if($('googlemapMedium'))
{var googlemap=new DisplayGooglemap('googlemapMedium','googlemapData');googlemap.setSingleMarkerHTMLData('googlemapData');}}
function manageEventClick(evt)
{var element=Event.element(evt);switch(element.tagName.toLowerCase())
{case'a':if(element.hasClassName('javaLink'))
{Event.stop(evt);location.href=pathHttp+element.rel;}
else if(element.hasClassName('linkNewsAudio360'))
{Event.stop(evt);threeSixtyPlayer.handleClick(evt);}
else if(element.hasClassName('displayerCommento'))
{Event.stop(evt);return hs.htmlExpand(element,{objectType:'ajax',width:420,height:485,preserveContent:false});}
else if(element.hasClassName('sondaggioPrecedente'))
{Event.stop(evt);var relatedDiv=element.ancestors()[0].next();if(relatedDiv.firstDescendant().innerHTML!='')
{Effect.toggle(relatedDiv,'blind');}
else
{var url=pathHttp+'web_services.php';var params=new Hash();params.set('action','sondaggio_precedente');params.set('id_sondaggio',element.rel);new Ajax.Updater(relatedDiv,url,{parameters:params,onComplete:function(){Effect.toggle(relatedDiv,'blind');}});}}
else if(element.hasClassName('concorsoPrecedente'))
{Event.stop(evt);var relatedElement=element.ancestors()[1].next();new Effect.toggle(relatedElement,'blind');}
else if(element.hasClassName('displayStaff'))
{Event.stop(evt);return hs.htmlExpand(element,{width:650,height:450,contentId:'staff_'+element.rel});}
if(element.id=='cancellazioneEmail')
{Event.stop(evt);$('prompt_email').innerHTML='<p>Se non vuoi pi&ugrave; ricevere messagi e desideri cancellarti dalla newsletter inserisci il tuo indirizzo email (vedi esempio sotto) es. nome@dominio.it</p>';$('prompt_email').innerHTML+='<input type="text" id="emaildel" class="modulo">&nbsp;<input type="button" id="button_email_delete" name="button" value="Cancellati" />';$('prompt_email').toggle();}
else if(element.id=='linkRadioStreaming')
{Event.stop(evt);window.open(element.href,'','width=400,height=180,scrollbars=no');}
else if(element.id=='linkWebTv')
{Event.stop(evt);window.open(element.href,'','width=400,height=350,scrollbars=no');}
else if(element.id=='linkContattiTelefonici')
{Event.stop(evt);var jsel=document.createElement('SCRIPT');jsel.type='text/javascript';jsel.src='http://admin.abc.sm/scripts/count_click_view_telefono.php?id_attivita='+element.rel+'&id_portale=2453';window.document.body.appendChild(jsel);if(!$('contattiTelefonici').visible())
{$('linkContattiTelefonici').hide();$('linkContattiTelefonici').previous(0).hide();Effect.BlindDown('contattiTelefonici');}}
else if(element.id=='containerNewsTabUltimeNewsLink'||element.id=='containerNewsTabAltreNewsLink'||element.id=='containerNewsTabNewsAziendeLink'||element.id=='containerNewsTabNewsAudioLink')
{Event.stop(evt);element.ancestors()[0].siblings().each(function(li){li.firstDescendant().removeClassName('selected');});element.addClassName('selected');var top=element.relatedElement.positionedOffset().top;$('contentNewsTabbed').setStyle({top:(-1*top)+'px'});}
else if(element.id=='displayPlayerVideo'||element.id=='displayPlayerVideoText')
{Event.stop(evt);return hs.htmlExpand(element,{contentId:'highslide-html'+element.rel});}
else if(element.id=='displayPlayerAudio')
{Event.stop(evt);Effect.toggle('playerScroller','blind',{afterFinish:function(){pagePlayer.handleClick({target:$$('a.playable')[0]});}});}
else if(element.id=='startConcorso')
{Event.stop(evt);submitFormConcorso();$('toolsCommenti').setStyle({minHeight:'400px',height:'400px'});element.remove();}
else if(element.id=='bannerDiretteStreamingChiudi')
{Event.stop(evt);$('bannerDiretteStreaming').remove();}
else if(element.id=='closeBrowserObsolete')
{$('browserObsolete').remove();}
else if(element.id=='forgottenEmail')
{Event.stop(evt);$('forgottenEmailContainer').toggle();}
else if(element.id=='regolamento')
{Event.stop(evt);return hs.htmlExpand(element,{objectType:'iframe',height:420});}
break;case'input':if(element.id=='button_email_delete')
{Event.stop(evt);var jsel2=document.createElement('script');jsel2.type='text/javascript';jsel2.src='http://www.abc.sm/newsletter/iscr_newsletter.php?id_attivita=1292&lang=ita&delete_email='+encodeURIComponent($F('emaildel'));window.document.body.appendChild(jsel2);}
if(element.id=='privacyEmail'||element.id=='privacyRegistrati')
{if(element.value=='')
element.value='1';else
element.value='';}
break;case'area':var rel=element.getAttribute('rel');switch(rel)
{case'scriptFontDown':Event.stop(evt);var actualFontSize=parseInt($$('#newsLarge .body')[0].getStyle('font-size'),10);if(actualFontSize>11)
$$('#newsLarge .body')[0].setStyle({fontSize:(actualFontSize-1)+'px'});break;case'scriptFontUp':Event.stop(evt);var actualFontSize=parseInt($$('#newsLarge .body')[0].getStyle('font-size'),10);if(actualFontSize<13)
$$('#newsLarge .body')[0].setStyle({fontSize:(actualFontSize+1)+'px'});break;case'scriptPrint':Event.stop(evt);window.print();break;case'sendToFriend':Event.stop(evt);return hs.htmlExpand(element,{objectType:'ajax',width:280,height:420,preserveContent:false});break;case'signalError':Event.stop(evt);return hs.htmlExpand(element,{objectType:'ajax',width:280,height:460,preserveContent:false});break;}
case'img':if(element.id=='ricercaAvanzataDataStart')
{displayCalendar($('dataStartAdvanced'),'dd/mm/yyyy',element);}
else if(element.id=='ricercaAvanzataDataEnd')
{displayCalendar($('dataEndAdvanced'),'dd/mm/yyyy',element);}
if(element.hasClassName('banner'))
{var rev=element.ancestors()[0].rev;if(rev!='')
{var data=rev.split('|');var idAttivita=data[0];var tipologia=data[1];conta(idAttivita,tipologia);}}
if(element.up(0).hasClassName('javaLink')){Event.stop(evt);location.href=pathHttp+element.up(0).rel;}
break;break;}}
function manageEventFocus(evt)
{var element=Event.element(evt);if(element.hasClassName('default'))
{element.removeClassName('default');Form.Element.clear(element);}}
function manageEventSubmit(evt)
{var element=Event.element(evt);Event.stop(evt);switch(element.id)
{case'iscr_email':loading_email();iscriviti_email();return false;break;case'formSondaggi':var radio=$RF(element,'domande');if(null==radio)
alert('selezionare un\'opzione del sondaggio!');else
element.request({onSuccess:function(transport){element.update(transport.responseText);}});break;case'loginCommenti':submitFormLoginCommenti(element);break;case'forgottenEmailForm':submitFormForgottenEmail(element);break;case'registratiCommenti':submitFormRegistratiCommenti(element);break;case'registratiMedium':submitFormRegistratiMedium(element);break;case'sendCommenti':submitFormSendCommenti(element);break;case'formConcorso':submitFormConcorso();break;case'formContatti':submitFormContatti();break;case'formSegnalazioneNotizie':submitFormSegnalazioneNotizie();break;case'formPubblicita':submitFormPubblicita();break;}}
function manageTextareaKeyup(evt)
{var element=Event.element(evt);var numberCharacter=element.value.length;if(numberCharacter>2000)
$('caratteriCommento').addClassName('txtRed');else
$('caratteriCommento').className='';$('caratteriCommento').update(numberCharacter);}
function loading_email()
{$('loading_email').toggle();if($('button_iscrizione_newsletter').getStyle('visibility')=='visible')
$('button_iscrizione_newsletter').setStyle({visibility:'hidden'});else
$('button_iscrizione_newsletter').setStyle({visibility:'visible'});}
function setquerystring_email(form)
{var querystring='';var numberElement=form.elements.length;if(form.elements.email.className.indexOf('default')!=-1)
{alert('Inserire un indirizzo email');loading_email();return false;}
if(form.elements.nome.className.indexOf('default')!=-1)
{form.elements.nome.value='';}
if(form.elements.cognome.className.indexOf('default')!=-1)
{form.elements.cognome.value='';}
for(var i=0;i<numberElement;i++)
{if(i<numberElement-1)
querystring+=form.elements[i].name+"="+encodeURIComponent(form.elements[i].value)+"&";else
querystring+=form.elements[i].name+"="+encodeURIComponent(form.elements[i].value);}
return querystring;}
function iscriviti_email()
{var qstring=setquerystring_email(document.iscr_email);if(qstring!=false)
{var jsel=document.createElement('script');jsel.type='text/javascript';jsel.src='http://www.abc.sm/newsletter/iscr_newsletter.php?'+qstring;window.document.body.appendChild(jsel);}}
function $RF(el,radioGroup)
{if($(el).type&&$(el).type.toLowerCase()=='radio')
{var radioGroup=$(el).name;var el=$(el).form;}
else if($(el).tagName.toLowerCase()!='form')
return false;var checked=$(el).getInputs('radio',radioGroup).find(function(re){return re.checked;});return(checked)?$F(checked):null;}
function submitFormSendFriend(form)
{try
{var error=validateFormSendFriend(form);if(error)
{$('popupBoxMessages').update(error);}
else
{Element.extend(form);form.request({onSuccess:function(transport){$('popupBoxMessages').update(transport.responseText);if(transport.responseText.indexOf('ERRORE!')==-1)
window.setTimeout("hs.close()",1500);}});}}
catch(e)
{alert('Errore nell\'invio del form! '+e);return false;}}
function validateFormSendFriend(form)
{var d=form
var titleError="<span class=\"errorTitle\">ERRORE! Impossibile inviare la mail!</span><br /><br />"
var error=false;if(d.senderEmail.value)
{if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(d.senderEmail.value)))
{error=true;titleError+="L'indirizzo e-mail del mittente non è valido.<br />"}}
else
{error=true;titleError+="Inserire l'indirizzo e-mail del mittente.<br />"}
if(!d.senderName.value)
{error=true;titleError+="Inserire il nome del mittente.<br />"}
if(d.recipientEmail.value)
{if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(d.recipientEmail.value)))
{error=true;titleError+="L'indirizzo e-mail del destinatario non è valido.<br />"}}
else
{error=true;titleError+="Inserire l'indirizzo e-mail del destinatario.<br />"}
if(!d.recipientName.value)
{error=true;titleError+="Inserire il nome del destinatario.<br />"}
if(!d.captcha.value)
{error=true;titleError+="Inserire il codice visualizzato."}
if(!error)
return error;else
return'<span class="txtRed">'+titleError+'</span>';}
function submitFormSignalError(form)
{try
{var error=validateFormSignalError(form);if(error)
{$('popupBoxMessages').update(error);}
else
{Element.extend(form);form.request({onSuccess:function(transport){$('popupBoxMessages').update(transport.responseText);if(transport.responseText.indexOf('ERRORE!')==-1)
window.setTimeout("hs.close()",1500);}});}}
catch(e)
{alert('Errore nell\'invio del form! '+e);return false;}}
function validateFormSignalError(form)
{var d=form
var titleError="<span class=\"errorTitle\">ERRORE! Impossibile inviare la mail!</span><br /><br />"
var error=false;if(d.senderEmail.value)
{if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(d.senderEmail.value)))
{error=true;titleError+="L'indirizzo e-mail del mittente non è valido.<br />"}}
else
{error=true;titleError+="Inserire l'indirizzo e-mail del mittente.<br />"}
if(!d.senderName.value)
{error=true;titleError+="Inserire il nome del mittente.<br />"}
if(!d.correctionText.value)
{error=true;titleError+="Inserire il testo della correzione.<br />"}
if(!d.captcha.value)
{error=true;titleError+="Inserire il codice visualizzato."}
if(!error)
return error;else
return'<span class="txtRed">'+titleError+'</span>';}
function submitFormRegistratiMedium(form)
{try
{var error=validateFormRegistratiCommenti(form);if(error)
{$('registratiMessages').update(error);}
else
{$('loadingRegistratiMessages').toggle();form.request({evalJSON:true,onSuccess:function(transport){var EsistenzaJSON=false;for(pippo in transport.responseJSON)
{EsistenzaJSON=true;break;}
if(EsistenzaJSON)
{$('loadingRegistratiMessages').toggle();var json=transport.responseJSON;if(json.rewrite==1)
{$('registratiMedium').hide();var message=new Element('div',{'class':'messages'});$('centerMedium').insert({bottom:message});message.update(json.message);}
else
{$('registratiMessages').update(json.message);}}}});}}
catch(e)
{alert('Errore nell\'invio del form! '+e);}}
function submitFormRegistratiCommenti(form)
{try
{var error=validateFormRegistratiCommenti(form);if(error)
{$('registratiMessages').update(error);}
else
{$('loadingRegistratiMessages').toggle();form.request({evalJSON:true,onSuccess:function(transport){var EsistenzaJSON=false;for(pippo in transport.responseJSON)
{EsistenzaJSON=true;break;}
if(EsistenzaJSON)
{$('loadingRegistratiMessages').toggle();var json=transport.responseJSON;if(json.rewrite==1)
{$('registratiCommenti').hide();var message=new Element('div',{'class':'messages'});$('toolsCommenti').insert({bottom:message});message.update(json.message);}
else
{$('registratiMessages').update(json.message);}}}});}}
catch(e)
{alert('Errore nell\'invio del form! '+e);}}
function validateFormRegistratiCommenti(form)
{var d=form
var titleError="<span class=\"errorTitle\">ERRORE! Impossibile eseguire la registrazione!</span><br /><br />"
var error=false;if(d.emailRegistrati.value&&!d.emailRegistrati.hasClassName('default'))
{if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(d.emailRegistrati.value)))
{error=true;titleError+="L'indirizzo e-mail non è valido.<br />"}}
else if(!d.emailRegistrati.value||d.emailRegistrati.hasClassName('default'))
{error=true;titleError+="Inserire l'indirizzo e-mail.<br />"}
if(!d.passwordRegistrati.value||d.passwordRegistrati.hasClassName('default'))
{error=true;titleError+="Inserire una password.<br />"}
if(!d.nicknameRegistrati.value||d.nicknameRegistrati.hasClassName('default'))
{error=true;titleError+="Inserire un nome da visualizzare.<br />"}
if(!d.newsletterRegistrati.checked)
{error=true;titleError+="Occorre accettare di iscriversi alla Newsletter."}
if(!d.privacyRegistrati.checked)
{error=true;titleError+="Occorre accettare la normativa sulla Privacy."}
if(!error)
return error;else
return'<span class="txtRed">'+titleError+'</span>';}
function submitFormLoginCommenti(form)
{try
{var error=validateFormLoginCommenti(form);if(error)
{$('loginMessages').update(error);}
else
{$('loadingLoginMessages').toggle();form.request({evalJSON:true,onSuccess:function(transport){var EsistenzaJSON=false;for(pippo in transport.responseJSON)
{EsistenzaJSON=true;break;}
if(EsistenzaJSON)
{$('loadingLoginMessages').toggle();var json=transport.responseJSON;if(json.rewrite==1)
{$('toolsCommenti').update(json.message);if($('LoginReferer'))
window.location=$('LoginReferer').innerHTML;if($('sendCommenti'))
$('sendCommenti').observe('submit',manageEventSubmit);if($('commento'))
$('commento').observe('keyup',manageTextareaKeyup);}
else
{$('loginMessages').update(json.message);}}}});}}
catch(e)
{alert('Errore nell\'invio del form! '+e);}}
function validateFormLoginCommenti(form)
{var d=form
var titleError="<span class=\"errorTitle\">ERRORE! Impossibile eseguire il login!</span><br /><br />"
var error=false;if(d.emailLogin.value&&!d.emailLogin.hasClassName('default'))
{if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(d.emailLogin.value)))
{error=true;titleError+="L'indirizzo e-mail non è valido.<br />"}}
else if(!d.emailLogin.value||d.emailLogin.hasClassName('default'))
{error=true;titleError+="Inserire l'indirizzo e-mail.<br />"}
if(!d.passwordLogin.value||d.passwordLogin.hasClassName('default'))
{error=true;titleError+="Inserire la password.<br />"}
if(!error)
return error;else
return'<span class="txtRed">'+titleError+'</span>';}
function submitFormForgottenEmail(form)
{try
{var error=validateFormForgottenEmail(form);if(error)
{$('loginMessages').update(error);}
else
{$('loadingLoginMessages').toggle();form.request({evalJSON:true,onSuccess:function(transport){var EsistenzaJSON=false;for(pippo in transport.responseJSON)
{EsistenzaJSON=true;break;}
if(EsistenzaJSON)
{$('loadingLoginMessages').toggle();$('forgottenEmailContainer').toggle();var json=transport.responseJSON;$('loginMessages').update(json.message);}}});}}
catch(e)
{alert('Errore nell\'invio del form! '+e);}}
function validateFormForgottenEmail(form)
{var d=form
var titleError="<span class=\"errorTitle\">ERRORE! Impossibile inviare la mail!</span><br /><br />"
var error=false;if(d.emailForgottenEmail.value&&!d.emailForgottenEmail.hasClassName('default'))
{if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(d.emailForgottenEmail.value)))
{error=true;titleError+="L'indirizzo e-mail non è valido.<br />"}}
else if(!d.emailForgottenEmail.value||d.emailForgottenEmail.hasClassName('default'))
{error=true;titleError+="Inserire l'indirizzo e-mail.<br />"}
if(!error)
return error;else
return'<span class="txtRed">'+titleError+'</span>';}
function submitFormSendCommenti(form)
{try
{var error=validateFormSendCommenti(form);if(error)
{$('sendMessages').update(error);}
else
{$('loadingSendMessages').toggle();form.request({evalJSON:true,onSuccess:function(transport){var EsistenzaJSON=false;for(pippo in transport.responseJSON)
{EsistenzaJSON=true;break;}
if(EsistenzaJSON)
{$('loadingSendMessages').toggle();var json=transport.responseJSON;$('sendMessages').update(json.message);if(json.rewrite==1)
{if(json.numero_commenti)
$('numeroCommenti').update(json.numero_commenti);if(json.commenti)
{$('contentCommenti').update(json.commenti);carouselCommenti.scroller.scrollLeft=0;carouselCommenti.scroller.scrollTop=0;carouselCommenti.slides=$$('#contentCommenti .innerContainerCommenti');carouselCommenti.slides.each(function(slide,index){slide._index=index;});}
window.setTimeout("$('commento').clear(); $('sendMessages').update('');",1500);}}}});}}
catch(e)
{alert('Errore nell\'invio del form! '+e);}}
function validateFormSendCommenti(form)
{var d=form
var titleError="<span class=\"errorTitle\">ERRORE! Impossibile inviare il commento!</span><br /><br />"
var error=false;if(!d.commento.value)
{error=true;titleError+="Scrivere un commento.<br />"}
if(d.commento.value.length>2000)
{error=true;titleError+="Non si pu&ograve; usare pi&ugrave; di 2000 caratteri.<br />"}
if(!error)
return error;else
return'<span class="txtRed">'+titleError+'</span>';}
function submitFormConcorso()
{$('formConcorso').request({evalJSON:true,onSuccess:function(transport){var EsistenzaJSON=false;for(pippo in transport.responseJSON)
{EsistenzaJSON=true;break;}
if(EsistenzaJSON)
{var json=transport.responseJSON;$('concorsoChecker').value=json.checker;if($('concorsoDomanda').visible())
{new Effect.Fade($('concorsoDomanda'),{afterFinish:function(){$('concorsoDomanda').firstDescendant().innerHTML=json.domanda;new Effect.Appear($('concorsoDomanda'));}});}
else
{$('concorsoDomanda').firstDescendant().innerHTML=json.domanda;new Effect.Appear($('concorsoDomanda'));}}}});}
function submitFormContatti()
{var form=$('formContatti');try
{myValidator=validateFormContatti(form);if(myValidator)
form.submit();}
catch(e)
{alert('Errore nell\'invio del form! '.e);return false;}}
function validateFormContatti(frm)
{var errFlag=new Array();var _qfMsg='';if(''==$('nome').value)
{errFlag['errore_nome']=true;_qfMsg=_qfMsg+"\n "+$('errore_nome').value;}
if(''==$('contatto').value)
{errFlag['errore_contatto_azienda']=true;_qfMsg=_qfMsg+"\n "+$('errore_contatto_azienda').value;}
if(''==$('citta').value)
{errFlag['errore_citta']=true;_qfMsg=_qfMsg+"\n "+$('errore_citta').value;}
if(''==$('telefono').value)
{errFlag['errore_telefono']=true;_qfMsg=_qfMsg+"\n "+$('errore_telefono').value;}
if(''==$('email').value)
{errFlag['errore_email']=true;_qfMsg=_qfMsg+"\n "+$('errore_email').value;}
if(''!=$('email').value)
{if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test($('email').value)))
{errFlag['errore_formato_email']=true;_qfMsg=_qfMsg+"\n "+$('errore_formato_email').value;}}
if(''==$('richiesta').value)
{errFlag['errore_richiesta']=true;_qfMsg=_qfMsg+"\n "+$('errore_richiesta').value;}
if(''==$('captcha').value)
{errFlag['errore_captcha']=true;_qfMsg=_qfMsg+"\n "+$('errore_captcha').value;}
if(false==$('privacy').checked)
{errFlag['errore_privacy']=true;_qfMsg=_qfMsg+"\n "+$('errore_privacy').value;}
if(_qfMsg!='')
{_qfMsg=$('intestazione_errore').value+_qfMsg;alert(_qfMsg);return false;}
return true;}
function submitFormSegnalazioneNotizie()
{var form=$('formSegnalazioneNotizie');try
{myValidator=validateFormSegnalazioneNotizie(form);if(myValidator)
form.submit();}
catch(e)
{alert('Errore nell\'invio del form! '.e);return false;}}
function validateFormSegnalazioneNotizie(frm)
{var errFlag=new Array();var _qfMsg='';if(''==$('nome_cognome').value)
{errFlag['errore_nome']=true;_qfMsg=_qfMsg+"\n "+$('errore_nome').value;}
if(''==$('email').value)
{errFlag['errore_email']=true;_qfMsg=_qfMsg+"\n "+$('errore_email').value;}
if(''!=$('email').value)
{if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test($('email').value)))
{errFlag['errore_formato_email']=true;_qfMsg=_qfMsg+"\n "+$('errore_formato_email').value;}}
if(''==$('segnala_notizia').value)
{errFlag['errore_notizia']=true;_qfMsg=_qfMsg+"\n "+$('errore_notizia').value;}
if(''==$('captcha').value)
{errFlag['errore_captcha']=true;_qfMsg=_qfMsg+"\n "+$('errore_captcha').value;}
if(false==$('privacy').checked)
{errFlag['errore_privacy']=true;_qfMsg=_qfMsg+"\n "+$('errore_privacy').value;}
if(_qfMsg!='')
{_qfMsg=$('intestazione_errore').value+_qfMsg;alert(_qfMsg);return false;}
return true;}
function submitFormPubblicita()
{var form=$('formPubblicita');try
{myValidator=validateFormPubblicita(form);if(myValidator)
form.submit();}
catch(e)
{alert('Errore nell\'invio del form! '.e);return false;}}
function validateFormPubblicita(frm)
{var errFlag=new Array();var _qfMsg='';if(''==$('nome').value)
{errFlag['errore_nome']=true;_qfMsg=_qfMsg+"\n "+$('errore_nome').value;}
if(''==$('contatto').value)
{errFlag['errore_contatto_azienda']=true;_qfMsg=_qfMsg+"\n "+$('errore_contatto_azienda').value;}
if(''==$('citta').value)
{errFlag['errore_citta']=true;_qfMsg=_qfMsg+"\n "+$('errore_citta').value;}
if(''==$('telefono').value)
{errFlag['errore_telefono']=true;_qfMsg=_qfMsg+"\n "+$('errore_telefono').value;}
if(''==$('email').value)
{errFlag['errore_email']=true;_qfMsg=_qfMsg+"\n "+$('errore_email').value;}
if(''!=$('email').value)
{if(!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test($('email').value)))
{errFlag['errore_formato_email']=true;_qfMsg=_qfMsg+"\n "+$('errore_formato_email').value;}}
if(''==$('settore')[$('settore').selectedIndex].value)
{errFlag['errore_tipologia']=true;_qfMsg=_qfMsg+"\n "+$('errore_tipologia').value;}
if(''==$('informazioni_aggiuntive').value)
{errFlag['errore_richiesta']=true;_qfMsg=_qfMsg+"\n "+$('errore_richiesta').value;}
if(''==$('captcha').value)
{errFlag['errore_captcha']=true;_qfMsg=_qfMsg+"\n "+$('errore_captcha').value;}
if(false==$('privacy').checked)
{errFlag['errore_privacy']=true;_qfMsg=_qfMsg+"\n "+$('errore_privacy').value;}
if(_qfMsg!='')
{_qfMsg=$('intestazione_errore').value+_qfMsg;alert(_qfMsg);return false;}
return true;}
function updateNewsEvidenza()
{carouselNewsEvidenza.stop();var darkLayer=createDarkLayer('containerNewsEvidenza','left');var url=pathHttp+'web_services.php';var params=new Hash();params.set('action','fetch_updated_news_evidenza');new Ajax.Request(url,{method:'post',contentType:'application/x-www-form-urlencoded',parameters:params,onSuccess:function(transport){$('containerNewsEvidenzaBatch').update(transport.responseText);carouselNewsEvidenza=new Carousel('containerNewsEvidenza',$$('#containerNewsEvidenzaBatch .newsEvidenza'),null,{duration:0.5,auto:true,frequency:5,circular:true,wheel:false,effect:'scroll',transition:'sinoidal'});darkLayer.remove();}});}
function updateNewsGiorno()
{var darkLayer=createDarkLayer('containerNewsGiorno','right');var url=pathHttp+'web_services.php';var params=new Hash();params.set('action','fetch_updated_news_giorno');new Ajax.Request(url,{method:'post',contentType:'application/x-www-form-urlencoded',parameters:params,onSuccess:function(transport){$('containerNewsGiorno').update(transport.responseText);darkLayer.remove();}});}
function createDarkLayer(parent,position)
{var parentElement=$(parent);var dimensions=parentElement.getDimensions();var divPaddingTop=Math.round((dimensions.height-70)/2);darkLayer=document.createElement('div');parentElement.appendChild(darkLayer);Element.extend(darkLayer);darkLayer.className='darkLayer txtBlue';with(darkLayer.style)
{left=((position=='left')?dimensions.width:'0')+'px';width=dimensions.width+'px';height=(dimensions.height-divPaddingTop)+'px';paddingTop=divPaddingTop+'px';}
darkLayer.style.left=((position=='left')?dimensions.width:'0')+'px';darkLayer.innerHTML='<img src="'+pathHttp+'immagini/loading.gif" title="News in aggiornamento!" /><br />News in aggiornamento!';return darkLayer;}
function conta(id_attivita,tipologia)
{var jsel=document.createElement('SCRIPT');jsel.type='text/javascript';jsel.src='http://admin.abc.sm/register_visit.php?id_attivita='+id_attivita+'&tipologia='+tipologia+'&no_cache='+(Math.random()*1000);window.document.body.appendChild(jsel);}
function conta_site(id_attivita){var jsel=document.createElement('SCRIPT');jsel.type='text/javascript';jsel.src='http://admin.abc.sm/scripts/count_click_link_to_site.php?id_attivita='+id_attivita+'&id_portale=2453&no_cache='+(Math.random()*1000);window.document.body.appendChild(jsel);}
function countredirect()
{if(currentsecond!=1)
{currentsecond-=1;document.redirect.redirect2.value=currentsecond;}
else
{window.location=targetURL;return;}
setTimeout("countredirect()",1000);}
var MoveLink=Class.create({initialize:function(scrollerLinkContainerDiv,scrollerLinkContainerUl,moveLeftAnchor,moveRightAnchor){this.scrollerLinkContainerDiv=$(''+scrollerLinkContainerDiv+'');this.scrollerLinkContainerUl=$(''+scrollerLinkContainerUl+'');this.scrollerLinkContainerDivWidth=this.scrollerLinkContainerDiv.getWidth();this.scrollerLinkContainerUlWidth=this.scrollerLinkContainerUl.getWidth();this.scrollerLinkContainerUlPositionedOffset=this.scrollerLinkContainerUl.positionedOffset().left;this.moveLeftAnchor=$(''+moveLeftAnchor+'');this.moveLeftAnchor.observe('mousedown',this.moveLeft.bind(this));this.moveLeftAnchor.observe('mouseup',this.stopMovingLeft.bind(this));this.moveLeftAnchor.observe('click',function(evt){Event.stop(evt);});this.moveRightAnchor=$(''+moveRightAnchor+'');this.moveRightAnchor.observe('mousedown',this.moveRight.bind(this));this.moveRightAnchor.observe('mouseup',this.stopMovingRight.bind(this));this.moveRightAnchor.observe('click',function(evt){Event.stop(evt);});this.containerCenter=Math.round(this.scrollerLinkContainerDiv.getWidth()/2);this.interval=null;this.setUlCenter();},moveLeft:function(evt){if(this.interval==null)
this.interval=setInterval(this.moveAbsoluteLeft.bind(this),100);},stopMovingLeft:function(evt){clearInterval(this.interval);this.interval=null;},moveRight:function(evt){if(this.interval==null)
this.interval=setInterval(this.moveAbsoluteRight.bind(this),100);},stopMovingRight:function(evt){clearInterval(this.interval);this.interval=null;},moveAbsoluteLeft:function(){var movement=(this.scrollerLinkContainerUlPositionedOffset+40);if(movement>0)
movement=0;this.moveAbsolute(movement);},moveAbsoluteRight:function(){var movement=(this.scrollerLinkContainerUlPositionedOffset-40);this.moveAbsolute(movement);},moveAbsolute:function(movement){if(movement<=0)
{if((Math.abs(movement)+this.scrollerLinkContainerDivWidth)<this.scrollerLinkContainerUlWidth)
this.scrollerLinkContainerUl.setStyle({left:movement+'px'});else
this.scrollerLinkContainerUl.setStyle({left:(this.scrollerLinkContainerDivWidth-this.scrollerLinkContainerUlWidth)+'px'});this.scrollerLinkContainerUlPositionedOffset=movement;}},setUlCenter:function(){var arrayLink=this.scrollerLinkContainerUl.getElementsBySelector('li');var liActive=arrayLink.find(function(li){if(li.hasClassName('active'))return li;});var liActivePosition=liActive.positionedOffset().left;var movement=this.containerCenter-liActivePosition;this.moveAbsolute(movement);}});var Move=Class.create({initialize:function(scroller_hotelDiv,batchDiv,itemClass,pagerDiv,numberVisible,idExtension){this.scroller_hotelDiv=$(''+scroller_hotelDiv+'');this.batchDivName=batchDiv;this.batchDiv;this.itemClass=itemClass;this.pagerDiv=$(''+pagerDiv+'');this.numberVisible=numberVisible;this.idExtension=idExtension;this.scroller_hotelDivHeight=this.scroller_hotelDiv.getHeight();var calcItem=$$('.'+itemClass)[0];if(calcItem)
{this.itemHeight=calcItem.getHeight();if(!isNaN(parseInt(calcItem.getStyle('margin-bottom'),10)))
{this.itemHeight+=parseInt(calcItem.getStyle('margin-bottom'),10);}}
this.arrayAbsoluteMovementLinks=new Array();this.reset();},moveAbsolute:function(batchDivNumber){if(((batchDivNumber)<0)||((batchDivNumber)>this.numberBatch))
{return;}
if(batchDivNumber==(this.numberBatch))
{var numberRemainingHotel=((this.numberHotel%this.numberVisible)>0)?(this.numberHotel%this.numberVisible):this.numberVisible;this.scroller_hotelDiv.style.height=(this.itemHeight*numberRemainingHotel)+"px";}
else
{this.scroller_hotelDiv.style.height=this.scroller_hotelDivHeight+"px";}
this.batchDiv.style.top='-'+(this.scroller_hotelDivHeight*(batchDivNumber))+'px';var arrayLi=$$('#navigationList'+this.idExtension+' li.linkMovement');arrayLi[this.currentBatch].removeClassName('active');arrayLi[batchDivNumber].addClassName('active');if(batchDivNumber>this.currentBatch)
{if(batchDivNumber>4)
{var spostamento=Math.abs(batchDivNumber-this.currentBatch);for(i=1;i<=spostamento;i++)
{if((this.lastVisible+1)>this.numberBatch)
{break;}
if(this.lastVisible>batchDivNumber+3)
{break;}
arrayLi[this.firstVisible].style.display='none';this.firstVisible+=1;this.lastVisible+=1;arrayLi[this.lastVisible].style.display='inline';}}}
if(batchDivNumber<this.currentBatch)
{if(batchDivNumber<this.numberBatch-4)
{var spostamento=Math.abs(batchDivNumber-this.currentBatch);for(i=1;i<=spostamento;i++)
{if((this.firstVisible-1)<0)
{break;}
if(this.firstVisible<batchDivNumber-3)
{break;}
arrayLi[this.lastVisible].style.display='none';this.lastVisible-=1;this.firstVisible-=1;arrayLi[this.firstVisible].style.display='inline';arrayLi[this.firstVisible+1].addClassName('borderLeft');}}}
$('dots_before'+this.idExtension).style.visibility='hidden';if(this.firstVisible>0)
{$('dots_before'+this.idExtension).style.visibility='visible';}
$('dots_after'+this.idExtension).style.visibility='visible';if(this.lastVisible==this.numberBatch)
{$('dots_after'+this.idExtension).style.visibility='hidden';}
arrayLi[this.firstVisible].removeClassName('borderLeft');this.currentBatch=batchDivNumber;if(this.currentBatch>0)
{$('divPrevious'+this.idExtension).addClassName('active');$('linkPrevious'+this.idExtension).addClassName('active');}
else
{$('divPrevious'+this.idExtension).removeClassName('active');$('linkPrevious'+this.idExtension).className='';}
if(this.currentBatch==this.numberBatch)
{$('divNext'+this.idExtension).removeClassName('active');$('linkNext'+this.idExtension).className='';}
else
{$('divNext'+this.idExtension).addClassName('active');$('linkNext'+this.idExtension).addClassName('active');}
this.scroller_hotelDiv.scrollTo();},movePrevious:function(evt){Event.stop(evt);this.moveAbsolute(this.currentBatch-1);},moveNext:function(evt){Event.stop(evt);this.moveAbsolute(this.currentBatch+1);},moveElement:function(evt){Event.stop(evt);var element=Event.element(evt);this.moveAbsolute(parseInt(element.rel,10));},linkEventAbsoluteMovementLinks:function(){Event.observe('linkPrevious'+this.idExtension,'click',this.movePrevious.bind(this));Event.observe('linkNext'+this.idExtension,'click',this.moveNext.bind(this));var aArray=$$('#'+this.pagerDiv.id+' a');for(i=1;i<(aArray.size()-1);i++)
{this.arrayAbsoluteMovementLinks.push(aArray[i]);Event.observe(aArray[i],'click',this.moveElement.bind(this));}},unlinkEventAbsoluteMovementLinks:function(){Event.stopObserving('linkPrevious'+this.idExtension);Event.stopObserving('linkNext'+this.idExtension);if(this.arrayAbsoluteMovementLinks.size()>0)
{this.arrayAbsoluteMovementLinks.each(function(a){a.stopObserving();});this.arrayAbsoluteMovementLinks.clear();}},reset:function(){this.batchDiv=$(''+this.batchDivName+'');this.numberHotel=$$('#'+this.batchDivName+' .'+this.itemClass).size();this.numberBatch=parseInt(this.numberHotel/this.numberVisible)+(((this.numberHotel%this.numberVisible)>0)?1:0)-1;this.currentBatch=0;this.firstVisible=0;this.lastVisible=8;if(this.numberHotel>this.numberVisible)
{this.scroller_hotelDiv.style.height=(this.numberVisible*this.itemHeight)+'px';this.pagerDiv.show();this.unlinkEventAbsoluteMovementLinks();this.linkEventAbsoluteMovementLinks();}
else if(this.numberHotel>0)
{this.scroller_hotelDiv.style.height=(this.numberHotel*this.itemHeight)+'px';this.pagerDiv.hide();}
else
{this.scroller_hotelDiv.style.height='40px';this.pagerDiv.hide();}}});function blink(id,delay)
{this.obj="blinkObj"+blink.count++;eval(this.obj+" = this ");this.css=(document.getElementById?document.getElementById(id).style:(document.all?document.all.fooImg.style:document.layers.fooImg));if(!this.css&&!document.layers)alert('Errore: non trovo il DIV con id="'+id+'"');this.delay=delay||1000;this.blinking=false;this.setDelay=function(delay){this.delay=delay;}
this.isBlinking=function(){return this.blinking;}
this.start=function(){if(this.isBlinking())return false;else this.go();return true;}
this.go=function(){this.blinking=true;if(this.isVisible())this.hide();else this.show();this.timer=setTimeout(this.obj+".go()",this.delay);}
this.isVisible=function(){return(this.css.visibility=="visible"||this.css.visibility=="show");}
this.hide=function(){this.css.visibility=(document.layers?"hide":"hidden");}
this.show=function(){this.css.visibility=(document.layers?"show":"visible");}
this.stop=function(){this.show();this.blinking=false;clearTimeout(this.timer);}
return this;}
blink.count=0;
