coroutine dependency