// File: /workspace/github_c_makefile_star2_O3/c-zhou[P]yahs/yahs.c
// Function: print_help
static void print_help(FILE *fp_help, int is_long_help)
{
    fprintf(fp_help, "Usage: yahs [options] <contigs.fa> <hic.bed>|<hic.bam>|<hic.pa5>|<hic.bin>\n");
    fprintf(fp_help, "Options:\n");
    fprintf(fp_help, "    -a FILE                AGP file (for rescaffolding) [none]\n");
    fprintf(fp_help, "    -r INT[,INT,...]       list of resolutions in ascending order [automate]\n");
    fprintf(fp_help, "    -R INT                 rounds to run at each resoultion level [1]\n");
    fprintf(fp_help, "    -e STR                 restriction enzyme cutting sites [none]\n");
    fprintf(fp_help, "    -l INT                 minimum length of a contig to scaffold [0]\n");
    fprintf(fp_help, "    -q INT                 minimum mapping quality [10]\n");
    fprintf(fp_help, "\n");
    fprintf(fp_help, "    --no-contig-ec         do not do contig error correction\n");
    fprintf(fp_help, "    --no-scaffold-ec       do not do scaffold error correction\n");
    fprintf(fp_help, "    --no-mem-check         do not do memory check at runtime\n");
    fprintf(fp_help, "    --file-type   STR      input file type BED|BAM|PA5|BIN, file name extension is ignored if set\n");
    fprintf(fp_help, "    --read-length          read length (required for PA5 format input) [150]\n");
    fprintf(fp_help, "    --telo-motif  STR      telomeric sequence motif\n");
    if (is_long_help) {
        fprintf(fp_help, "\n");
        fprintf(fp_help, "    --D-min-cells INT      minimum number of cells to calculate the distance threshold [30]\n");
        fprintf(fp_help, "    --D-mass-frac FLOAT    fraction of HiC signals to calculate the distance threshold [0.99]\n");
        fprintf(fp_help, "\n");
        fprintf(fp_help, "    --seq-ctype   STR      AGP output sequence component type [%s]\n", agp_component_type_val(DEFAULT_AGP_SEQ_COMPONENT_TYPE));
        fprintf(fp_help, "    --gap-ctype   STR      AGP output gap component type [%s]\n", agp_component_type_val(DEFAULT_AGP_GAP_COMPONENT_TYPE));
        fprintf(fp_help, "    --gap-link    STR      AGP output gap linkage evidence [%s]\n", agp_linkage_evidence_val(DEFAULT_AGP_LINKAGE_EVIDENCE));
        fprintf(fp_help, "    --gap-size    INT      AGP output gap size between sequence component [%d]\n", DEFAULT_AGP_GAP_SIZE);
        fprintf(fp_help, "\n");
        fprintf(fp_help, "    --convert-to-binary    make a binary ouput file from the input and exit\n");
        fprintf(fp_help, "    --print-telo-motifs    print telomeric motifs in the database and exit\n");
        fprintf(fp_help, "    --search-telo-ends     search telomeric ends in the sequences and exit\n");
    }
    fprintf(fp_help, "\n");
    fprintf(fp_help, "    -o STR                 prefix of output files [yahs.out]\n");
    fprintf(fp_help, "    -v INT                 verbose level [%d]\n", VERBOSE);
    fprintf(fp_help, "    -?                     print long help with extra option list\n");
    fprintf(fp_help, "    --version              show version number\n");
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
movl %esi, %ebp
movq %rdi, %rbx
leaq 0x3dbb(%rip), %rdi      # 0x25300
movl $0x4b, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3dee(%rip), %rdi      # 0x2534c
movl $0x9, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3ddf(%rip), %rdi      # 0x25356
movl $0x3f, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3e06(%rip), %rdi      # 0x25396
movl $0x4d, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3e3b(%rip), %rdi      # 0x253e4
movl $0x46, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3e69(%rip), %rdi      # 0x2542b
movl $0x43, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3e94(%rip), %rdi      # 0x2546f
movl $0x46, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3ec2(%rip), %rdi      # 0x254b6
movl $0x38, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
movl $0xa, %edi
movq %rbx, %rsi
callq 0x2260
leaq 0x3ed5(%rip), %rdi      # 0x254ef
movl $0x3d, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3efa(%rip), %rdi      # 0x2552d
movl $0x3f, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3f21(%rip), %rdi      # 0x2556d
movl $0x3d, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3f46(%rip), %rdi      # 0x255ab
movl $0x62, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3f90(%rip), %rdi      # 0x2560e
movl $0x4d, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3fc5(%rip), %rdi      # 0x2565c
movl $0x34, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
testl %ebp, %ebp
je 0x219c7
movl $0xa, %edi
movq %rbx, %rsi
callq 0x2260
leaq 0x3fcc(%rip), %rdi      # 0x25691
movl $0x5c, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x4010(%rip), %rdi      # 0x256ee
movl $0x5e, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
movl $0xa, %edi
movq %rbx, %rsi
callq 0x2260
leaq 0xabdc(%rip), %rax      # 0x2c2e0
movl (%rax), %eax
leaq 0x1b3f(%rip), %r14      # 0x2324c
leal -0x2b609(%rax), %ecx
cmpl $0x13, %ecx
ja 0x21731
leaq 0x2e49(%rip), %rdx      # 0x24568
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
leaq 0x347f(%rip), %rdx      # 0x24bae
jmp 0x2178d
movq %r14, %rdx
cmpl $0x2b606, %eax          # imm = 0x2B606
je 0x2178d
leaq 0x1f26(%rip), %rdi      # 0x23668
leaq 0x1f49(%rip), %rsi      # 0x23692
movl %eax, %edx
jmp 0x21a48
leaq 0x1afd(%rip), %rdx      # 0x23254
jmp 0x2178d
leaq 0x18a2(%rip), %rdx      # 0x23002
jmp 0x2178d
leaq 0x1ae5(%rip), %rdx      # 0x2324e
jmp 0x2178d
leaq 0x3444(%rip), %rdx      # 0x24bb6
jmp 0x2178d
leaq 0x1ad7(%rip), %rdx      # 0x23252
jmp 0x2178d
leaq 0x1acc(%rip), %rdx      # 0x23250
jmp 0x2178d
leaq 0x2c3c(%rip), %rdx      # 0x243c9
leaq 0x3fb9(%rip), %rsi      # 0x2574d
movq %rbx, %rdi
xorl %eax, %eax
callq 0x22c0
leaq 0xab3f(%rip), %rax      # 0x2c2e4
movl (%rax), %edx
leal -0x2b609(%rdx), %eax
cmpl $0x13, %eax
ja 0x217cb
leaq 0x2dff(%rip), %rcx      # 0x245b8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x33e5(%rip), %r14      # 0x24bae
jmp 0x21823
cmpl $0x2b606, %edx          # imm = 0x2B606
je 0x21823
leaq 0x1e8e(%rip), %rdi      # 0x23668
leaq 0x1eb1(%rip), %rsi      # 0x23692
jmp 0x21a48
leaq 0x1a67(%rip), %r14      # 0x23254
jmp 0x21823
leaq 0x180c(%rip), %r14      # 0x23002
jmp 0x21823
leaq 0x1a4f(%rip), %r14      # 0x2324e
jmp 0x21823
leaq 0x33ae(%rip), %r14      # 0x24bb6
jmp 0x21823
leaq 0x1a41(%rip), %r14      # 0x23252
jmp 0x21823
leaq 0x1a36(%rip), %r14      # 0x23250
jmp 0x21823
leaq 0x2ba6(%rip), %r14      # 0x243c9
leaq 0x3f67(%rip), %rsi      # 0x25791
movq %rbx, %rdi
movq %r14, %rdx
xorl %eax, %eax
callq 0x22c0
leaq 0xaaae(%rip), %rax      # 0x2c2ec
movl (%rax), %edx
cmpl $0xb888f82, %edx        # imm = 0xB888F82
jg 0x21880
cmpl $0xe2eecd08, %edx       # imm = 0xE2EECD08
jg 0x218b4
cmpl $0x995556b4, %edx       # imm = 0x995556B4
je 0x218fe
cmpl $0xb57b3070, %edx       # imm = 0xB57B3070
je 0x21922
cmpl $0xd37e4828, %edx       # imm = 0xD37E4828
jne 0x21a3a
leaq 0x1bae(%rip), %rdx      # 0x23429
jmp 0x21944
cmpl $0x13baa0b0, %edx       # imm = 0x13BAA0B0
jg 0x218d9
cmpl $0xb888f83, %edx        # imm = 0xB888F83
je 0x21907
cmpl $0xb889c8a, %edx        # imm = 0xB889C8A
je 0x2192b
cmpl $0xdc4ffd9, %edx        # imm = 0xDC4FFD9
jne 0x21a3a
leaq 0x1b87(%rip), %rdx      # 0x23436
jmp 0x21944
cmpl $0xe2eecd09, %edx       # imm = 0xE2EECD09
je 0x21910
cmpl $0xf627ffb1, %edx       # imm = 0xF627FFB1
je 0x21934
cmpl $0x5978d4, %edx         # imm = 0x5978D4
jne 0x21a3a
leaq 0x17db(%rip), %rdx      # 0x230b2
jmp 0x21944
cmpl $0x272d87fd, %edx       # imm = 0x272D87FD
je 0x21919
cmpl $0x1c93c7f4, %edx       # imm = 0x1C93C7F4
je 0x2193d
cmpl $0x13baa0b1, %edx       # imm = 0x13BAA0B1
jne 0x21a3a
leaq 0x1afa(%rip), %rdx      # 0x233f6
jmp 0x21944
leaq 0x1b60(%rip), %rdx      # 0x23465
jmp 0x21944
leaq 0x1b35(%rip), %rdx      # 0x23443
jmp 0x21944
leaq 0x1af7(%rip), %rdx      # 0x2340e
jmp 0x21944
leaq 0x1afb(%rip), %rdx      # 0x2341b
jmp 0x21944
leaq 0x1b22(%rip), %rdx      # 0x2344b
jmp 0x21944
leaq 0x1b15(%rip), %rdx      # 0x23447
jmp 0x21944
leaq 0x1ac7(%rip), %rdx      # 0x23402
jmp 0x21944
leaq 0x1b1a(%rip), %rdx      # 0x2345e
leaq 0x3e85(%rip), %rsi      # 0x257d0
movq %rbx, %rdi
xorl %eax, %eax
callq 0x22c0
leaq 0xa994(%rip), %rax      # 0x2c2f0
movl (%rax), %edx
leaq 0x3eac(%rip), %rsi      # 0x25811
movq %rbx, %rdi
xorl %eax, %eax
callq 0x22c0
movl $0xa, %edi
movq %rbx, %rsi
callq 0x2260
leaq 0x3ede(%rip), %rdi      # 0x25861
movl $0x4c, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3f12(%rip), %rdi      # 0x258ae
movl $0x4b, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3f45(%rip), %rdi      # 0x258fa
movl $0x4b, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
movl $0xa, %edi
movq %rbx, %rsi
callq 0x2260
leaq 0x3f6b(%rip), %rdi      # 0x25946
movl $0x3d, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
movl 0xac2d(%rip), %edx      # 0x2c620
leaq 0x3f8a(%rip), %rsi      # 0x25984
movq %rbx, %rdi
xorl %eax, %eax
callq 0x22c0
leaq 0x3fa8(%rip), %rdi      # 0x259b3
movl $0x42, %esi
movl $0x1, %edx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3fd2(%rip), %rdi      # 0x259f6
movl $0x2f, %esi
movl $0x1, %edx
movq %rbx, %rcx
popq %rbx
popq %r14
popq %rbp
jmp 0x24d0
leaq 0x1bb0(%rip), %rdi      # 0x235f1
leaq 0x1bd5(%rip), %rsi      # 0x2361d
xorl %eax, %eax
callq 0x21dac