modified removeExpiredTimers to not miss any timers due to mutation of the timerList array