 import flash.utils.Timer;
 import flash.utils.getTimer;
 
+import mx.effects.interpolation.ArrayInterpolator;
 import mx.effects.interpolation.IEaser;
+import mx.effects.interpolation.IInterpolator;
 import mx.effects.interpolation.Linear;
-import mx.effects.interpolation.Sine;
-import mx.effects.interpolation.ArrayInterpolator;
-import mx.effects.interpolation.IInterpolator;
 import mx.effects.interpolation.NumberArrayInterpolator;
 import mx.effects.interpolation.NumberInterpolator;
+import mx.effects.interpolation.Sine;
 import mx.events.AnimationEvent;
 
 /**

        sendAnimationEvent(AnimationEvent.ANIMATION_UPDATE, value);
        sendAnimationEvent(AnimationEvent.ANIMATION_END, value);

        // If animation has been added, id >= 0
        // but if duration = 0, this might not be the case.
        if (id >= 0)
            Animation.removeAnimationAt(id);
        
        _invertValues = false;
        _doReverse = false;
        _isPlaying = false;
    }

    /**

     */
    public function end():void
    {
        // TODO (chaase): Check whether we already send out a final
        // UPDATE event with the end value; if so, this dup should be
        // removed
