/*
EASING EQUATIONS by Robert Penner
Open source under the BSD License.
Copyright © 2001 Robert Penner
All rights reserved.
http://www.robertpenner.com/easing_terms_of_use.html
*/
var potato=potato||{};potato.fx=potato.fx||{};potato.fx.Ease={};potato.fx.Ease.inBack=function(a,b,c,d){return c*(a/=d)*a*(2.70158*a-1.70158)+b};potato.fx.Ease.outBack=function(a,b,c,d){return c*((a=a/d-1)*a*(2.70158*a+1.70158)+1)+b};potato.fx.Ease.inOutBack=function(a,b,c,d){var e=1.70158;if((a/=d/2)<1)return c/2*a*a*(((e*=1.525)+1)*a-e)+b;return c/2*((a-=2)*a*(((e*=1.525)+1)*a+e)+2)+b};
potato.fx.Ease.outBounce=function(a,b,c,d){return(a/=d)<1/2.75?c*7.5625*a*a+b:a<2/2.75?c*(7.5625*(a-=1.5/2.75)*a+0.75)+b:a<2.5/2.75?c*(7.5625*(a-=2.25/2.75)*a+0.9375)+b:c*(7.5625*(a-=2.625/2.75)*a+0.984375)+b};potato.fx.Ease.inBounce=function(a,b,c,d){return c-potato.fx.Ease.outBounce(d-a,0,c,d)+b};potato.fx.Ease.inOutBounce=function(a,b,c,d){return a<d/2?potato.fx.Ease.inBounce(a*2,0,c,d)*0.5+b:potato.fx.Ease.outBounce(a*2-d,0,c,d)*0.5+c*0.5+b};
potato.fx.Ease.inCirc=function(a,b,c,d){return-c*(Math.sqrt(1-(a/=d)*a)-1)+b};potato.fx.Ease.outCirc=function(a,b,c,d){return c*Math.sqrt(1-(a=a/d-1)*a)+b};potato.fx.Ease.inOutCirc=function(a,b,c,d){if((a/=d/2)<1)return-c/2*(Math.sqrt(1-a*a)-1)+b;return c/2*(Math.sqrt(1-(a-=2)*a)+1)+b};potato.fx.Ease.inCubic=function(a,b,c,d){return c*(a/=d)*a*a+b};potato.fx.Ease.outCubic=function(a,b,c,d){return c*((a=a/d-1)*a*a+1)+b};
potato.fx.Ease.inOutCubic=function(a,b,c,d){if((a/=d/2)<1)return c/2*a*a*a+b;return c/2*((a-=2)*a*a+2)+b};potato.fx.Ease.inElastic=function(a,b,c,d){if(a==0)return b;if((a/=d)==1)return b+c;var e=d*0.3,f;f=e/4;return-(c*Math.pow(2,10*(a-=1))*Math.sin((a*d-f)*2*Math.PI/e))+b};potato.fx.Ease.outElastic=function(a,b,c,d){if(a==0)return b;if((a/=d)==1)return b+c;var e=d*0.3;return c*Math.pow(2,-10*a)*Math.sin((a*d-e/4)*2*Math.PI/e)+c+b};
potato.fx.Ease.inOutElastic=function(a,b,c,d){if(a==0)return b;if((a/=d/2)==2)return b+c;var e,f=d*0.3*1.5;e=f/4;if(a<1)return-0.5*c*Math.pow(2,10*(a-=1))*Math.sin((a*d-e)*2*Math.PI/f)+b;return c*Math.pow(2,-10*(a-=1))*Math.sin((a*d-e)*2*Math.PI/f)*0.5+c+b};potato.fx.Ease.inExpo=function(a,b,c,d){return a==0?b:c*Math.pow(2,10*(a/d-1))+b};potato.fx.Ease.outExpo=function(a,b,c,d){return a==d?b+c:c*(-Math.pow(2,-10*a/d)+1)+b};
potato.fx.Ease.inOutExpo=function(a,b,c,d){if(a==0)return b;if(a==d)return b+c;if((a/=d/2)<1)return c/2*Math.pow(2,10*(a-1))+b;return c/2*(-Math.pow(2,-10*--a)+2)+b};potato.fx.Ease.linear=function(a,b,c,d){return c*a/d+b};potato.fx.Ease.inQuad=function(a,b,c,d){return c*(a/=d)*a+b};potato.fx.Ease.outQuad=function(a,b,c,d){return-c*(a/=d)*(a-2)+b};potato.fx.Ease.inOutQuad=function(a,b,c,d){if((a/=d/2)<1)return c/2*a*a+b;return-c/2*(--a*(a-2)-1)+b};
potato.fx.Ease.inQuart=function(a,b,c,d){return c*(a/=d)*a*a*a+b};potato.fx.Ease.outQuart=function(a,b,c,d){return-c*((a=a/d-1)*a*a*a-1)+b};potato.fx.Ease.inOutQuart=function(a,b,c,d){if((a/=d/2)<1)return c/2*a*a*a*a+b;return-c/2*((a-=2)*a*a*a-2)+b};potato.fx.Ease.inQuint=function(a,b,c,d){return c*(a/=d)*a*a*a*a+b};potato.fx.Ease.outQuint=function(a,b,c,d){return c*((a=a/d-1)*a*a*a*a+1)+b};
potato.fx.Ease.inOutQuint=function(a,b,c,d){if((a/=d/2)<1)return c/2*a*a*a*a*a+b;return c/2*((a-=2)*a*a*a*a+2)+b};potato.fx.Ease.inSine=function(a,b,c,d){return-c*Math.cos(a/d*(Math.PI/2))+c+b};potato.fx.Ease.outSine=function(a,b,c,d){return c*Math.sin(a/d*(Math.PI/2))+b};potato.fx.Ease.inOutSine=function(a,b,c,d){return-c/2*(Math.cos(Math.PI*a/d)-1)+b};
