pub fn calculate_hash<T: Hash>(t: &T) -> u64