docs: protected final void resize(int requiredSize) {
      // Double until 64, then increase by 50% each time.
      int newCapacity = ((queue.length < 64) ? ((queue.length + 1) << 1) : ((queue.length >> 1) + queue.length));
      // overflow?
      if(newCapacity < 0) {
        throw new OutOfMemoryError();
      }
      if(requiredSize > newCapacity) {
        newCapacity = requiredSize;
      }
      queue = Arrays.copyOf(queue, newCapacity);
    }