Добрый день. Не могу справиться с проблемкой.

Код AS3:
var wall:Sprite = new Sprite();
addChild(wall);
var images:Array = [
"mp3.jpg",
"tween.jpg",
"uploader.jpg"
];
var iLen:uint = images.length;
var tile:ImageTile;
for (var i:uint = 0; i < iLen; i++) {
tile = new ImageTile();
wall.addChild(tile);
tile.name = "box"+i;
tile.x = i % 5 * 210 + 110;
tile.y = Math.floor(i / 5) * 210 + 110;
var imageName:String = images[i];
var caption:TextField = tile.getChildByName("caption_tf") as TextField;
tile.btn1.addEventListener(MouseEvent.CLICK, onBtnClicked );
caption.text = imageName;
}
function onBtnClicked(e:MouseEvent):void{
trace (tile.name);
}
Этот код работает.. но с всех трех кнопок возвращает имя последнего добавленного спрайта. Как правильно прицепить уникальный обработчик нажатия на "btn1" для каждого спрайта??
Добавлено через 2 часа 17 минут
btnn = new Btn();
tile.addChild(btnn);
btnn.name = "box"+i;
var imageName:String = images[i];
var caption:TextField = tile.getChildByName("caption_tf") as TextField;
btnn.addEventListener(MouseEvent.CLICK, onBtnClicked );
caption.text = imageName;
}
function onBtnClicked(e:MouseEvent):void{
trace (e.currentTarget.name.toString());
}
оказывается можно еще и так сделать).