readRawBytes(length) {
    const start = this.offset
    if (start + length > this.buf.byteLength) {
      throw new RangeError("subarray exceeds buffer size")
    }
    this.offset += length
    return this.buf.subarray(start, this.offset)
  }
Extracts a subarray `length` bytes in size, starting from the current
position in the buffer, and moves the position forward.