reconnects if disconnected