In Int32Value, cast to u32 before casting to u64. …
Casting to u64 directly is equivalent to first casting to i64, which does sign extension. For negative values, this fills the highest 32 bits with ones rather than the zeros we need.