Network Flash ActionScript

package {
  import flash.display.*;
  import flash.net.URLRequest;
  import flash.events.*
  import flash.text.*;
  public class Main extends Sprite {
    private var loader:Loader;
    private var progressOutput:TextField;
    public function Main(  ) {
      createLoader(  );
      createProgressIndicator(  );
      load(new URLRequest("sunset.jpg"));
    }
    private function createLoader (  ):void {
      loader = new Loader(  );
      loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,
                                                progressListener);
      loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
                                                completeListener);
      loader.contentLoaderInfo.addEventListener(Event.INIT,
                                                initListener);
      loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,
                                                ioErrorListener);
    }
    private function createProgressIndicator (  ):void {
      progressOutput  = new TextField(  );
      progressOutput.autoSize   = TextFieldAutoSize.LEFT;
      progressOutput.border     = true;
      progressOutput.background = true;
      progressOutput.selectable = false;
      progressOutput.text       = "LOADING...";
    }
    private function load (urlRequest:URLRequest):void {
      loader.load(urlRequest);
      if (!contains(progressOutput)) {
        addChild(progressOutput);
      }
    }
    private function progressListener (e:ProgressEvent):void {
      progressOutput.text = "LOADING: "
                          + Math.floor(e.bytesLoaded / 1024)
                          + "/" + Math.floor(e.bytesTotal / 1024) + " KB";
    }
    private function initListener (e:Event):void {
      addChild(loader.content);
    }
    private function completeListener (e:Event):void {
      removeChild(progressOutput);
    }
    private function ioErrorListener (e:IOErrorEvent):void {
      progressOutput.text = "LOAD ERROR";
    }
  }
}