timeout should be scheduled before deferred