pub trait ParamTake<T> { type Transformed; // Required method fn param_take(self) -> (Self::Transformed, T); }