Movieclips into array problem

There’s a gallery section in the flash project I am creating. From the traces everything appears to be working until the completeListener function (code below) which adds the image loaded to the my_mc movieclip.

There are six images being loaded from an xml file. The loader seems to be loading the different images according to the downloaded bytes info. But the width and height information traced in the completeListener function is repeated six times for the last image loaded from the xml file. Only the last image in the xml file is appearing in the last movieclip pushed into the myarrayofmovies array. When I view the other movieclips the images are not present. I don’t know why this is happening.

Help please.

    public function processXML(e:Event):void {
    myXML = new XML(e.target.data);
    
        for (var i:int = 0; i<myXML.*.length(); i++){
            
            var my_mc:MovieClip = new MovieClip;
    
            my_mc.name = "image"+i;  //dynamically assign name to created movieclip
            //trace("Movieclip name: "+ my_mc.name + "
");  //name of created movieclip
            myArrayOfMovies.push(my_mc);
            
            var loader:Loader = new Loader();
            loader.x=60; 
            loader.y=50;
            loader.load( new URLRequest( myXML.IMAGE* ) );
            
            loader.contentLoaderInfo.addEventListener(Event.INIT, initListener);
            loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressListener);
            loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeListener);
            loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); 
            
            function completeListener(e:Event):void{
            my_mc.addChild(loader);
            trace("width: " + loader.width + "  height: " +loader.height);    
            trace("Loading Completed");
            }
        }
        trace(myArrayOfMovies);
      showPicture(currentImage);
    }
    
public function initListener (e:Event):void{
trace("Object Initialized");
}

public function progressListener (e:ProgressEvent):void{
trace("Loading In Progress");
trace("Downloaded " + e.bytesLoaded + " out of " + e.bytesTotal + " bytes");
} 
[object MovieClip],[object MovieClip],[object MovieClip],[object MovieClip],[object MovieClip],[object MovieClip]
Image Array Length: 6
Loading In Progress
Downloaded 0 out of 49556 bytes
Loading In Progress
Downloaded 0 out of 75591 bytes
Loading In Progress
Downloaded 0 out of 119812 bytes
...
Loading In Progress
Downloaded 49556 out of 49556 bytes
Loading In Progress
Downloaded 65536 out of 75591 bytes
Loading In Progress
Downloaded 75591 out of 75591 bytes
...
Object Initialized
width: 313  height: 280
Loading Completed
Object Initialized
width: 313  height: 280
Loading Completed
Object Initialized
width: 313  height: 280
Loading Completed
...