pub type WideWeak<T: ?Sized, B: ?Sized = T> = Weak<Box<T>, B>;
pub struct WideWeak<T: ?Sized, B: ?Sized = T> { /* private fields */ }