pub fn entro_hash(input: &[u8], mut entropy: u32) -> u32 {
let mut i: usize = 0;
while i != input.len() {
entropy ^= ((input[i] as u32) + 111111) ^ 111111;
entropy = entropy.wrapping_add((!entropy ^ 1111111111) << 4);
entropy = (entropy << 31).wrapping_add(!entropy >> 1);
entropy = entropy.wrapping_add(entropy << 3);
entropy ^= input[i] as u32;
entropy = entropy.wrapping_add((entropy.wrapping_add(111111111)) << 9);
entropy = entropy.wrapping_add(entropy << 3);
entropy = entropy.wrapping_add(((!entropy).wrapping_add(entropy)) << 1);
i += 1;
}
return entropy;
}