a single function for dead simple asynchronous control flow