does that need to be a function-in-function? also is yours not the same as: ```rust fn do_something(&mut self) -> Result<...> { self.check_and_repair_if_necessary().await?; self.do_something_inner().await } ```