// File: /workspace/github_c_makefile_star2_O0/hilbix[P]unbuffered/./tino/getopt.h
// Function: tino_getopt_usage
static void
tino_getopt_usage(char **argv, struct tino_getopt_impl *q, int opts, int help)
{
  const char	*arg0, *usage, *date, *rest;
  int		i, optlen, datelen;

  optlen	= tino_getopt_tab(q[-1].opt, &date);
  datelen	= tino_getopt_tab(date, &rest);

  usage	= q[0].opt;
#ifndef TINO_GETOPT_USAGE_FULL_PATH
  if ((arg0=strrchr(argv[0], '/'))!=0 ||	/* Unix	*/
      (arg0=strrchr(argv[0], '\\'))!=0)		/* Windows, sigh	*/
    arg0++;
  else
#endif
    arg0	= argv[0];

  if (help!=-1)	/* Not usage requested	*/
    for (help=opts; --help>=1; )
      if (q[help].type==TINO_GETOPT_TYPE_HELP)
        break;
  if (help>0)
    {
      /* Print only a short usage if not requested.
       * Only possible if there is a usage option.
       */
      fprintf(stderr, "%s: for help try option ", arg0);
      tino_getopt_print_option_name(q+help, 0, "\n");
      return;
    }

  fprintf(stderr,
          "Usage: %s [options]%.*s\n"
          "\t\tversion %.*s compiled %.*s"
          , arg0, tino_getopt_tab(usage, &usage), q[0].opt,
          optlen, q[-1].opt,
          datelen, date);
  if (*usage)
    {
      usage--;	/* bing back the LF	*/
      do
        {
          char	buf[130], *tmp;

          strncpy(buf, usage, sizeof buf);
          buf[(sizeof buf)-1]	= 0;
          tmp	= strchr(buf, '\n');
          if (tmp)
            *++tmp	= 0;
          usage	+= strlen(buf);
          fprintf(stderr, buf, arg0);
        } while (*usage);
    }
  fprintf(stderr, "\nOptions:\n");
  for (i=0; ++i<opts; )
    {
      char		auxbuf[TINO_GETOPT_AUXBUF_SIZE];
      const char	*s;
      int		j;

      if (q[i].type<0)
        continue;

      fputc('\t', stderr);
      tino_getopt_print_option_name(q+i, 1, "\n");
      s	= "\t\t(";
      for (j=0; ++j<opts; )
        if (j!=i && q[j].varptr==q[i].varptr && q[i].type>TINO_GETOPT_TYPE_HELP && q[j].type>TINO_GETOPT_TYPE_HELP)
          {
            fprintf(stderr, "%ssee ", s);
            tino_getopt_print_option_name(q+j, 0, NULL);
            s	= ", ";
            break;
          }
      if (q[i].DEFAULT_ENV_var)
        {
          fprintf(stderr, "%senv '%s'", s, q[i].DEFAULT_ENV_var);
          s	= " ";
        }
      if (q[i].NODEFAULT_var || q[i].DEFAULT_var)
        {
          fprintf(stderr, "%sdefault ", s);
          s	= tino_getopt_var_to_str(q[i].varptr, q[i].type, auxbuf);
          fprintf(stderr, (s==auxbuf ? "%s" : "'%s'"), s);
          s	= " ";
        }
      if (q[i].MIN_var)
        {
          fprintf(stderr, "%s%s ", s, (q[i].type==TINO_GETOPT_TYPE_STRINGFLAG || !(q[i].MAX_var || q[i].MAX_PTR_var) ? "set to" : "from"));
          s	= tino_getopt_var_to_str(&q[i].min, q[i].type, auxbuf);
          fprintf(stderr, (s==auxbuf ? "%s" : "'%s'"), s);
          s	= " ";
        }
      if (q[i].MIN_PTR_var)
        {
          fprintf(stderr, "%s%s* ", s, (q[i].type==TINO_GETOPT_TYPE_STRINGFLAG || !(q[i].MAX_var || q[i].MAX_PTR_var) ? "set to" : "from"));
          s	= tino_getopt_var_to_str(q[i].MIN_PTR_var, q[i].type, auxbuf);
          fprintf(stderr, (s==auxbuf ? "%s" : "'%s'"), s);
          s	= " ";
        }
      if (q[i].MAX_var)
        {
          fprintf(stderr, "%sto ", s);
          s	= tino_getopt_var_to_str(&q[i].max, q[i].type, auxbuf);
          fprintf(stderr, (s==auxbuf ? "%s" : "'%s'"), s);
          s	= " ";
        }
      if (q[i].MAX_PTR_var)
        {
          fprintf(stderr, "%sto* ", s);
          s	= tino_getopt_var_to_str(q[i].MAX_PTR_var, q[i].type, auxbuf);
          fprintf(stderr, (s==auxbuf ? "%s" : "'%s'"), s);
          s	= " ";
        }
      if (*s!='\t')
        fprintf(stderr, ")\n");
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x170, %rsp            # imm = 0x170
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movl %ecx, -0x18(%rbp)
movq -0x10(%rbp), %rax
movq -0x70(%rax), %rdi
leaq -0x30(%rbp), %rsi
callq 0x6080
movl %eax, -0x40(%rbp)
movq -0x30(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x6080
movl %eax, -0x44(%rbp)
movq -0x10(%rbp), %rax
movq 0x40(%rax), %rax
movq %rax, -0x28(%rbp)
movq -0x8(%rbp), %rax
movq (%rax), %rdi
movl $0x2f, %esi
callq 0x2120
movq %rax, -0x20(%rbp)
cmpq $0x0, %rax
jne 0x578f
movq -0x8(%rbp), %rax
movq (%rax), %rdi
movl $0x5c, %esi
callq 0x2120
movq %rax, -0x20(%rbp)
cmpq $0x0, %rax
je 0x579d
movq -0x20(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x20(%rbp)
jmp 0x57a8
movq -0x8(%rbp), %rax
movq (%rax), %rax
movq %rax, -0x20(%rbp)
cmpl $-0x1, -0x18(%rbp)
je 0x57df
movl -0x14(%rbp), %eax
movl %eax, -0x18(%rbp)
movl -0x18(%rbp), %eax
addl $-0x1, %eax
movl %eax, -0x18(%rbp)
cmpl $0x1, %eax
jl 0x57dd
movq -0x10(%rbp), %rax
movslq -0x18(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, (%rax)
jne 0x57db
jmp 0x57dd
jmp 0x57b4
jmp 0x57df
cmpl $0x0, -0x18(%rbp)
jle 0x5826
movq 0xb80c(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x20(%rbp), %rdx
leaq 0x839c(%rip), %rsi      # 0xdb96
movb $0x0, %al
callq 0x2200
movq -0x10(%rbp), %rdi
movslq -0x18(%rbp), %rax
imulq $0xb0, %rax, %rax
addq %rax, %rdi
xorl %esi, %esi
leaq 0x79f5(%rip), %rdx      # 0xd211
callq 0x96a0
jmp 0x6070
movq 0xb7cb(%rip), %rax      # 0x10ff8
movq (%rax), %rax
movq %rax, -0x120(%rbp)
movq -0x20(%rbp), %rax
movq %rax, -0x118(%rbp)
movq -0x28(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x6080
movq -0x120(%rbp), %rdi
movq -0x118(%rbp), %rdx
movl %eax, %ecx
movq -0x10(%rbp), %rax
movq 0x40(%rax), %r8
movl -0x40(%rbp), %r9d
movq -0x10(%rbp), %rax
movq -0x70(%rax), %r11
movl -0x44(%rbp), %r10d
movq -0x30(%rbp), %rax
leaq 0x832d(%rip), %rsi      # 0xdbaf
movq %r11, (%rsp)
movl %r10d, 0x8(%rsp)
movq %rax, 0x10(%rsp)
movb $0x0, %al
callq 0x2200
movq -0x28(%rbp), %rax
cmpb $0x0, (%rax)
je 0x5943
movq -0x28(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x28(%rbp)
leaq -0xd0(%rbp), %rdi
movq -0x28(%rbp), %rsi
movl $0x82, %edx
callq 0x2080
movb $0x0, -0x4f(%rbp)
leaq -0xd0(%rbp), %rdi
movl $0xa, %esi
callq 0x2100
movq %rax, -0xd8(%rbp)
cmpq $0x0, -0xd8(%rbp)
je 0x5904
movq -0xd8(%rbp), %rax
movq %rax, %rcx
addq $0x1, %rcx
movq %rcx, -0xd8(%rbp)
movb $0x0, 0x1(%rax)
leaq -0xd0(%rbp), %rdi
callq 0x20e0
addq -0x28(%rbp), %rax
movq %rax, -0x28(%rbp)
movq 0xb6d9(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
leaq -0xd0(%rbp), %rsi
movq -0x20(%rbp), %rdx
movb $0x0, %al
callq 0x2200
movq -0x28(%rbp), %rax
cmpb $0x0, (%rax)
jne 0x58b0
jmp 0x5943
movq 0xb6ae(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
leaq 0x8290(%rip), %rsi      # 0xdbe4
movb $0x0, %al
callq 0x2200
movl $0x0, -0x3c(%rbp)
movl -0x3c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x3c(%rbp)
cmpl -0x14(%rbp), %eax
jge 0x6070
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, (%rax)
jge 0x598d
jmp 0x5962
movq 0xb664(%rip), %rax      # 0x10ff8
movq (%rax), %rsi
movl $0x9, %edi
callq 0x21a0
movq -0x10(%rbp), %rdi
movslq -0x3c(%rbp), %rax
imulq $0xb0, %rax, %rax
addq %rax, %rdi
movl $0x1, %esi
leaq 0x7852(%rip), %rdx      # 0xd211
callq 0x96a0
leaq 0x8224(%rip), %rax      # 0xdbef
movq %rax, -0x108(%rbp)
movl $0x0, -0x10c(%rbp)
movl -0x10c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x10c(%rbp)
cmpl -0x14(%rbp), %eax
jge 0x5abd
movl -0x10c(%rbp), %eax
cmpl -0x3c(%rbp), %eax
je 0x5ab8
movq -0x10(%rbp), %rax
movslq -0x10c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movq 0x8(%rax), %rax
movq -0x10(%rbp), %rcx
movslq -0x3c(%rbp), %rdx
imulq $0xb0, %rdx, %rdx
addq %rdx, %rcx
cmpq 0x8(%rcx), %rax
jne 0x5ab8
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, (%rax)
jle 0x5ab8
movq -0x10(%rbp), %rax
movslq -0x10c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, (%rax)
jle 0x5ab8
movq 0xb588(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rdx
leaq 0x8172(%rip), %rsi      # 0xdbf3
movb $0x0, %al
callq 0x2200
movq -0x10(%rbp), %rdi
movslq -0x10c(%rbp), %rax
imulq $0xb0, %rax, %rax
addq %rax, %rdi
xorl %esi, %esi
xorl %eax, %eax
movl %eax, %edx
callq 0x96a0
leaq 0x814b(%rip), %rax      # 0xdbfa
movq %rax, -0x108(%rbp)
jmp 0x5abd
jmp 0x59dc
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpq $0x0, 0x38(%rax)
je 0x5b19
movq 0xb51b(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rdx
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movq 0x38(%rax), %rcx
leaq 0x80f9(%rip), %rsi      # 0xdbfd
movb $0x0, %al
callq 0x2200
leaq 0x8125(%rip), %rax      # 0xdc37
movq %rax, -0x108(%rbp)
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, 0x50(%rax)
jne 0x5b4d
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, 0x54(%rax)
je 0x5bf2
movq 0xb4a4(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rdx
leaq 0x80a3(%rip), %rsi      # 0xdc08
movb $0x0, %al
callq 0x2200
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movq 0x8(%rax), %rdi
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movl (%rax), %esi
leaq -0x100(%rbp), %rdx
callq 0x9040
movq %rax, -0x108(%rbp)
movq 0xb448(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rcx
leaq -0x100(%rbp), %rdx
leaq 0x803b(%rip), %rsi      # 0xdc03
leaq 0x80c1(%rip), %rax      # 0xdc90
cmpq %rdx, %rcx
cmoveq %rax, %rsi
movq -0x108(%rbp), %rdx
movb $0x0, %al
callq 0x2200
leaq 0x804c(%rip), %rax      # 0xdc37
movq %rax, -0x108(%rbp)
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, 0x78(%rax)
je 0x5d59
movq 0xb3e3(%rip), %rax      # 0x10ff8
movq (%rax), %rax
movq %rax, -0x138(%rbp)
movq -0x108(%rbp), %rax
movq %rax, -0x130(%rbp)
movq -0x10(%rbp), %rcx
movslq -0x3c(%rbp), %rax
imulq $0xb0, %rax, %rax
addq %rax, %rcx
movb $0x1, %al
cmpl $0x2, (%rcx)
movb %al, -0x121(%rbp)
je 0x5c9a
movq -0x10(%rbp), %rcx
movslq -0x3c(%rbp), %rax
imulq $0xb0, %rax, %rax
addq %rax, %rcx
movb $0x1, %al
cmpl $0x0, 0x7c(%rcx)
movb %al, -0x139(%rbp)
jne 0x5c8c
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpq $0x0, 0x28(%rax)
setne %al
movb %al, -0x139(%rbp)
movb -0x139(%rbp), %al
xorb $-0x1, %al
movb %al, -0x121(%rbp)
movq -0x130(%rbp), %rdx
movq -0x138(%rbp), %rdi
movb -0x121(%rbp), %sil
leaq 0x7f6a(%rip), %rcx      # 0xdc20
leaq 0x7f5c(%rip), %rax      # 0xdc19
testb $0x1, %sil
cmovneq %rax, %rcx
leaq 0x7f47(%rip), %rsi      # 0xdc13
movb $0x0, %al
callq 0x2200
movq -0x10(%rbp), %rdi
movslq -0x3c(%rbp), %rax
imulq $0xb0, %rax, %rax
addq %rax, %rdi
addq $0x10, %rdi
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movl (%rax), %esi
leaq -0x100(%rbp), %rdx
callq 0x9040
movq %rax, -0x108(%rbp)
movq 0xb2e1(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rcx
leaq -0x100(%rbp), %rdx
leaq 0x7ed4(%rip), %rsi      # 0xdc03
leaq 0x7f5a(%rip), %rax      # 0xdc90
cmpq %rdx, %rcx
cmoveq %rax, %rsi
movq -0x108(%rbp), %rdx
movb $0x0, %al
callq 0x2200
leaq 0x7ee5(%rip), %rax      # 0xdc37
movq %rax, -0x108(%rbp)
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpq $0x0, 0x20(%rax)
je 0x5ec1
movq 0xb27b(%rip), %rax      # 0x10ff8
movq (%rax), %rax
movq %rax, -0x150(%rbp)
movq -0x108(%rbp), %rax
movq %rax, -0x148(%rbp)
movq -0x10(%rbp), %rcx
movslq -0x3c(%rbp), %rax
imulq $0xb0, %rax, %rax
addq %rax, %rcx
movb $0x1, %al
cmpl $0x2, (%rcx)
movb %al, -0x13a(%rbp)
je 0x5e02
movq -0x10(%rbp), %rcx
movslq -0x3c(%rbp), %rax
imulq $0xb0, %rax, %rax
addq %rax, %rcx
movb $0x1, %al
cmpl $0x0, 0x7c(%rcx)
movb %al, -0x151(%rbp)
jne 0x5df4
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpq $0x0, 0x28(%rax)
setne %al
movb %al, -0x151(%rbp)
movb -0x151(%rbp), %al
xorb $-0x1, %al
movb %al, -0x13a(%rbp)
movq -0x148(%rbp), %rdx
movq -0x150(%rbp), %rdi
movb -0x13a(%rbp), %sil
leaq 0x7e02(%rip), %rcx      # 0xdc20
leaq 0x7df4(%rip), %rax      # 0xdc19
testb $0x1, %sil
cmovneq %rax, %rcx
leaq 0x7df1(%rip), %rsi      # 0xdc25
movb $0x0, %al
callq 0x2200
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movq 0x20(%rax), %rdi
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movl (%rax), %esi
leaq -0x100(%rbp), %rdx
callq 0x9040
movq %rax, -0x108(%rbp)
movq 0xb179(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rcx
leaq -0x100(%rbp), %rdx
leaq 0x7d6c(%rip), %rsi      # 0xdc03
leaq 0x7df2(%rip), %rax      # 0xdc90
cmpq %rdx, %rcx
cmoveq %rax, %rsi
movq -0x108(%rbp), %rdx
movb $0x0, %al
callq 0x2200
leaq 0x7d7d(%rip), %rax      # 0xdc37
movq %rax, -0x108(%rbp)
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpl $0x0, 0x7c(%rax)
je 0x5f82
movq 0xb114(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rdx
leaq 0x7d37(%rip), %rsi      # 0xdc2c
movb $0x0, %al
callq 0x2200
movq -0x10(%rbp), %rdi
movslq -0x3c(%rbp), %rax
imulq $0xb0, %rax, %rax
addq %rax, %rdi
addq $0x18, %rdi
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movl (%rax), %esi
leaq -0x100(%rbp), %rdx
callq 0x9040
movq %rax, -0x108(%rbp)
movq 0xb0b8(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rcx
leaq -0x100(%rbp), %rdx
leaq 0x7cab(%rip), %rsi      # 0xdc03
leaq 0x7d31(%rip), %rax      # 0xdc90
cmpq %rdx, %rcx
cmoveq %rax, %rsi
movq -0x108(%rbp), %rdx
movb $0x0, %al
callq 0x2200
leaq 0x7cbc(%rip), %rax      # 0xdc37
movq %rax, -0x108(%rbp)
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
cmpq $0x0, 0x28(%rax)
je 0x6044
movq 0xb052(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rdx
leaq 0x7c7b(%rip), %rsi      # 0xdc32
movb $0x0, %al
callq 0x2200
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movq 0x28(%rax), %rdi
movq -0x10(%rbp), %rax
movslq -0x3c(%rbp), %rcx
imulq $0xb0, %rcx, %rcx
addq %rcx, %rax
movl (%rax), %esi
leaq -0x100(%rbp), %rdx
callq 0x9040
movq %rax, -0x108(%rbp)
movq 0xaff6(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
movq -0x108(%rbp), %rcx
leaq -0x100(%rbp), %rdx
leaq 0x7be9(%rip), %rsi      # 0xdc03
leaq 0x7c6f(%rip), %rax      # 0xdc90
cmpq %rdx, %rcx
cmoveq %rax, %rsi
movq -0x108(%rbp), %rdx
movb $0x0, %al
callq 0x2200
leaq 0x7bfa(%rip), %rax      # 0xdc37
movq %rax, -0x108(%rbp)
movq -0x108(%rbp), %rax
movsbl (%rax), %eax
cmpl $0x9, %eax
je 0x606b
movq 0xaf9e(%rip), %rax      # 0x10ff8
movq (%rax), %rdi
leaq 0x7818(%rip), %rsi      # 0xd87c
movb $0x0, %al
callq 0x2200
jmp 0x5962
addq $0x170, %rsp            # imm = 0x170
popq %rbp
retq
nopl (%rax)