When reducing the checksum from a 32-bit or 64-bit intermediate, we can get an overflow after the first overflow handling step: 0000_8000_8000_ffff -> 10_ffff -> 1_000f -> 0010 Since we lacked the second step, we got an off-by-one in the checksum.