// File: /workspace/github_c_makefile_star2_O1/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 0x294a95(%rip), %rdi    # 0x36614f
leaq 0x294ad3(%rip), %rsi    # 0x366194
callq 0x10cc4e
movq %rax, %rbx
leaq 0x27dbfc(%rip), %rsi    # 0x34f2cc
movq %rax, %rdi
callq 0x10ceab
movq (%r14), %rdx
leaq 0x294afd(%rip), %rdi    # 0x3661df
leaq 0x294afa(%rip), %rsi    # 0x3661e3
xorl %ecx, %ecx
callq 0x10f987
movq %rax, %r15
movq %rax, %rdi
callq 0x10fa96
movq %rbx, %rdi
movq %r15, %rsi
callq 0x10cd10
movq 0x8(%r14), %rdx
leaq 0x2be317(%rip), %rdi    # 0x38fa28
leaq 0x294ae2(%rip), %rsi    # 0x3661fa
callq 0x10f9f6
movq %rax, %r15
movq %rax, %rdi
callq 0x10fa96
movq %rbx, %rdi
movq %r15, %rsi
callq 0x10cd10
movq 0x10(%r14), %rdx
leaq 0x28e0c8(%rip), %rdi    # 0x35f806
leaq 0x294ace(%rip), %rsi    # 0x366213
leaq 0x294b49(%rip), %rcx    # 0x366295
callq 0x10f987
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
movq 0x18(%r14), %rdx
leaq 0x2a3b10(%rip), %rdi    # 0x375277
leaq 0x294b29(%rip), %rsi    # 0x366297
callq 0x10f9b8
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
leaq 0x29(%r14), %rdx
leaq 0x27f25a(%rip), %rdi    # 0x3509e3
leaq 0x294330(%rip), %rsi    # 0x365ac0
xorl %ecx, %ecx
callq 0x10f451
movq %rax, %r15
movq %rax, %rdi
callq 0x10fbef
movq %rbx, %rdi
movq %r15, %rsi
callq 0x10cd10
addq $0x28, %r14
movq %r14, %rdi
callq 0x10f473
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
movq %rbx, %rax
popq %rbx
popq %r14
popq %r15
retq