implement start/stop flow