try async (buildability untested)