Can you explain why this is necessary? It feels like it's adding in a layer of async which is causing you to do the Y.soon hackyness a few lines down.