Added checksum feature, untested