wasn't really async: now it is!