pub trait Fallible { type Success; type Failure; // Required method fn to_result(self) -> Result<Self::Success, Self::Failure>; }