function Delegate(){}Delegate.create=function(o,f){var a=new Array();var l=arguments.length;for(var i=2;i<l;i++)a[i-2]=arguments[i];return function(){var aP=[].concat(arguments,a);f.apply(o,aP);}};function Sequence(){this.children=new Array();this.currentChildIndex=0;this._listeners=new Array();this.nextObject=new Object();this.addListener(this);}var s=Sequence.prototype;s.addChild=function(tween){this.children.push(tween)};s.removeChild=function(tween){var a=this.children;var i=a.length;while(i--){if(a[i]==tween){a.splice(i,1);return true;}}return false;};s.start=function(){this.rewind();this.play();this.broadcastMessage('onMotionStarted',{target:this,type:'onMotionStarted'});};s.next=function(){this.children[this.currentChildIndex].removeListener(this.nextObject);if(this.currentChildIndex<this.children.length-1){this.currentChildIndex++;this.play();}else{this.stop();this.broadcastMessage('onMotionFinished',{target:this,type:'onMotionFinished'});}};s.play=function(){this.nextObject=new Object();this.nextObject.onMotionFinished=Delegate.create(this,this.next);this.children[this.currentChildIndex].addListener(this.nextObject);this.children[this.currentChildIndex].start();};s.stop=function(){this.children[this.currentChildIndex].stop();this.broadcastMessage('onMotionStopped',{target:this,type:'onMotionStopped'});};s.rewind=function(){this.children[this.currentChildIndex].removeListener(this.nextObject);this.currentChildIndex=0;for(var i=0;i<this.children.length;i++){this.children[i].rewind();}};s.fforward=function(){this.children[this.currentChildIndex].removeListener(this.nextObject);for(var i=0;i<this.children.length;i++){this.children[i].fforward();}this.currentChildIndex=this.children.length-1;};s.resume=function(){this.children[this.currentChildIndex].resume();this.broadcastMessage('onMotionResumed',{target:this,type:'onMotionStopped'});};s.addListener=function(o){this.removeListener(o);return this._listeners.push(o);};s.removeListener=function(o){var a=this._listeners;var i=a.length;while(i--){if(a[i]==o){a.splice(i,1);return true;}}return false;};s.broadcastMessage=function(){var arr=new Array();for(var i=0;i<arguments.length;i++){arr.push(arguments[i])}var e=arr.shift();var a=this._listeners;var l=a.length;for(var i=0;i<l;i++){if(a[i][e])a[i][e].apply(a[i],arr);}};
