     //
     //--------------------------------------------------------------------------
 
-    private var _propertyValuesList:Array;
-    /**
-     * An array of PropertyValuesHolder objects, each of which holds the
+    private var _animationProperties:Array;
+    /**
+     * An array of AnimationProperty objects, each of which holds the
      * name of the property being animated and the values that the property
      * will take on during the animation.
      */
-    public function get propertyValuesList():Array
-    {
-        return _propertyValuesList;
-    }
-    public function set propertyValuesList(value:Array):void
+    public function get animationProperties():Array
+    {
+        return _animationProperties;
+    }
+    public function set animationProperties(value:Array):void
     {
         // Only set the list to the given value if we have a 
         // null list to begin with. Otherwise, we've already
         // set up the list once and don't need to do it again
         // (for example, in a repeating effect).
-        if (!_propertyValuesList)
-            _propertyValuesList = value;
+        if (!_animationProperties)
+            _animationProperties = value;
     }
     
     /**

    private function finalizeValues():Boolean
    {
        var changedValues:Boolean = false;
        for (var i:int = 0; i < propertyValuesList.length; ++i)
        {
            var holder:PropertyValuesHolder = 
                PropertyValuesHolder(propertyValuesList[i]);
            // Note that we use strict equality tests for null, as a simple
            // '0' value for a Number or int would look the same as a null
            // in a simple !value test.
            if ((holder.values[0] === null) || (holder.values[1] === null))
            {
                if (holder.values[0] === null)
                {
                    if ((holder.values[1] !== null) && !isNaN(holder.delta))
                        holder.values[0] = holder.values[1] - holder.delta;
                    else
                        holder.values[0] = getCurrentValue(holder.property);
                }
                if (holder.values[1] === null)
                {
                    if ((holder.values[0] !== null) && !isNaN(holder.delta))
                        holder.values[1] = holder.values[0] + holder.delta;
                    else
                        holder.values[1] = getCurrentValue(holder.property);
                }
                changedValues = true;
            }

        var anim:Animation = Animation(event.target);
        if (finalizeValues())
        {
            var holder:AnimationProperty;
            // Some of the values were updated; must now update
            // the respective values in the Animation
            if (animationProperties.length == 1)
            {
                holder = AnimationProperty(animationProperties[0]);
                if (anim.startValue === null)
                    anim.startValue = holder.valueFrom;
                if (anim.endValue === null)
                    anim.endValue = holder.valueTo;
            }
            else
            {
                var startValues:Array = anim.startValue as Array;
                var endValues:Array = anim.endValue as Array;
                for (var i:int = 0; i < animationProperties.length; ++i)
                {
                    holder = AnimationProperty(animationProperties[i]);
                    if (startValues[i] === null)
                        startValues[i] = holder.valueFrom;
                    if (endValues[i] === null)
                        endValues[i] = holder.valueTo;
                }
            }
        }
