moved setTimeout into setStatus to make sure it gets called whenever status changes