slight modification to coroutine startup