  *  
  *     &lt;Label text="ABCDEF"&gt;
  *         &lt;filters&gt;
- *             &lt;ShaderFilter byteCode="&#64;Embed(source="shaders/spherize.pbj', mimeType='application/octet-stream')"
+ *             &lt;ShaderFilter shader="&#64;Embed(source='shaders/spherize.pbj')"
  *                 radius="25" center_x="50" center_y="15" /&gt;
  *        &lt;/filters&gt;
  *     &lt;/Label&gt;

 * the stock Flash ShaderFilter, Shader, and ShaderData classes to apply a
 * Pixel Bender shader as a filter.
 *
 * <p>The ShaderFilter class must be initialized with byte code representing a
 * compiled Pixel Bender shader. After that the class will create (behind the scenes) a
 * Shader instance from the byte code. The ShaderFilter class then serves as a proxy to the
 * underlying Shader, providing a convenience mechanism for accessing both scalar
 * and multi-dimensional shader input parameters directly as simple named properties.</p>
 *
 * <p>To set a simple scalar shader input parameter (e.g. of type FLOAT or INT), you can simply
 * refer to the property directly, e.g. <code>myFilter.radius</code>.</p>

    //----------------------------------
    //  shaderInstance
    //----------------------------------
    
    /**
     *  @private
     *  Storage for the shader property.
     */
    private var _shader:Shader;
    
    /**
     *  @private
     *  Storage for the last assigned Shader Class.
     */
    private var _shaderClass:Class;
    
    /**
     * An object representing the Shader to use with this filter, either a Class 
     * or Shader instance is allowed.
     */
    public function set shader(value:*):void
    {
        // Create our shader instance from the byteCode provided. Since our 
        // bytecode is sometimes reassigned by the binding infrastructure we 
        // only initialize ourselves upon the first instance.
        if (value is Shader && value != _shader)
        {
            _shader = value;
        }
        else if (value is Class && value != _shaderClass)
        {
            var obj:* = new value();
            _shader = obj as Shader; 
            _shaderClass = value;
        }

        // Push any pending properties onto the new shader instance. 
