docs: public boolean awaitUninterruptibly(final long timeout, final TimeUnit unit) {
          boolean interrupted = Thread.interrupted();
          long now = System.nanoTime();
          long remaining = unit.toNanos(timeout);
          try {
              while (true) {
                  if (remaining <= 0L) return false;
                  try {
                      return await(remaining, TimeUnit.NANOSECONDS);
                  } catch (InterruptedException ie) {
                      interrupted = true;
                      remaining -= (-now + (now = System.nanoTime()));
                  }
              }
          } finally {
              if (interrupted) Thread.currentThread().interrupt();
          }
      }