docs: public static void main(String[] args) throws IOException {
          MDC.put("process", "host controller");
  
  
          // Grab copies of our streams.
          final InputStream in = System.in;
          //final PrintStream out = System.out;
          //final PrintStream err = System.err;
  
          byte[] authKey = new byte[ProcessController.AUTH_BYTES_ENCODED_LENGTH];
          try {
              StreamUtils.readFully(new Base64InputStream(System.in), authKey);
          } catch (IOException e) {
              STDERR.println(HostControllerLogger.ROOT_LOGGER.failedToReadAuthenticationKey(e));
              fail();
              return;
          }
  
          // Make sure our original stdio is properly captured.
          try {
              Class.forName(ConsoleHandler.class.getName(), true, ConsoleHandler.class.getClassLoader());
          } catch (Throwable ignored) {
          }
  
          // Install JBoss Stdio to avoid any nasty crosstalk.
          StdioContext.install();
          final StdioContext context = StdioContext.create(
              new NullInputStream(),
              new LoggingOutputStream(Logger.getLogger("stdout"), Level.INFO),
              new LoggingOutputStream(Logger.getLogger("stderr"), Level.ERROR)
          );
          StdioContext.setStdioContextSelector(new SimpleStdioContextSelector(context));
  
          create(args, new String(authKey, Charset.forName("US-ASCII")));
  
          while (in.read() != -1) {}
          exit();
      }