Graphics Flash ActionScript

package
{
    import flash.display.*;
    import flash.events.Event;
    import flash.geom.Matrix;
    import flash.net.URLRequest;
    public class Main extends Sprite
    {
        private var shape:Sprite = new Sprite();
        private var loader:Loader = new Loader();
        private var bmpImage:BitmapData;
    
        public function Main()
        {
            loader.loaderInfo.addEventListener(Event.COMPLETE, picLoaded)
            loader.load(new URLRequest("image1.jpg"));
    
            shape.x = 100;
            shape.y = 200;
        }
    
        private function picLoaded(event:Event):void
        {
            bmpImage = new BitmapData(loader.width, loader.height);
    
            bmpImage.draw(loader);
    
            shape.graphics.lineStyle(25);
            shape.graphics.lineGradientStyle(GradientType.LINEAR, [0x00ff00, 0xff0000], [100, 100], [150, 255]);
    
            var mxBox:Matrix = new Matrix();
            mxBox.createGradientBox(200, 200);
            shape.graphics.lineGradientStyle(GradientType.LINEAR,[0xFFFF00, 0x00FFFF], [100, 100], [0x00, 0xFF], mxBox);
            shape.graphics.beginBitmapFill(bmpImage);
            shape.graphics.drawRect(0, 0, 200, 200);
            shape.graphics.endFill();
        }
    }
}