pub trait Resolve: Send + Sized + 'static { type Deps: Send; fn resolve(deps: Self::Deps) -> Result<Self>; }