for loops now block on promise resolution