pub type FailFuture<'a, T> = Pin<Box<dyn Send + Future<Output = Result<T>> + 'a>>;
struct FailFuture<'a, T> {}