 import spark.effects.SimpleMotionPath;
 import spark.effects.animation.Animation;
     
+/**
+ *  The AnimateShaderTransitionInstance class implements the instance class for the
+ *  AnimateShaderTransition effect. Flex creates an instance of this class when
+ *  it plays a AnimateShaderTransition effect; you do not create one yourself.
+ *
+ *  @see spark.effects.AnimateShaderTransition
+ *  
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 1.5
+ *  @productversion Flex 4
+ */
 public class AnimateShaderTransitionInstance extends AnimateInstance
 {
     include "../../core/Version.as";
 
+    /**
+     *  Constructor.
+     *
+     *  @param target The Object to animate with this effect.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
     public function AnimateShaderTransitionInstance(target:Object)
     {
         super(target);

    public var bitmapTo:BitmapData;

    /**
     * The bytecode that a <code>Shader</code> object will use
     * for running the transition between the two bitmaps. 
     * 
     * <p>The shader can have arbitrary functionality and inputs, but 
     * must, at a minimum, have three <code>image4</code> inputs.
     * The first input, which can be named anything, should go
     * unused by your shader code - it exists only to satisfy the
     * Flash requirement of assigning a filtered object to the
     * first input. Note that inputs that go completely unused in a
     * shader kernel may be optimized out, so your kernel code should
     * at least reference this input to keep it around.</p>
     * 
     * <p>There must be at least two other inputs
     * named <code>from</code> and <code>to</code> and one 
     * <code>float</code> parameter named <code>progress</code>, where
     * <code>from/to</code> are the before/after bitmaps, respectively,
     * and <code>progress</code> is the elapsed fraction of
     * the effect.</p>
     * 
     * <p>Also, there are two optional parameters, <code>width</code>
     * and <code>height</code>, which if they exist in the shader
     * will be automatically set to the width and height for the
     * effect instance target.</p>
     * 
     * <p>See the Pixel Bender Toolkit documentation for more
     * information on writing shaders for Flash.</p>
     * 
     * @example To play an effect that uses a fictional Pixel Bender pbj 
     * file MyShader.pbj, which takes a single <code>direction</code>
     * parameter, the calling code could do this:
     * @example <listing version="3.0">
     *   [Embed(source="MyShader.pbj", mimeType="application/octet-stream")]
     *   private var ShaderCodeClass:Class;
     *   var shaderEffect = new AnimateShaderTransition();
     *   shaderEffect.shaderCode = ShaderCodeClass;
     *   shaderEffect.shaderProperties = {direction : 1};</listing>
     * or in MXML code, this:<listing version="3.0">
     *   &lt;AnimateShaderTransition 
     *       shaderCode="&64;Embed(source='MyShader.pbj', mimeType='application/octet-stream')"
     *       shaderProperties="{{direction : 1}}}"/&gt;
     * </listing>
     * 
     * @see flash.display.Shader
     *  
     *  @langversion 3.0
     *  @playerversion Flash 10

    }

    /**
     *  @copy spark.effects.AnimateShaderTransition#bitmapFrom
     *  
     *  @langversion 3.0
     *  @playerversion Flash 10
