docs: private boolean waitForAdd(long waitStart, long maxWait) throws InterruptedException {
          while (this.size == 0) {
              if (!waitOnCondition(this.notEmpty, maxWait, waitStart)) {
                  return false;
              }
          }
  
          return true;
      }