checksum improved