docs: public static <T> T get(Future<T> future, long timeout, TimeUnit timeUnit) {
      try {
        return future.get(timeout, timeUnit);
      } catch (InterruptedException | ExecutionException | TimeoutException e) {
        throw new RuntimeException(e);
      }
    }