code: private E peekExpired() {
          // assert lock.isHeldByCurrentThread();
          E first = q.peek();
          return (first == null || first.getDelay(NANOSECONDS) > 0) ?
              null : first;
      }
docs: Returns first element only if it is expired.
  Used only by drainTo.  Call only when holding lock.