added crc32
added macro