@Override public int read(byte[] dst, int offset, int length) {
      if (available() == 0) return -1;
      int toRead = checkReadArguments(dst, offset, length);
      if (toRead == 0) return 0;
      System.arraycopy(buf, this.offset, dst, 0, toRead);
      this.offset += toRead;
      return toRead;
    }
Do not use the buffer passed here after, as it may be manipulated directly.
zipkin/src/main/java/zipkin2/internal/ReadBuffer.java