code: public ByteArrayQueue remove(int len) {
  		offset += len;
  		length -= len;
  		// Release buffer if empty
  		if (length == 0 && array.length > 1024) {
  			array = new byte[32];
  			offset = 0;
  			shared = false;
  		}
  		return this;
  	}
docs: Removes a sequence of bytes from the head of the queue.