pub trait ColorType { type ValueType; // Required method fn channel(&self, c: usize) -> Option<Self::ValueType>; }