added crc checksum