//>>built
define("dojox/fx/ext-dojo/reverse",["dojo/_base/fx","dojo/fx","dojo/_base/lang","dojo/fx/easing","dojox/fx"],function(g,t,p,c,u){p.extend(g.Animation,{_reversed:!1,reverse:function(q,h){var d="playing"==this.status();this.pause();this._reversed=!this._reversed;var e=this.duration,k=e*this._percent,l=e-k,m=(new Date).valueOf(),n=this.curve._properties,b=this.properties,a;this._endTime=m+k;this._startTime=m-l;d&&this.gotoPercent(l/e);for(a in b)d=b[a].start,b[a].start=n[a].start=b[a].end,b[a].end=n[a].end=
d;if(this._reversed){if(!this.rEase)if(this.fEase=this.easing,h)this.rEase=h;else{var f;for(a in c)if(this.easing==c[a]){var r=a;break}r?(/InOut/.test(a)||!/In|Out/i.test(a)?this.rEase=this.easing:f=/In/.test(a)?a.replace("In","Out"):a.replace("Out","In"),f&&(this.rEase=c[f])):this.rEase=this.easing}this.easing=this.rEase}else this.easing=this.fEase;q||"playing"==this.status()||this.play();return this}});return g.Animation});