pub trait Decouple { type Error; // Required method fn parse() -> Result<Self, Self::Error> where Self: Sized; }