// File: afinit[P]afin/afin.cpp
// Function: print_usage(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void print_usage( string prog ){
  cout << "Usage: " << prog << " -c contigsfile(s) -r readsfile(s) [-o outfile] [-m sort_char] [-s sub_len]" << endl;
  cout << "          [-l search_loops] [-i min_cov] [-p min_overlap] [-t max_threads]" << endl;
  cout << "          [-d initial_trim] [-e max_missed] [-f stop_ext] [-g mismatch] [-x extend_len]" << endl;
  cout << "          [--silent] [--no_log] [--no_fusion] [--verbose] [--print_fused]" << endl << endl;
  cout << "       " << prog << " -h [--help]" << endl << endl;
  cout << endl;
  cout << "  -c, contigsfiles       Space (or comma) separated list of files containing contigs" << endl;
  cout << "  -r, readsfiles         Space (or comma) separated list of files containing reads" << endl;
  cout << "  -o, outfile            Output will be printed to the outfile specified, with a .fa extension for the contigs and .log extension for the logfile" << endl;
  cout << "  -m, sort_char          [default:   4] Sorts the reads by the first max_sort_char characters" << endl;
  cout << "  -s, sub_len            [default: 100] Will focus on the current last contig_sub_len characters of the contig in each search" << endl;
  cout << "  -l, search_loops       [default:  10] Will search against each contig a maximum of max_search_loops times to attempt extension" << endl;
  cout << "  -i, min_cov            [default:   3] Will stop adding bp's once the coverage falls below min_cov" << endl;
  cout << "  -p, min_overlap        [default:  20] Only those reads overlapping the contig by at least min_overlap bp's will be returned in each search" << endl;
  cout << "  -t, max_threads        [default:   4] Will only run max_threads threads at a time" << endl;
  cout << "  -d, initial_trim       [default:   0] Length to trim off the beginning and end of each contig at the start of the program" << endl;
  cout << "  -e, max_missed         [default:   5] Maximum allowable mismatched bp's for each read when checking troubled contig fusions" << endl;
  cout << "  -f, stop_ext           [default:  .5] During extension, if the percentage of reads remaining after cleaning is below stop_ext, do not extend here" << endl;
  cout << "  -g, mismatch           [default:  .1] maximum percentage of mismatches allowed when fusing two contigs" << endl;
  cout << "  -x, extend_len         [default:  40] Will add a max of extend_len bp's each search loop" << endl;
  cout << "  --silent               Suppress screen output" << endl;
  cout << "  --no_log               Suppress log file creation" << endl;
  cout << "  --no_fusion            Only extend, no attempt will be made to fuse contigs" << endl;
  cout << "  --verbose              Output additional information to logfile and/or screen (except if output to that location is suppressed)" << endl;
  cout << "  --print_fused          Print to file (_fused.fasta) fused contigs just before fusion, for inspecting the fusion locations" << endl << endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x10(%rbp)
movq %rdi, -0x8(%rbp)
movq 0x395e9(%rip), %rdi     # 0x3dfc0
leaq 0x26812(%rip), %rsi     # 0x2b1f0
callq 0x43c0
movq -0x10(%rbp), %rsi
movq %rax, %rdi
callq 0x4370
movq %rax, %rdi
leaq 0x267ff(%rip), %rsi     # 0x2b1f8
callq 0x43c0
movq %rax, %rdi
movq 0x39588(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x395ac(%rip), %rdi     # 0x3dfc0
leaq 0x26829(%rip), %rsi     # 0x2b244
callq 0x43c0
movq %rax, %rdi
movq 0x39566(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x3958a(%rip), %rdi     # 0x3dfc0
leaq 0x26852(%rip), %rsi     # 0x2b28f
callq 0x43c0
movq %rax, %rdi
movq 0x39544(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39568(%rip), %rdi     # 0x3dfc0
leaq 0x26888(%rip), %rsi     # 0x2b2e7
callq 0x43c0
movq %rax, %rdi
movq 0x39522(%rip), %rsi     # 0x3df90
callq 0x43f0
movq %rax, %rdi
movq 0x39513(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39537(%rip), %rdi     # 0x3dfc0
leaq 0x268a1(%rip), %rsi     # 0x2b331
callq 0x43c0
movq -0x10(%rbp), %rsi
movq %rax, %rdi
callq 0x4370
movq %rax, %rdi
leaq 0x2688e(%rip), %rsi     # 0x2b339
callq 0x43c0
movq %rax, %rdi
movq 0x394d6(%rip), %rsi     # 0x3df90
callq 0x43f0
movq %rax, %rdi
movq 0x394c7(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x394eb(%rip), %rdi     # 0x3dfc0
movq 0x394b4(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x394d8(%rip), %rdi     # 0x3dfc0
leaq 0x26857(%rip), %rsi     # 0x2b346
callq 0x43c0
movq %rax, %rdi
movq 0x39492(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x394b6(%rip), %rdi     # 0x3dfc0
leaq 0x2688a(%rip), %rsi     # 0x2b39b
callq 0x43c0
movq %rax, %rdi
movq 0x39470(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39494(%rip), %rdi     # 0x3dfc0
leaq 0x268bb(%rip), %rsi     # 0x2b3ee
callq 0x43c0
movq %rax, %rdi
movq 0x3944e(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39472(%rip), %rdi     # 0x3dfc0
leaq 0x2692b(%rip), %rsi     # 0x2b480
callq 0x43c0
movq %rax, %rdi
movq 0x3942c(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39450(%rip), %rdi     # 0x3dfc0
leaq 0x26967(%rip), %rsi     # 0x2b4de
callq 0x43c0
movq %rax, %rdi
movq 0x3940a(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x3942e(%rip), %rdi     # 0x3dfc0
leaq 0x269c3(%rip), %rsi     # 0x2b55c
callq 0x43c0
movq %rax, %rdi
movq 0x393e8(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x3940c(%rip), %rdi     # 0x3dfc0
leaq 0x26a22(%rip), %rsi     # 0x2b5dd
callq 0x43c0
movq %rax, %rdi
movq 0x393c6(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x393ea(%rip), %rdi     # 0x3dfc0
leaq 0x26a64(%rip), %rsi     # 0x2b641
callq 0x43c0
movq %rax, %rdi
movq 0x393a4(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x393c8(%rip), %rdi     # 0x3dfc0
leaq 0x26acf(%rip), %rsi     # 0x2b6ce
callq 0x43c0
movq %rax, %rdi
movq 0x39382(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x393a6(%rip), %rdi     # 0x3dfc0
leaq 0x26b01(%rip), %rsi     # 0x2b722
callq 0x43c0
movq %rax, %rdi
movq 0x39360(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39384(%rip), %rdi     # 0x3dfc0
leaq 0x26b5b(%rip), %rsi     # 0x2b79e
callq 0x43c0
movq %rax, %rdi
movq 0x3933e(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39362(%rip), %rdi     # 0x3dfc0
leaq 0x26bb7(%rip), %rsi     # 0x2b81c
callq 0x43c0
movq %rax, %rdi
movq 0x3931c(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39340(%rip), %rdi     # 0x3dfc0
leaq 0x26c29(%rip), %rsi     # 0x2b8b0
callq 0x43c0
movq %rax, %rdi
movq 0x392fa(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x3931e(%rip), %rdi     # 0x3dfc0
leaq 0x26c70(%rip), %rsi     # 0x2b919
callq 0x43c0
movq %rax, %rdi
movq 0x392d8(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x392fc(%rip), %rdi     # 0x3dfc0
leaq 0x26ca9(%rip), %rsi     # 0x2b974
callq 0x43c0
movq %rax, %rdi
movq 0x392b6(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x392da(%rip), %rdi     # 0x3dfc0
leaq 0x26cb7(%rip), %rsi     # 0x2b9a4
callq 0x43c0
movq %rax, %rdi
movq 0x39294(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x392b8(%rip), %rdi     # 0x3dfc0
leaq 0x26cc9(%rip), %rsi     # 0x2b9d8
callq 0x43c0
movq %rax, %rdi
movq 0x39272(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39296(%rip), %rdi     # 0x3dfc0
leaq 0x26cf5(%rip), %rsi     # 0x2ba26
callq 0x43c0
movq %rax, %rdi
movq 0x39250(%rip), %rsi     # 0x3df90
callq 0x43f0
movq 0x39274(%rip), %rdi     # 0x3dfc0
leaq 0x26d55(%rip), %rsi     # 0x2baa8
callq 0x43c0
movq %rax, %rdi
movq 0x3922e(%rip), %rsi     # 0x3df90
callq 0x43f0
movq %rax, %rdi
movq 0x3921f(%rip), %rsi     # 0x3df90
callq 0x43f0
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax)