(function(){YAHOO.util.LoopAnim=function(E,D,G,F,H){if(E){this.repeat=F||1;YAHOO.util.LoopAnim.superclass.constructor.call(this,E,D,G,H)}};YAHOO.lang.extend(YAHOO.util.LoopAnim,YAHOO.util.Anim);var B=YAHOO.util;var C=B.LoopAnim.superclass;var A=B.LoopAnim.prototype;A.init=function(E,D,H,I){C.init.call(this,E,D,H,I);var F=Math.round(this.repeat*2);var G=false;this.onStart.subscribe(function(){if(!G){this.onLoopStart.fire();G=true}F--});this.onComplete.subscribe(function(){if(F>0){var K={};var L=this.runtimeAttributes;for(var J in L){K[J]={to:L[J].start}}this.attributes=K;this.animate()}else{this.onLoopComplete.fire()}});this.onLoopStart=new B.CustomEvent("loopStart",this);this.onLoopComplete=new B.CustomEvent("loopComplete",this)};A.toString=function(){var D=this.getEl();var E=D.id||D.tagName;return("LoopAnim "+E)}})();YAHOO.util.AnimQueue=function(A){A=A||null;var D=new YAHOO.util.CustomEvent("complete");this.onComplete=D;var C=new YAHOO.util.CustomEvent("anim_complete",this,true,YAHOO.util.CustomEvent.FLAT);this.onEachComplete=C;this.queue=[];this.events=[];if(A instanceof Array){for(var B=0;B<A.length;B++){this.add(A[B])}}};YAHOO.util.AnimQueue.prototype.add=function(C,A){A=A||"onComplete";if(this.queue.length>0){var D=this.queue.length-1;var B=this.queue[D];B[this.events[D]].subscribe(C.animate,C,true)}C[A].subscribe((function(E){return function(){E.onEachComplete.fire(this);if(this==E.queue[E.queue.length-1]){E.onComplete.fire()}}})(this),C,true);this.queue.push(C);this.events.push(A)};YAHOO.util.AnimQueue.prototype.animate=function(){this.queue[0].animate()}
