only need to memcpy() the data portion