@SuppressWarnings("UseOfSystemOutOrSystemErr")
  public static void main(String[] args) {
    try {
      if (args.length < 1) {
        throw new IllegalArgumentException("No arguments specified!");
      }

      String handlerId = ExternalAppUtil.getEnv(GitAskPassAppHandler.IJ_ASK_PASS_HANDLER_ENV);
      int xmlRpcPort = ExternalAppUtil.getEnvInt(GitAskPassAppHandler.IJ_ASK_PASS_PORT_ENV);

      String description = args[0];

      ExternalAppUtil.Result result = ExternalAppUtil.sendIdeRequest(GitAskPassAppHandler.ENTRY_POINT_NAME, xmlRpcPort,
                                                                     handlerId, description);
      if (result.isError) {
        System.err.println(result.getPresentableError());
        System.exit(1);
      }

      String ans = result.response;
      if (ans == null) {
        System.err.println("Authentication request was cancelled");
        System.exit(0);
      }

      System.out.println(ans);
      System.exit(0);
    }
    catch (Throwable t) {
      t.printStackTrace(System.err);
      System.err.println("Could not communicate with IDE: " + t.getMessage());
      System.exit(1);
    }
  }
@SuppressWarnings("UseOfSystemOutOrSystemErr")
  public static void main(String[] args)