header and checksum work