Apparently updating the UI doesn't need to be async