MouseEvent Listener returning same ID

function parsePlaylist (playlistXML:XML)
{
	var Tracks:XMLList = playlistXML.Track;

	for each (var Track:XML in Tracks)
	{
		var curLink = new mp3link_mc;
		var nid:Number = new Number(i);
		curLink.nid = i;
		curLink.x = 0;
		curLink.y = i*21;
		curLink.name = "mp3link"+i;
		curLink.title_txt.text = Track.Title.text();
		[COLOR="YellowGreen"]curLink.addEventListener(MouseEvent.MOUSE_DOWN, function():void{trace(curLink.nid)});[/COLOR]
		mp3s_mc.content_mc.addChild (curLink);
		tString = Track.Link.text();
		playlistItems.push ({_titl:Track.Title.text(), _link:Track.Link.text()});
		i++;
	}
}

The green text is returning 1 at every iteration… Why is this?