slightly more polished timer