could do this after L42 and then you wouldn't need the async interface here. also that would group all the validation together