implemented sleep, setAddress, and canSend