// File: /workspace/github_c_makefile_star2_O1/genometools[P]genometools/src/annotationsketch/gt_sketch_page.c
// Function: gt_sketch_page_option_parser_new
static GtOptionParser* gt_sketch_page_option_parser_new(void *tool_arguments)
{
  SketchPageArguments *arguments = tool_arguments;
  GtOptionParser *op;
  static const char *formats[] = {
#ifdef CAIRO_HAS_PDF_SURFACE
    "pdf",
#endif
#ifdef CAIRO_HAS_PS_SURFACE
    "ps",
#endif
    NULL
  };
  GtOption *o;
  op = gt_option_parser_new("outfile annotationfile",
                            "Draw a multi-page PDF/PS representation of "
                            "an annotation file.");
  o = gt_option_new_string("seqid", "sequence region to draw\n"
                                    "default: first in file",
                           arguments->seqid, NULL);
  gt_option_parser_add_option(op, o);
  gt_option_hide_default(o);

  o = gt_option_new_string("text", "text to show in header\n"
                                  "default: file name",
                           arguments->text, NULL);
  gt_option_parser_add_option(op, o);
  gt_option_hide_default(o);

  o = gt_option_new_double("fontsize", "header and footer font size "
                                       "(in points)",
                           &arguments->theight, 10.0);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_range("range", "range to draw (e.g. 100 10000)\n"
                                   "default: full range",
                          &arguments->range, NULL);
  gt_option_parser_add_option(op, o);
  gt_option_hide_default(o);

  o = gt_option_new_uword_min("linewidth", "base width of a single "
                                           "repeated unit",
                              &arguments->width, 2000, 1000);
  gt_option_is_mandatory(o);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_double("width", "page width in millimeters "
                                    "(default: DIN A4)",
                           &arguments->pwidth, 210.0);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_double("height", "page height in millimeters "
                                     "(default: DIN A4)",
                           &arguments->pheight, 297.0);
  gt_option_parser_add_option(op, o);

  o = gt_option_new_choice("format", "output format\n"
                                     "choose from: "
#ifdef CAIRO_HAS_PDF_SURFACE
                                       "pdf"
#ifdef CAIRO_HAS_PS_SURFACE
                                       "|"
#endif
#endif
#ifdef CAIRO_HAS_PS_SURFACE
                                       "ps"
#endif
                                       "",
                            arguments->format, formats[0], formats );
  gt_option_parser_add_option(op, o);

  o = gt_option_new_string("style", "style file to use\n"
                                    "default: gtdata/sketch/default.style",
                                arguments->stylefile,
                                gt_str_get(arguments->stylefile));
  gt_option_parser_add_option(op, o);
  gt_option_hide_default(o);

  o = gt_option_new_filename("seqfile", "sequence file for GC content view",
                                arguments->seqfile);
  gt_option_parser_add_option(op, o);
  gt_option_is_extended_option(o);

  gt_option_parser_set_min_max_args(op, 2, 2);
  return op;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %r14
leaq 0x1a8696(%rip), %rdi    # 0x3ceab6
leaq 0x1a86a6(%rip), %rsi    # 0x3ceacd
callq 0x10cc4e
movq %rax, %rbx
movq 0x30(%r14), %rdx
leaq 0x14275d(%rip), %rdi    # 0x368b97
leaq 0x1a86cb(%rip), %rsi    # 0x3ceb0c
xorl %ecx, %ecx
callq 0x10f987
movq %rax, %r15
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
movq %r15, %rdi
callq 0x10fe32
movq 0x48(%r14), %rdx
leaq 0x1a9f86(%rip), %rdi    # 0x3d03ef
leaq 0x1a86cb(%rip), %rsi    # 0x3ceb3b
xorl %ecx, %ecx
callq 0x10f987
movq %rax, %r15
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
movq %r15, %rdi
callq 0x10fe32
leaq 0x18(%r14), %rdx
leaq 0x1a86cd(%rip), %rdi    # 0x3ceb65
leaq 0x1a86cf(%rip), %rsi    # 0x3ceb6e
movsd 0x137b31(%rip), %xmm0   # 0x35dfd8
callq 0x10f562
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
leaq 0x20(%r14), %rdx
leaq 0x1602fa(%rip), %rdi    # 0x3867bc
leaq 0x1a86cd(%rip), %rsi    # 0x3ceb96
xorl %ecx, %ecx
callq 0x10f913
movq %rax, %r15
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
movq %r15, %rdi
callq 0x10fe32
leaq 0x1a86dc(%rip), %rdi    # 0x3cebc9
leaq 0x1a86df(%rip), %rsi    # 0x3cebd3
movl $0x7d0, %ecx            # imm = 0x7D0
movl $0x3e8, %r8d            # imm = 0x3E8
movq %r14, %rdx
callq 0x10f7ed
movq %rax, %r15
movq %rax, %rdi
callq 0x10fa96
movq %rbx, %rdi
movq %r15, %rsi
callq 0x10cd10
leaq 0x8(%r14), %rdx
leaq 0x19a3de(%rip), %rdi    # 0x3c0906
leaq 0x1a86c9(%rip), %rsi    # 0x3cebf8
movsd 0x1a8519(%rip), %xmm0   # 0x3cea50
callq 0x10f562
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
leaq 0x10(%r14), %rdx
leaq 0x1c9d01(%rip), %rdi    # 0x3f0253
leaq 0x1a86cb(%rip), %rsi    # 0x3cec24
movsd 0x1a84f7(%rip), %xmm0   # 0x3cea58
callq 0x10f562
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
movq 0x38(%r14), %rdx
movq 0x29f7c4(%rip), %rcx    # 0x4c5d40
leaq 0x29f7bd(%rip), %r8     # 0x4c5d40
leaq 0x13e6ca(%rip), %rdi    # 0x364c54
leaq 0x1a86c0(%rip), %rsi    # 0x3cec51
callq 0x10fa04
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
movq 0x40(%r14), %r15
movq %r15, %rdi
callq 0x120d23
leaq 0x1a8f56(%rip), %rdi    # 0x3cf50a
leaq 0x1a86b8(%rip), %rsi    # 0x3cec73
movq %r15, %rdx
movq %rax, %rcx
callq 0x10f987
movq %rax, %r15
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
movq %r15, %rdi
callq 0x10fe32
movq 0x50(%r14), %rdx
leaq 0x180c8e(%rip), %rdi    # 0x3a7275
leaq 0x1a86bc(%rip), %rsi    # 0x3cecaa
callq 0x10f9c6
movq %rax, %r14
movq %rbx, %rdi
movq %rax, %rsi
callq 0x10cd10
movq %r14, %rdi
callq 0x10fbdf
movq %rbx, %rdi
movl $0x2, %esi
movl $0x2, %edx
callq 0x10d784
movq %rbx, %rax
popq %rbx
popq %r14
popq %r15
retq