reduce times of coroutine and make it run faster