Simplify and remember to flag as async