Major changes to checksum (untested)