             // appropriate child effects
             if (activeEffectQueue && activeEffectQueue.length > 0)
             {
+                // If we end up skipping past all child effects, then 
+                // finish this Sequence effect when we're done
+                var finishWhenDone:Boolean = true;
                 var cumulativeDuration:Number = 0;
                 for (var i:int = 0; i < activeEffectQueue.length; ++i)
                 {

            
            // Call end on the currently playing set
            var currentInstances:Array = queueCopy[currentSetIndex];
            var currentCount:int = currentInstances.length;
            
            for (var i:int = 0; i < currentCount; i++)
            {
                currentInstances[i].end();
            }
            
            var n:int = queueCopy.length;

                        instances[0].actualDuration;
                    if (value < endTime)
                    {
                        finishWhenDone = false;
                        // These are the effects that should be active
                        // simply seek to the right time in the effect
                        if (currentSetIndex != i)
