     private function addListeners(cli:LoaderInfo):void
     {
         cli.addEventListener(Event.COMPLETE, onComplete, false, 0, true);
+        cli.addEventListener(Event.OPEN, dispatchEvent, false, 0, true);
         cli.addEventListener(HTTPStatusEvent.HTTP_STATUS, dispatchEvent, false, 0, true);
+        cli.addEventListener(ProgressEvent.PROGRESS, dispatchEvent, false, 0, true);
         cli.addEventListener(IOErrorEvent.IO_ERROR, dispatchEvent, false, 0, true);
-        cli.addEventListener(ProgressEvent.PROGRESS, dispatchEvent, false, 0, true);
+    }
+
+    private function removeListeners(cli:LoaderInfo):void
+    {
+        cli.removeEventListener(Event.COMPLETE, onComplete, false);
+        cli.removeEventListener(Event.OPEN, dispatchEvent, false);
+        cli.removeEventListener(HTTPStatusEvent.HTTP_STATUS, dispatchEvent, false);
+        cli.removeEventListener(ProgressEvent.PROGRESS, dispatchEvent, false);
+        cli.removeEventListener(IOErrorEvent.IO_ERROR, dispatchEvent, false);
     }
 }
 }

import flash.utils.ByteArray;


public class BitmapLoader extends EventDispatcher
{
    public static const FP9_MAX_AXIS:uint = 2880;
    public static const FP10_MAX_AXIS:uint = 8192;

package org.yellcorp.bitmap
{
import org.yellcorp.mem.Destructor;

import flash.display.BitmapData;
import flash.display.Loader;
import flash.display.LoaderInfo;
