Tween class multipule onMotionfinished need expert

Hi,
I have a ActionScript that copies the same Movie clip onto the screen 30 times.
I then get a random point on the screen and tween each of the movie clips to that point. THIS PART WORKS FINE.
When I try to use the onMotionFinished it only works for the last tween. How do I make it so each onMotionFinished is unqiue? So that when one clip stops the onMotionFinished fires seperatly for each. Right now it only fires once for everone. Below is the code I used ***** to show where the problem is.

import mx.transitions.Tween;
import mx.transitions.easing.*;

// array of objects set to stop
var xyArray=[];
for (var i=0;i<30;i++){
var antsobj = new Object();
antsobj.xp=“stop”;
antsobj.yp=“stop”;
xyArray.push(antsobj);
}

function moveAnts():Void{
var speed=10;
for (var i=0;i< 30;i++){

var thisOne=xyArray*;
if (thisOne.xp==“stop” && thisOne.yp==“stop”) {
thisOne.xp=“go”;
thisOne.yp=“go”;

 endx=Math.round(Math.random()*1250);
 endy=Math.round(Math.random()*950);

var antTweenx:Tween = new Tween(this[“ant_mc”+i],"_x",none.Easenone,this[“ant_mc”+i]._x,endx,speed,false);
var antTweeny:Tween = new Tween(this[“ant_mc”+i],"_y",none.Easenone,this[“ant_mc”+i]._y,endy,speed,false);

 antTweenx.onMotionFinished = function () {
  
 *******what I want do here is set the array back to "stop" when each motion          *******finishes
    thisOne=xyArray*;
    thisOne.xp="stop";
    thisOne.xy="stop";

}

}//if
}//for
}
//copies 30 movie clips random on screen
function antSetup():Void {
for (var i=0; i < 30; i++) {
attachMovie(“ant_mc”,“ant_mc”+i,this.getNextHighestDepth());
antx=Math.round(Math.random()*1250);
anty=Math.round(Math.random()*950);
this[“ant_mc”+i]._x=antx;
this[“ant_mc”+i]._y=anty;
}
}
antSetup();