// File: /workspace/github_cpp_makefile_star2_O2/BenLangmead[P]bowtie/ebwt_build.cpp
// Function: printUsage(std::ostream&)
static void printUsage(ostream& out) {
#ifdef BOWTIE_64BIT_INDEX
	string tool_name = "bowtie2-build-l";
#else
	string tool_name = "bowtie2-build-s";
#endif
	if(wrapper == "basic-0") {
		tool_name = "bowtie-build";
	}

	out << "Usage: "<< tool_name <<" [options]* <reference_in> <ebwt_outfile_base>" << endl
	    << "    reference_in            comma-separated list of files with ref sequences" << endl
	    << "    ebwt_outfile_base       write Ebwt data to files with this dir/basename" << endl
	    << "Options:" << endl
	    << "    -f                      reference files are Fasta (default)" << endl
	    << "    -c                      reference sequences given on cmd line (as <seq_in>)" << endl;
	if(wrapper == "basic-0") {
		out << "    --large-index           force generated index to be 'large', even if ref" << endl
		    << "                            has fewer than 4 billion nucleotides" << endl;
	}
	out << "    -a/--noauto             disable automatic -p/--bmax/--dcv memory-fitting" << endl
	    << "    -p/--packed             use packed strings internally; slower, uses less mem" << endl
	    << "    --bmax <int>            max bucket sz for blockwise suffix-array builder" << endl
	    //<< "    --bmaxmultsqrt <int>    max bucket sz as multiple of sqrt(ref len)" << endl
	    << "    --bmaxdivn <int>        max bucket sz as divisor of ref len (default: 4)" << endl
	    << "    --dcv <int>             diff-cover period for blockwise (default: 1024)" << endl
	    << "    --nodc                  disable diff-cover (algorithm becomes quadratic)" << endl
	    << "    -r/--noref              don't build .3/.4.ebwt (packed reference) portion" << endl
	    << "    -3/--justref            just build .3/.4.ebwt (packed reference) portion" << endl
	    << "    -o/--offrate <int>      SA is sampled every 2^offRate BWT chars (default: 5)" << endl
	    << "    -t/--ftabchars <int>    # of chars consumed in initial lookup (default: 10)" << endl
	    << "    --threads <int>         # of threads" << endl
	    << "    --ntoa                  convert Ns in reference to As" << endl
	    //<< "    --big --little          endianness (default: little, this host: "
	    //<< (currentlyBigEndian()? "big":"little") << ")" << endl
	    << "    --seed <int>            seed for random number generator" << endl
	    //<< "    --new-reverse           concatenate then reverse stretches, not vice versa" << endl
	    << "    -q/--quiet              verbose output (for debugging)" << endl
	    << "    -h/--help               print detailed description of tool and its options" << endl
	    << "    --usage                 print this usage message" << endl
	    << "    --version               print version information and quit" << endl;
	if(wrapper.empty()) {
		cerr << endl
		     << "*** Warning ***" << endl
		     << "'" << tool_name << "' was run directly.  It is recommended "
		     << "that you run the wrapper script 'bowtie-build' instead."
		     << endl << endl;
	}
}

// Assembly:
pushq %rbx
subq $0x30, %rsp
movq %rdi, %rbx
leaq 0x1c022(%rip), %rsi     # 0x25272
leaq 0x10(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0xb4e4
leaq 0x2baca(%rip), %rdi     # 0x34d30
leaq 0x1c015(%rip), %rsi     # 0x25282
callq 0xce66
testb %al, %al
je 0x9287
leaq 0x1c00d(%rip), %rsi     # 0x2528a
leaq 0x10(%rsp), %rdi
callq 0x5710
leaq 0x1c009(%rip), %rsi     # 0x25297
movq %rbx, %rdi
callq 0x5350
leaq 0x10(%rsp), %rsi
movq %rax, %rdi
callq 0x52d0
leaq 0x1bff5(%rip), %rsi     # 0x2529f
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c00d(%rip), %rsi     # 0x252ce
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c043(%rip), %rsi     # 0x2531b
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c078(%rip), %rsi     # 0x25367
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c06a(%rip), %rsi     # 0x25370
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c093(%rip), %rsi     # 0x253b0
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x2b9fc(%rip), %rdi     # 0x34d30
leaq 0x1bf47(%rip), %rsi     # 0x25282
callq 0xce66
testb %al, %al
je 0x9372
leaq 0x1c0b5(%rip), %rsi     # 0x25400
movq %rbx, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c0eb(%rip), %rsi     # 0x2544d
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c115(%rip), %rsi     # 0x2548e
movq %rbx, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c14b(%rip), %rsi     # 0x254db
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c185(%rip), %rsi     # 0x2552c
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c1bb(%rip), %rsi     # 0x25579
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c1f1(%rip), %rsi     # 0x255c6
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c226(%rip), %rsi     # 0x25612
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c25c(%rip), %rsi     # 0x2565f
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c293(%rip), %rsi     # 0x256ad
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c2c9(%rip), %rsi     # 0x256fa
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c303(%rip), %rsi     # 0x2574b
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c33c(%rip), %rsi     # 0x2579b
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c34e(%rip), %rsi     # 0x257c4
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c371(%rip), %rsi     # 0x257fe
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c397(%rip), %rsi     # 0x2583b
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c3bb(%rip), %rsi     # 0x25876
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c3f3(%rip), %rsi     # 0x258c5
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c411(%rip), %rsi     # 0x258fa
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
cmpq $0x0, 0x2b837(%rip)     # 0x34d38
jne 0x9570
movq 0x28ae6(%rip), %rdi     # 0x31ff0
callq 0x5180
leaq 0x1c423(%rip), %rsi     # 0x25939
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
leaq 0x1c41c(%rip), %rsi     # 0x25949
movq %rax, %rdi
callq 0x5350
leaq 0x10(%rsp), %rsi
movq %rax, %rdi
callq 0x52d0
leaq 0x1c402(%rip), %rsi     # 0x2594b
movq %rax, %rdi
callq 0x5350
leaq 0x1c41b(%rip), %rsi     # 0x25973
movq %rax, %rdi
callq 0x5350
movq %rax, %rdi
callq 0x5180
movq %rax, %rdi
callq 0x5180
leaq 0x10(%rsp), %rdi
callq 0x5778
addq $0x30, %rsp
popq %rbx
retq
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x5778
movq %rbx, %rdi
callq 0x5680