and tbh I prefer async's approach