/*
Copyright 2010, KISSY UI Library v1.1.0
MIT Licensed
build: 896 Jul 22 10:00
*/
KISSY.add("anim-easing",function(c){var n=Math,j=n.PI,l=n.pow,k=n.sin,i=1.70158,p={easeNone:function(a){return a},easeIn:function(a){return a*a},easeOut:function(a){return(2-a)*a},easeBoth:function(a){return(a*=2)<1?0.5*a*a:0.5*(1- --a*(a-2))},easeInStrong:function(a){return a*a*a*a},easeOutStrong:function(a){return 1- --a*a*a*a},easeBothStrong:function(a){return(a*=2)<1?0.5*a*a*a*a:0.5*(2-(a-=2)*a*a*a)},elasticIn:function(a){if(a===0||a===1)return a;return-(l(2,10*(a-=1))*k((a-0.075)*2*j/0.3))},
elasticOut:function(a){if(a===0||a===1)return a;return l(2,-10*a)*k((a-0.075)*2*j/0.3)+1},elasticBoth:function(a){if(a===0||(a*=2)===2)return a;if(a<1)return-0.5*l(2,10*(a-=1))*k((a-0.1125)*2*j/0.45);return l(2,-10*(a-=1))*k((a-0.1125)*2*j/0.45)*0.5+1},backIn:function(a){if(a===1)a-=0.0010;return a*a*((i+1)*a-i)},backOut:function(a){return(a-=1)*a*((i+1)*a+i)+1},backBoth:function(a){if((a*=2)<1)return 0.5*a*a*(((i*=1.525)+1)*a-i);return 0.5*((a-=2)*a*(((i*=1.525)+1)*a+i)+2)},bounceIn:function(a){return 1-
p.bounceOut(1-a)},bounceOut:function(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+0.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+0.9375:7.5625*(a-=2.625/2.75)*a+0.984375},bounceBoth:function(a){if(a<0.5)return p.bounceIn(a*2)*0.5;return p.bounceOut(a*2-1)*0.5+0.5}};c.Easing=p});
KISSY.add("anim",function(c,n){function j(b,d,e,g,h){if(b=c.get(b)){if(!(this instanceof j))return new j(b,d,e,g,h);var f=c.isPlainObject(e);d=d;this.domEl=b;if(c.isPlainObject(d))d=c.param(d,";").replace(/=/g,":");this.props=l(d);this.targetStyle=d;if(f)b=c.merge(x,e);else{b=c.clone(x);e&&(b.duration=y(e,10)||1);c.isString(g)&&(g=z[g]);c.isFunction(g)&&(b.easing=g);c.isFunction(h)&&(b.complete=h)}this.config=b;c.isFunction(h)&&this.on(u,h)}}function l(b){var d={},e=v.length,g;A.innerHTML='<div style="'+
b+'"></div>';for(b=A.childNodes[0].style;e--;)if(g=b[v[e]])d[v[e]]=k(g);return d}function k(b){var d=y(b);b=(b+"").replace(/^[-\d\.]+/,"");return isNaN(d)?{v:b,u:"",f:p}:{v:d,u:b,f:i}}function i(b,d,e){return(b+(d-b)*e).toFixed(0)}function p(b,d,e){for(var g=2,h,f,m=[],q=[];h=3,f=arguments[g-1],g--;)if(a(f,0,4)==="rgb(")for(f=f.match(/\d+/g);h--;)m.push(~~f[h]);else if(a(f,0)==="#"){if(f.length===4)f="#"+a(f,1)+a(f,1)+a(f,2)+a(f,2)+a(f,3)+a(f,3);for(;h--;)m.push(parseInt(a(f,1+h*2,2),16))}else return d;
for(;h--;){g=~~(m[h+3]+(m[h]-m[h+3])*e);q.push(g<0?0:g>255?255:g)}return"rgb("+q.join(",")+")"}function a(b,d,e){return b.substr(d,e||1)}var s=c.DOM,z=c.Easing,y=parseFloat,A=s.create("<div>"),v="backgroundColor borderBottomColor borderBottomWidth borderBottomStyle borderLeftColor borderLeftWidth borderLeftStyle borderRightColor borderRightWidth borderRightStyle borderSpacing borderTopColor borderTopWidth borderTopStyle bottom color font fontFamily fontSize fontWeight height left letterSpacing lineHeight marginBottom marginLeft marginRight marginTop maxHeight maxWidth minHeight minWidth opacity outlineColor outlineOffset outlineWidth paddingBottom paddingLeft paddingRight paddingTop right textIndent top width wordSpacing zIndex".split(" "),
u="complete",x={duration:1,easing:z.easeNone};c.augment(j,c.EventTarget,{run:function(){var b=this,d=b.config,e=b.domEl,g=d.duration*1E3,h=d.easing,f=c.now(),m=f+g,q=b.props,B={},o;for(o in q)B[o]=k(s.css(e,o));if(b.fire("start")!==false){b.stop();b.timer=c.later(d=function(){var w=c.now(),D=w>m?1:(w-f)/g,t,r,C;for(o in q){t=B[o];r=q[o];if(t.u!==r.u)t.v=0;s.css(e,o,r.f(t.v,r.v,h(D))+r.u)}if(b.fire("step")===false||(C=w>m)){b.stop();C&&b.fire(u)}},13,true);d();return b}},stop:function(b){var d=this.domEl,
e=this.targetStyle;if(this.timer){this.timer.cancel();this.timer=n}if(b){c.UA.ie&&e.indexOf("opacity")>-1&&s.css(d,"opacity",this.props.opacity.v);d.style.cssText+=";"+e;this.fire(u)}return this}});c.Anim=j});KISSY.add("anim-node-plugin",function(c,n){var j=c.Anim;c.each([c.Node.prototype,c.NodeList.prototype],function(l){l.animate=function(){var k=c.makeArray(arguments);c.each(this,function(i){j.apply(n,[i].concat(k)).run()});return this}})});

