         else
         {
             var value:Object = getCurrentValue(0);
-            for each (var animationTarget:IAnimationTarget in animationTargets)
-            {
-                animationTarget.animationStart(this, value);
-                animationTarget.animationUpdate(this, value);
-            }
             // TODO (chaase): Make sure we're not already sending out an
             // UPDATE event with this start value
             sendAnimationEvent(AnimationEvent.ANIMATION_START, value);

     * @param endValue The final value that the animation ends on
     * @param duration The length of time, in milliseconds, that the animation
     * will run
     * @param IAnimationTarget IAnimationTarget object that will be sent all start,
     * repeat, update, and end messages.
     */
    public function Animation(startValue:Object=null, endValue:Object=null, 
                                  duration:Number=-1, target:IAnimationTarget=null)
    {
        this.duration = duration;
        this.startValue = startValue;
        this.endValue = endValue;
        if (target)
            animationTargets[0] = target;
        if (!isNaN(duration) && duration != -1)
            this.duration = duration;
        if (startValue is Array)

        if (repeatBehavior == REVERSE)
            _invertValues = !_invertValues;
        var repeatValue:Object = getCurrentValue(0);
        // TODO (chaase): Make sure we're not already sending out an UPDATE
        // event with this value
        sendAnimationEvent(AnimationEvent.ANIMATION_UPDATE, repeatValue);
