code: @Contract(pure = true)
  	public boolean hasRemainingBytes(int remaining) {
  		assert remaining >= 0;
  		if (remaining == 0) return true;
  		for (int i = first; i != last; i = next(i)) {
  			int bufRemaining = bufs[i].readRemaining();
  			if (bufRemaining >= remaining)
  				return true;
  			remaining -= bufRemaining;
  		}
  		return false;
  	}
docs: Checks if this queue has at least {@code remaining} bytes.
  
  @param remaining number of bytes to be checked
  @return true if the queue contains at least {@code remaining} bytes