// File: /workspace/github_c_makefile_star2_O2/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 %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movl %esi, %ebp
movq %rdi, %rbx
leaq 0x3f51(%rip), %rdi      # 0x21160
pushq $0x4b
popq %rsi
pushq $0x1
popq %r14
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3f84(%rip), %rdi      # 0x211ac
pushq $0x9
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3f79(%rip), %rdi      # 0x211b6
pushq $0x3f
popq %r12
movq %r12, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3fa0(%rip), %rdi      # 0x211f6
pushq $0x4d
popq %r15
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x3fd5(%rip), %rdi      # 0x21244
pushq $0x46
popq %r13
movq %r13, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x4003(%rip), %rdi      # 0x2128b
pushq $0x43
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x4032(%rip), %rdi      # 0x212cf
movq %r13, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x4064(%rip), %rdi      # 0x21316
pushq $0x38
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
pushq $0xa
popq %rdi
movq %rbx, %rsi
callq 0x2260
leaq 0x407d(%rip), %rdi      # 0x2134f
pushq $0x3d
popq %r13
movq %r13, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x40a2(%rip), %rdi      # 0x2138d
movq %r12, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x40cd(%rip), %rdi      # 0x213cd
movq %r13, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x40f6(%rip), %rdi      # 0x2140b
pushq $0x62
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x4144(%rip), %rdi      # 0x2146e
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x417d(%rip), %rdi      # 0x214bc
pushq $0x34
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
testl %ebp, %ebp
je 0x1d542
pushq $0xa
popq %rbp
movl %ebp, %edi
movq %rbx, %rsi
callq 0x2260
leaq 0x4188(%rip), %rdi      # 0x214f1
pushq $0x5c
popq %rsi
pushq $0x1
popq %r14
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x41cc(%rip), %rdi      # 0x2154e
pushq $0x5e
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
movl %ebp, %edi
movq %rbx, %rsi
callq 0x2260
leaq 0xaf3f(%rip), %rax      # 0x282e0
movl (%rax), %edi
callq 0x1d685
leaq 0x41fe(%rip), %rsi      # 0x215ad
movq %rbx, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0x22c0
leaq 0xaf21(%rip), %rax      # 0x282e4
movl (%rax), %edi
callq 0x1d685
leaq 0x4220(%rip), %rsi      # 0x215f1
movq %rbx, %rdi
movq %rax, %rdx
xorl %eax, %eax
callq 0x22c0
leaq 0xaf07(%rip), %rax      # 0x282ec
movl (%rax), %edx
cmpl $0x995556b4, %edx       # imm = 0x995556B4
je 0x1d4be
cmpl $0xb57b3070, %edx       # imm = 0xB57B3070
je 0x1d4a3
cmpl $0xd37e4828, %edx       # imm = 0xD37E4828
je 0x1d4b5
cmpl $0xe2eecd09, %edx       # imm = 0xE2EECD09
je 0x1d476
cmpl $0xf627ffb1, %edx       # imm = 0xF627FFB1
je 0x1d488
cmpl $0x5978d4, %edx         # imm = 0x5978D4
je 0x1d4ac
cmpl $0xb888f83, %edx        # imm = 0xB888F83
je 0x1d49a
cmpl $0xb889c8a, %edx        # imm = 0xB889C8A
je 0x1d464
cmpl $0xdc4ffd9, %edx        # imm = 0xDC4FFD9
je 0x1d46d
cmpl $0x272d87fd, %edx       # imm = 0x272D87FD
je 0x1d47f
cmpl $0x1c93c7f4, %edx       # imm = 0x1C93C7F4
je 0x1d491
cmpl $0x13baa0b1, %edx       # imm = 0x13BAA0B1
jne 0x1d5b5
leaq 0x1e5c(%rip), %rdx      # 0x1f2be
jmp 0x1d4c5
leaq 0x1ea4(%rip), %rdx      # 0x1f30f
jmp 0x1d4c5
leaq 0x1e8a(%rip), %rdx      # 0x1f2fe
jmp 0x1d4c5
leaq 0x1e59(%rip), %rdx      # 0x1f2d6
jmp 0x1d4c5
leaq 0x1e5d(%rip), %rdx      # 0x1f2e3
jmp 0x1d4c5
leaq 0x1e3b(%rip), %rdx      # 0x1f2ca
jmp 0x1d4c5
leaq 0x1e8e(%rip), %rdx      # 0x1f326
jmp 0x1d4c5
leaq 0x1e6a(%rip), %rdx      # 0x1f30b
jmp 0x1d4c5
leaq 0x1e69(%rip), %rdx      # 0x1f313
jmp 0x1d4c5
leaq 0x1ac7(%rip), %rdx      # 0x1ef7a
jmp 0x1d4c5
leaq 0x1e35(%rip), %rdx      # 0x1f2f1
jmp 0x1d4c5
leaq 0x1e68(%rip), %rdx      # 0x1f32d
leaq 0x4164(%rip), %rsi      # 0x21630
movq %rbx, %rdi
xorl %eax, %eax
callq 0x22c0
leaq 0xae13(%rip), %rax      # 0x282f0
movl (%rax), %edx
leaq 0x418b(%rip), %rsi      # 0x21671
movq %rbx, %rdi
xorl %eax, %eax
callq 0x22c0
pushq $0xa
popq %rdi
movq %rbx, %rsi
callq 0x2260
leaq 0x41bf(%rip), %rdi      # 0x216c1
pushq $0x4c
popq %rsi
pushq $0x1
popq %r14
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x41f3(%rip), %rdi      # 0x2170e
pushq $0x4b
popq %r15
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x4226(%rip), %rdi      # 0x2175a
movq %r15, %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
pushq $0xa
popq %rdi
movq %rbx, %rsi
callq 0x2260
leaq 0x4252(%rip), %rdi      # 0x217a6
pushq $0x3d
popq %rsi
pushq $0x1
popq %r14
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
movl 0xb0b4(%rip), %edx      # 0x28620
leaq 0x4271(%rip), %rsi      # 0x217e4
movq %rbx, %rdi
xorl %eax, %eax
callq 0x22c0
leaq 0x428f(%rip), %rdi      # 0x21813
pushq $0x42
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
callq 0x24d0
leaq 0x42bd(%rip), %rdi      # 0x21856
pushq $0x2f
popq %rsi
movq %r14, %rdx
movq %rbx, %rcx
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x24d0
leaq 0x1efd(%rip), %rdi      # 0x1f4b9
leaq 0x1f22(%rip), %rsi      # 0x1f4e5
xorl %eax, %eax
callq 0x1d708