// File: /workspace/github_c_makefile_star2_O2/genometools[P]genometools/src/tools/gt_tallymer.c
// Function: gt_tyr_search_option_parser_new
static GtOptionParser *gt_tyr_search_option_parser_new(void *tool_arguments)
{
  GtOptionParser *op;
  GtOption *option, *optiontyr, *optionqueries;
  Tyr_search_options *arguments = tool_arguments;

  op = gt_option_parser_new("[options] -tyr tallymer-index -q queryfile0 "
                            "[queryfile1..] [options]",
                            "Search a set of k-mers in an index constructed "
                            "by ``gt tallymer mkindex''.");
  gt_option_parser_set_mail_address(op, "<kurtz@zbh.uni-hamburg.de>");

  optiontyr = gt_option_new_string("tyr","specify tallymer-index",
                                   arguments->str_inputindex,
                                   NULL);
  gt_option_is_mandatory(optiontyr);
  gt_option_parser_add_option(op, optiontyr);

  optionqueries = gt_option_new_filename_array("q","specify query file names",
                                               arguments->queryfilenames);
  gt_option_is_mandatory(optionqueries);
  gt_option_parser_add_option(op, optionqueries);

  option = gt_option_new_string("strand",
                                "specify the strand to be searched: "
                                "use f (for forward strand) or "
                                "p (for reverse complemented strand) or "
                                "fp (for both); default is f",
                                arguments->strandspec,
                                "f");
  gt_option_parser_add_option(op, option);

  option = gt_option_new_string_array("output",
                                      "specify output flags "
                                      "(qseqnum, qpos, counts, sequence)",
                                      arguments->showmodespec);
  gt_option_parser_add_option(op, option);

  option = gt_option_new_bool("test", "perform tests to verify program "
                                      "correctness", &arguments->performtest,
                                      false);
  gt_option_is_development_option(option);
  gt_option_parser_add_option(op, option);

  option = gt_option_new_verbose(&arguments->verbose);
  gt_option_parser_add_option(op, option);

  return op;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %r14
leaq 0x2a8944(%rip), %rdi    # 0x2fd005
leaq 0x2a8982(%rip), %rsi    # 0x2fd04a
callq 0x97df5
movq %rax, %rbx
leaq 0x291bf5(%rip), %rsi    # 0x2e62cc
movq %rax, %rdi
callq 0x98288
movq (%r14), %rdx
leaq 0x2a89ac(%rip), %rdi    # 0x2fd095
leaq 0x2a89a9(%rip), %rsi    # 0x2fd099
xorl %ecx, %ecx
callq 0x9ad12
movq %rax, %r15
movq %rax, %rdi
callq 0x9ae37
movq %rbx, %rdi
movq %r15, %rsi
callq 0x97f31
movq 0x8(%r14), %rdx
leaq 0x2d2330(%rip), %rdi    # 0x326a48
leaq 0x2a8991(%rip), %rsi    # 0x2fd0b0
callq 0x9ad7e
movq %rax, %r15
movq %rax, %rdi
callq 0x9ae37
movq %rbx, %rdi
movq %r15, %rsi
callq 0x97f31
movq 0x10(%r14), %rdx
leaq 0x2a20a1(%rip), %rdi    # 0x2f67e6
leaq 0x2a897d(%rip), %rsi    # 0x2fd0c9
leaq 0x2a89f8(%rip), %rcx    # 0x2fd14b
callq 0x9ad12
movq %rbx, %rdi
movq %rax, %rsi
callq 0x97f31
movq 0x18(%r14), %rdx
leaq 0x2b7b99(%rip), %rdi    # 0x30c307
leaq 0x2a89d8(%rip), %rsi    # 0x2fd14d
callq 0x9ad43
movq %rbx, %rdi
movq %rax, %rsi
callq 0x97f31
leaq 0x29(%r14), %rdx
leaq 0x293253(%rip), %rdi    # 0x2e79e3
leaq 0x2a81df(%rip), %rsi    # 0x2fc976
xorl %ecx, %ecx
callq 0x9a997
movq %rax, %r15
movq %rax, %rdi
callq 0x9b10a
movq %rbx, %rdi
movq %r15, %rsi
callq 0x97f31
addq $0x28, %r14
movq %r14, %rdi
callq 0x9a9b6
movq %rbx, %rdi
movq %rax, %rsi
callq 0x97f31
movq %rbx, %rax
popq %rbx
popq %r14
popq %r15
retq