pub trait VerifySignature {
// Required methods
fn selector(&self) -> &str;
fn domain(&self) -> &str;
fn signature(&self) -> &[u8] ⓘ;
fn algorithm(&self) -> Algorithm;
// Provided method
fn domain_key(&self) -> String { ... }
}