asynchronous execution finally works