do not put alarm in do loop (:V)