tweaked what-say functions and also made async