AJS.fx={_shades:{0:"ffffff",1:"ffffee",2:"ffffdd",3:"ffffcc",4:"ffffbb",5:"ffffaa",6:"ffff99"},highlight:function(c,a){var b=new AJS.fx.Base();
b.elm=AJS.$(c);
b.options.duration=600;
b.setOptions(a);
AJS.update(b,{increase:function(){if(this.now==7){c.style.backgroundColor="#fff"}else{c.style.backgroundColor="#"+AJS.fx._shades[Math.floor(this.now)]}}});
return b.custom(6,0)},fadeIn:function(c,a){a=a||{};
if(!a.from){a.from=0;
AJS.setOpacity(c,0)}if(!a.to){a.to=1}var b=new AJS.fx.Style(c,"opacity",a);
return b.custom(a.from,a.to)},fadeOut:function(c,a){a=a||{};
if(!a.from){a.from=1}if(!a.to){a.to=0}a.duration=300;
var b=new AJS.fx.Style(c,"opacity",a);
return b.custom(a.from,a.to)},setWidth:function(c,a){var b=new AJS.fx.Style(c,"width",a);
return b.custom(a.from,a.to)},setHeight:function(c,a){var b=new AJS.fx.Style(c,"height",a);
return b.custom(a.from,a.to)}};
AJS.fx.Base=new AJS.Class({init:function(a){this.options={onStart:function(){},onComplete:function(){},transition:AJS.fx.Transitions.sineInOut,duration:500,wait:true,fps:50};
AJS.update(this.options,a);
AJS.bindMethods(this)},setOptions:function(a){AJS.update(this.options,a)},step:function(){var a=new Date().getTime();
if(a<this.time+this.options.duration){this.cTime=a-this.time;
this.setNow()}else{setTimeout(AJS.$b(this.options.onComplete,this,[this.elm]),10);
this.clearTimer();
this.now=this.to}this.increase()},setNow:function(){this.now=this.compute(this.from,this.to)},compute:function(c,b){var a=b-c;
return this.options.transition(this.cTime,c,a,this.options.duration)},clearTimer:function(){clearInterval(this.timer);
this.timer=null;
return this},_start:function(b,a){if(!this.options.wait){this.clearTimer()}if(this.timer){return}setTimeout(AJS.$p(this.options.onStart,this.elm),10);
this.from=b;
this.to=a;
this.time=new Date().getTime();
this.timer=setInterval(this.step,Math.round(1000/this.options.fps));
return this},custom:function(b,a){return this._start(b,a)},set:function(a){this.now=a;
this.increase();
return this},setStyle:function(c,a,b){if(this.property=="opacity"){AJS.setOpacity(c,b)}else{AJS.setStyle(c,a,b)}}});
AJS.fx.Style=AJS.fx.Base.extend({init:function(c,b,a){this.parent();
this.elm=c;
this.setOptions(a);
this.property=b},increase:function(){this.setStyle(this.elm,this.property,this.now)}});
AJS.fx.Styles=AJS.fx.Base.extend({init:function(b,a){this.parent();
this.elm=AJS.$(b);
this.setOptions(a);
this.now={}},setNow:function(){for(p in this.from){this.now[p]=this.compute(this.from[p],this.to[p])}},custom:function(a){if(this.timer&&this.options.wait){return}var c={};
var b={};
for(p in a){c[p]=a[p][0];
b[p]=a[p][1]}return this._start(c,b)},increase:function(){for(var a in this.now){this.setStyle(this.elm,a,this.now[a])}}});
AJS.fx.Transitions={linear:function(e,a,g,f){return g*e/f+a},sineInOut:function(e,a,g,f){return -g/2*(Math.cos(Math.PI*e/f)-1)+a}};
script_loaded=true;

script_loaded=true;

