pub trait ToOwned<T> where
    T: Clone
{ type Owned; fn to_owned(&self) -> Self::Owned; fn whatever(&self) -> T; }