Flash 8 AS For Loop with Nested Tween

Hi there.

Having a problem trying to get the balls to return to their original positions because the tween is inside the for loop. Can anyone help?

import mx.transitions.Tween;
import mx.transitions.easing.*;
function scales(redBall, xScaleStart, yScaleStart, xScaleEnd, yScaleEnd, timer) {
 var redBall:MovieClip = redBall;
 var timer:Number = timer;
 var xScaleEnd:Number = xScaleEnd;
 var yScaleEnd:Number = yScaleEnd;
 var xScaleStart:Number = xScaleStart;
 var yScaleStart:Number = yScaleStart;
 var xScaleTween:Tween = new Tween(redBall, "_xscale", Strong.easeIn, xScaleStart, xScaleEnd, timer, true);
 var yScaleTween:Tween = new Tween(redBall, "_yscale", Strong.easeIn, yScaleStart, yScaleEnd, timer, true);
}
function midTween(ball_mc, xStartPos, yStartPos, xPosEnd, yPosEnd, timer) {
 var ball_mc:MovieClip = ball_mc;
 var timer:Number = timer;
 var xPosEnd:Number = xPosEnd;
 var yPosEnd:Number = yPosEnd;
 var xStartPos:Number = xStartPos;
 var yStartPos:Number = yStartPos;
 var xMidTween:Tween = new Tween(ball_mc, "_x", Strong.easeOut, xStartPos, xPosEnd, timer, true);
 var yMidTween:Tween = new Tween(ball_mc, "_y", Strong.easeOut, yStartPos, yPosEnd, timer, true);
}
var myBalls:Array = new Array(cruiseBtn_mc, singleTripBtn_mc, annualBtn_mc, skiBtn_mc, backPackBtn_mc, golfBtn_mc);
function ballMover() {
 var max:Number = myBalls.length;
 for (var i:Number = 0; i<max; i++) {
  myBalls*.onRollOver = function() {
   this.gotoAndStop(2);
  };
  myBalls*.onRollOut = function() {
   this.gotoAndStop(1);
  };
  myBalls*.onPress = function() {
   if (this._y>=301) {
    midTween(this, this._x, this._y, Stage.width/2, Stage.height/2, 2);
    scales(this, this._xscale, this._yscale, 550, 550, 1);
   } else {
    midTween(this, this._x, this._y, 31, 376.4, 2);
    scales(this, this._xscale, this._yscale, 100, 100, 1);
   }
  };
 }
}
ballMover();

Thanks