pub trait Alphabet { fn encode(self, input: &[u8]) -> String; fn decode(self, input: &str) -> Result<Vec<u8>, DecodeError>; }