get rid of async