Asynchronous block functions

Check out this technique