apply the same simplification to async that we did for sync