pub trait TryToOptional<T, E> { // Required method fn optional(self) -> Result<Option<T>, E> where Self: Sized; }