reduce async/await usage