Why does it keep crashing!?

It keeps crashing when the countdown timer gets to 0. Below is my code:


/////////// CODE FOR ANIMATING THE TURKEYS ///////////
var turkeyArray:Array = new Array();

turkeyArray[0] = turkey1_mc;
turkeyArray[1] = turkey2_mc;
turkeyArray[2] = turkey3_mc;
turkeyArray[3] = turkey4_mc;
turkeyArray[4] = turkey5_mc;
turkeyArray[5] = turkey6_mc;
turkeyArray[6] = turkey7_mc;
turkeyArray[7] = turkey8_mc;
turkeyArray[8] = turkey9_mc;
turkeyArray[9] = turkey10_mc;
turkeyArray[10] = turkey11_mc;
turkeyArray[11] = turkey12_mc;
turkeyArray[12] = turkey13_mc;
turkeyArray[13] = turkey14_mc;
turkeyArray[14] = turkey15_mc;
turkeyArray[15] = turkey16_mc;

var i:int = 0;

var turkeyTimer:Timer = new Timer(100);
    
turkeyTimer.addEventListener(TimerEvent.TIMER, playTurkeys);

function playTurkeys(event:TimerEvent):void
{
    for(i=0; i<turkeyArray.length; i++)
    {
        var randomTurkey:Number = Math.floor(Math.random()*100);    
        turkeyArray[randomTurkey].play();
    }
}

turkeyTimer.start();

/////////// CODE FOR KEEPING SCORE ///////////

var score = 0;
this.score_txt.text = score + " PTS.";

function updateScore():void
{    
    this.score_txt.text = score + " PTS.";
}

/////////// CODE FOR SWAPPING THE MOUSE CURSOR ///////////

var cursor:MovieClip;

function initializeGame():void
{
    cursor = new Cursor();
    addChild(cursor);
    cursor.x = this.mouseX;
    cursor.y = this.mouseY;
    cursor.enabled = false;
    Mouse.hide();
    stage.addEventListener(MouseEvent.MOUSE_MOVE, dragCursor);    
    stage.addEventListener(MouseEvent.CLICK, playCursor);
}

function dragCursor(event:MouseEvent):void
{
    cursor.x = this.mouseX;
    cursor.y = this.mouseY;
}

function playCursor(event:MouseEvent):void
{
    cursor.play();
}

initializeGame();

/////////// CODE FOR THE TIMER ///////////

var timer:Timer = new Timer(1000, 30); 
timer.addEventListener(TimerEvent.TIMER, countdown); 
timer.start();
timer_txt.text = "0:30";

function countdown(event:TimerEvent):void
{
    var totalSecondsLeft:Number = 30 - timer.currentCount;
    timer_txt.text = timeFormat(totalSecondsLeft);    
} 

function timeFormat(seconds:int):String 
{     
    var minutes:int;     
    var sMinutes:String;     
    var sSeconds:String;     
    
    if(seconds > 29)
    {
        minutes = Math.floor(seconds / 60);
        sMinutes = String(minutes);
        sSeconds = String(seconds % 60);     
    } 
    else
    {         
        sMinutes = "00";
        sSeconds = String(seconds);
    }     
    if(sMinutes.length == 1)
    {         
        sMinutes = "0" + sMinutes;     
    }         
    if(sSeconds.length == 1)
    {         
        sSeconds = "0" + sSeconds;     
    }  
    if(sMinutes == "00" && sSeconds == "00")
    {
        turkeyTimer.removeEventListener(TimerEvent.TIMER, playTurkeys);
        timer.stop();
        //gameOver();
        
        //THIS IS WHERE IS KEEPS CRASHING
    }
    
    return sMinutes + ":" + sSeconds; 
}

stop();