pub fn checksum(input: &[u32], s1: Option<u32>, s2: Option<u32>) -> (u32, u32)