         }
     }
 
-    private function enqueue (buddy :Buddy) :void
+    private function scheduleBuddy (buddy :Buddy) :void
     {
         _buddy = buddy;
+        _buddy.expiration = getTimer() + Math.max(_delay, 5);
         if (_heap.enqueue(_buddy)) {
             return;
         }

}

import flash.utils.Timer;

class Buddy {
    public var budette :Timer;
    public var expiration :int;

    public function Buddy (timer :Timer, expiration :int)
    {
        this.budette = timer;
        this.expiration = expiration;
    }
}

        }

        if (repeatCount == 0 || _currentCount < _repeatCount) {
            scheduleBuddy(buddy);

        } else {
            dispatchEvent(new TimerEvent(TimerEvent.TIMER_COMPLETE));
