Подскажите как отлавливать событие завершения клипа, и удалять его со сцены, пытался сделать так

Код AS3:
import flash.display.MovieClip;
import flash.events.Event;
var l:int = 0;
var w:int = box.width;
var h:int = box.height;
addEventListener(Event.ENTER_FRAME, onEnterFrame);
function onEnterFrame(event:Event) {
++l;
var d:wv = new wv();
d.name = "d"+ l;
d.x = box.x + Math.random() * w;//ложим в случайную точку
d.y = box.y + Math.random() * h;//на поверхности воды
addChild(d);
d.addEventListener(Event.EXIT_FRAME, removeframe);
}
function removeframe(myEvent:Event) {
var DisOb:DisplayObject = DisplayObject(myEvent.target);
var mov:MovieClip = DisOb as MovieClip;
trace (mov.name);
mov.removeEventListener(Event.ENTER_FRAME,removeframe);
removeChild(mov);//getChildByName("")
}
Но просмотрев в отладчике, он по кругу ходит. и не удаляет слушателя событий.
Т.е в функцию removeframe заходит по несколько раз
trace получаю.
итд
Пытался передалать код с As2 на AS3
отсюда