added checksum & minor change