// File: /workspace/github_cpp_makefile_star2_O1/soccin[P]BIC-RNAseq/tools/MergeFusion/main.cpp
// Function: printUsage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void printUsage(string msg = "")
{
    cout << endl;
    cout << version << endl;
    cout << "Usage: " << endl;
    cout << "\t[Each input file option can be specified multiple times]" << endl;
    cout << "\t--chimerascan        <string>                        Input chimerascan fusion file (chimeras.bedpe)" << endl;
    cout << "\t--defuse             <string>                        Input defuse fusion file (results.tsv)" << endl;
    cout << "\t--fusioncatcher      <string>                        Input fusioncatcher fusion file (final-list_candidate-fusion-genes.txt)" << endl;
    //cout << "\t--fusionhunter       <string>                        Input fusionhunter fusion file" << endl;
    cout << "\t--star               <string>                        Input star fusion file (Chimeric.out.junction)" << endl;
    cout << "\t--mapsplice          <string>                        Input mapsplice fusion file (fusions_well_annotated.txt)" << endl;
    cout << endl;
    cout << "\t--output             <string>                        Output fusion file to write the merged result" << endl;
    cout << "\t--sort               <string>                        Sort the result by either GENOMIC, CALLER, GENE, BREAKPOINT_COVERGAE, [Default=GENOMIC]" << endl;
    //cout << "\t--normalize_chrom    <int>                           Normalize the chromosome name to 'chr*'. 0=off, 1=on. [Default=1]" << endl;
    cout << "\t--normalize_gene     <string>                        Normalize the gene symbol to HUGO symbol with the hugo data file" << endl;
    cout << endl;
    
    if(!msg.empty())
        cerr << msg << endl;
    exit(1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq 0xd898(%rip), %r14      # 0x10fc8
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
movq 0xdc32(%rip), %rsi      # 0x11390
movq 0xdc33(%rip), %rdx      # 0x11398
movq %r14, %rdi
callq 0x3250
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r15, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x88ac(%rip), %rsi      # 0xc04a
movl $0x7, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x8879(%rip), %rsi      # 0xc052
movl $0x39, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x8878(%rip), %rsi      # 0xc08c
movl $0x64, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x88a2(%rip), %rsi      # 0xc0f1
movl $0x5c, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x88c4(%rip), %rsi      # 0xc14e
movl $0x7d, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x8907(%rip), %rsi      # 0xc1cc
movl $0x64, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x8931(%rip), %rsi      # 0xc231
movl $0x6e, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x893e(%rip), %rsi      # 0xc2a0
movl $0x63, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x8967(%rip), %rsi      # 0xc304
movl $0x8d, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
leaq 0x89ba(%rip), %rsi      # 0xc392
movl $0x76, %edx
movq %r14, %rdi
callq 0x3250
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %r14, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
movq 0x8(%rbx), %rdx
testq %rdx, %rdx
je 0x3a75
movq (%rbx), %rsi
movq 0xd5aa(%rip), %rdi      # 0x10ff0
callq 0x3250
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x31d0
movsbl %al, %esi
movq %rbx, %rdi
callq 0x3030
movq %rax, %rdi
callq 0x3150
movl $0x1, %edi
callq 0x3260