improve checksum speed
add eof marker