updated async requirement to use ~