wait for done channel