Packing and unpacking binary data