why to keep this as async data? if needed, then I add a note explaining.