pub type ProjectedFuture<'a, T> = Pin<Box<dyn Future<Output = T> + Send + 'a>>;
pub struct ProjectedFuture<'a, T> { /* private fields */ }