// File: /workspace/github_c_makefile_star2_O3/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 0x28dfd5(%rip), %rdi    # 0x35d07e
leaq 0x28e013(%rip), %rsi    # 0x35d0c3
callq 0x107bfe
movq %rax, %rbx
leaq 0x27720d(%rip), %rsi    # 0x3462cc
movq %rax, %rdi
callq 0x107e5c
movq (%r14), %rdx
leaq 0x28e03d(%rip), %rdi    # 0x35d10e
leaq 0x28e03a(%rip), %rsi    # 0x35d112
xorl %ecx, %ecx
callq 0x10a770
movq %rax, %r15
movq %rax, %rdi
callq 0x10a87b
movq %rbx, %rdi
movq %r15, %rsi
callq 0x107cc0
movq 0x8(%r14), %rdx
leaq 0x2b7548(%rip), %rdi    # 0x386648
leaq 0x28e022(%rip), %rsi    # 0x35d129
callq 0x10a7df
movq %rax, %r15
movq %rax, %rdi
callq 0x10a87b
movq %rbx, %rdi
movq %r15, %rsi
callq 0x107cc0
movq 0x10(%r14), %rdx
leaq 0x2876a9(%rip), %rdi    # 0x3567d6
leaq 0x28e00e(%rip), %rsi    # 0x35d142
leaq 0x28e089(%rip), %rcx    # 0x35d1c4
callq 0x10a770
movq %rbx, %rdi
movq %rax, %rsi
callq 0x107cc0
movq 0x18(%r14), %rdx
leaq 0x29ced1(%rip), %rdi    # 0x36c027
leaq 0x28e069(%rip), %rsi    # 0x35d1c6
callq 0x10a7a1
movq %rbx, %rdi
movq %rax, %rsi
callq 0x107cc0
leaq 0x29(%r14), %rdx
leaq 0x27886b(%rip), %rdi    # 0x3479e3
leaq 0x28d8a1(%rip), %rsi    # 0x35ca20
xorl %ecx, %ecx
callq 0x10a235
movq %rax, %r15
movq %rax, %rdi
callq 0x10a9d4
movq %rbx, %rdi
movq %r15, %rsi
callq 0x107cc0
addq $0x28, %r14
movq %r14, %rdi
callq 0x10a257
movq %rbx, %rdi
movq %rax, %rsi
callq 0x107cc0
movq %rbx, %rax
popq %rbx
popq %r14
popq %r15
retq