pub async fn wait_for_ok<F, Fut, T, E>(f: F) -> Result<T, Expired>where F: Fn() -> Fut, Fut: Future<Output = Result<T, E>>,