Dropdown rollover rollout problem

Here is my code

 on(rollOver) {
    btn = new Sound(this)
    btn.attachSound("btn")
    this.btn.start(0,1)
    
    dropdown.gotoAndPlay("playdropdown")
} 
 on(rollOut) {
      this.btn.stop(0,0)
      
     setTimeout(delay,3000)
    
    function delay()
    {
        dropdown.gotoAndPlay("stopdropdown")
    }
} 

I have a button and when you rollover on it, it displays a dropdown mc. but if you rollout it has a timer that gets fired.

so the problem that I’m having is if you rollover and then rollout and then rollover it again… it triggers the timer twice. how would I go about fixing that?