pub trait Hasher { // Required method fn hash(&self, data: &[u8]) -> u64; // Provided method fn hash_rect(&self, data: &[u8], chunk: &Chunk, full: &Rect) -> Vec<u64> where Self: Sync { ... } }