// File: /workspace/github_cpp_makefile_star2_O1/gchen98[P]macs/simulator.cpp
// Function: Simulator::printUsage()
void Simulator::printUsage() {
    cout<<"Usage: <samplesize> <region in base pairs> [options]"<<endl;
    cout<<"Options: "<<endl;
    cout<<"-s <random seed>"<<endl;
    cout<<"-d enable debugging messages"<<endl;
    cout<<"-i <iterations>"<<endl;
    cout<<"-h <history> number of previous base pairs to retain"<<endl;
    cout<<"-t <mu> (mutation rate per site per 4N generations)"<<endl;
    cout<<"-F <inputfilename> [0|1] (Tab delimited frequency distribution "<<
    "file where first column indicate range of SNP allele frequencies "<<
    "from previous row to current row and last column is desired bin "<<
    "frequency. Second parameter is 1 if SNPs with derived allele freq > "<<
    "1.0 should have alleles flipped, 0 otherwise.)"<<endl;
    cout<<"-r <r> (recombination rate per site per 4N generations)"<<endl;
    cout<<"-c <f> <lambda> (f = ratio of gene conversion rate to crossover "<<
    "rate. tracklen lambda is mean length of tract in base pairs.)"<<endl;
    cout<<"-R <inputfilename> (Tab delimited file where first "<<
    "two columns indicate range of base pair positions scaled to the "<<
    "unit interval and last column is ratio with respect to base line "<<
    "recombination rate.)"<<endl;
    cout<<"-T (Print each local tree in Newick format to standard out)"<<endl;
    cout<<"-G <alpha> (Assign growth rate alpha across populations "<<
    "where alpha=-log(Np/Nr)"<<endl;
    cout<<"-I <n> <n1> <n2> .. <mig_rate> (Assign all elements of the "<<
    "migration matrix for n populations.  Values in matrix set to "<<
    "mig_rate/(n-1).)"<<endl;
    cout<<"-m <i> <j> <m>  (Assign i,j-th element of migration matrix "<<
    "to m.)"<<
    endl;
    cout<<"-ma <m_11>..<m_12>..<m_nn> (Assign values to all "<<
    "elements of migration matrix for n populations.)"<<endl;
    cout<<"-n <i> <size>   (Pop i has size set to size*N_0 "<<endl;
    cout<<"-g <i> <alpha>  (If used must appear after -M option.)"<<endl;
    cout<<"The following options modify parameters at time t."<<endl;
    cout<<"-eG <t> <alpha>  (Assign growth rate for all pops at time"<<
    " t."<<endl;
    cout<<"-eg <t> <i> <alpha>  (Assign growth rate alpha of pop "<<
    "i at time t.)"<<endl;
    cout<<"-eM <t> <m> (Assign migrate rate m for all elements "<<
    "of migration matrix at time t.)"<<endl;
    cout<<"-em <t> <i> <j> <m_ij> (Assign migration rate for i,j-th "<<
    "element of migration matrix at time t.)"
    <<"at time t )"<<endl;
    cout<<"-ema <t> <n> <m_11>..<m_12>..<m_nn> (Assign migration rates "
    " within the migration matrix for n populations at time t.)"<<endl;
    cout<<"-eN <t> <size> (New pop sizes at time t for all pops "<<
    "where new sizes = size*N_0)"<<endl;
    cout<<"-en <t> <i> <size_i> (New pop size of pop i will be set "<<
    "to (size_i*N_0) at time t."<<endl;
    cout<<"-es <t> <i> <p> (Split two populations.  At time t, "<<
    "a proportion p of chromosomes from pop i will migrate to a "<<
    "population i+1."<<endl;
    cout<<"-ej <t> <i> <j> (Join two populations.  At time t "<<
    "all chromosomes migrate from pop i to pop j."<<endl;
    exit(1);
}

// Assembly:
pushq %rbx
movq 0x1bd1e(%rip), %rbx     # 0x1ffd0
leaq 0x12e8e(%rip), %rsi     # 0x17147
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x12eac(%rip), %rsi     # 0x1717c
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x12e9f(%rip), %rsi     # 0x17186
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x12e99(%rip), %rsi     # 0x17197
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x12e9f(%rip), %rsi     # 0x171b4
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x12e98(%rip), %rsi     # 0x171c4
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x12eb6(%rip), %rsi     # 0x171f9
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x12ed3(%rip), %rsi     # 0x1722d
movq %rbx, %rdi
callq 0x3250
leaq 0x12f04(%rip), %rsi     # 0x1726d
movq %rax, %rdi
callq 0x3250
leaq 0x12f37(%rip), %rsi     # 0x172af
movq %rax, %rdi
callq 0x3250
leaq 0x12f69(%rip), %rsi     # 0x172f0
movq %rax, %rdi
callq 0x3250
leaq 0x12f9f(%rip), %rsi     # 0x17335
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x12fb7(%rip), %rsi     # 0x17364
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x12fd8(%rip), %rsi     # 0x1739c
movq %rbx, %rdi
callq 0x3250
leaq 0x1300a(%rip), %rsi     # 0x173dd
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x13031(%rip), %rsi     # 0x1741b
movq %rbx, %rdi
callq 0x3250
leaq 0x13056(%rip), %rsi     # 0x1744f
movq %rax, %rdi
callq 0x3250
leaq 0x13088(%rip), %rsi     # 0x17490
movq %rax, %rdi
callq 0x3250
leaq 0x130bb(%rip), %rsi     # 0x174d2
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x130b9(%rip), %rsi     # 0x174e7
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x130de(%rip), %rsi     # 0x17523
movq %rbx, %rdi
callq 0x3250
leaq 0x13108(%rip), %rsi     # 0x1755c
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x13109(%rip), %rsi     # 0x17574
movq %rbx, %rdi
callq 0x3250
leaq 0x13136(%rip), %rsi     # 0x175b0
movq %rax, %rdi
callq 0x3250
leaq 0x13165(%rip), %rsi     # 0x175ee
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x1315f(%rip), %rsi     # 0x175ff
movq %rbx, %rdi
callq 0x3250
leaq 0x1318c(%rip), %rsi     # 0x1763b
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x1317c(%rip), %rsi     # 0x17642
movq %rbx, %rdi
callq 0x3250
leaq 0x1319f(%rip), %rsi     # 0x17674
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x131b9(%rip), %rsi     # 0x176a5
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x131d3(%rip), %rsi     # 0x176d6
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x131f3(%rip), %rsi     # 0x1770d
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x1320f(%rip), %rsi     # 0x17740
movq %rbx, %rdi
callq 0x3250
leaq 0x1343b(%rip), %rsi     # 0x1797b
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x13223(%rip), %rsi     # 0x1777a
movq %rbx, %rdi
callq 0x3250
leaq 0x1324b(%rip), %rsi     # 0x177b1
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x13242(%rip), %rsi     # 0x177bf
movq %rbx, %rdi
callq 0x3250
leaq 0x132aa(%rip), %rsi     # 0x17836
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x13251(%rip), %rsi     # 0x177f4
movq %rbx, %rdi
callq 0x3250
leaq 0x1327c(%rip), %rsi     # 0x1782e
movq %rax, %rdi
callq 0x3250
leaq 0x13295(%rip), %rsi     # 0x17856
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x1328a(%rip), %rsi     # 0x17862
movq %rbx, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x132ea(%rip), %rsi     # 0x178d9
movq %rbx, %rdi
callq 0x3250
leaq 0x13311(%rip), %rsi     # 0x1790f
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x13316(%rip), %rsi     # 0x1792b
movq %rbx, %rdi
callq 0x3250
leaq 0x13340(%rip), %rsi     # 0x17964
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x13344(%rip), %rsi     # 0x1797f
movq %rbx, %rdi
callq 0x3250
leaq 0x1336a(%rip), %rsi     # 0x179b4
movq %rax, %rdi
callq 0x3250
leaq 0x13397(%rip), %rsi     # 0x179f0
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
leaq 0x13390(%rip), %rsi     # 0x17a00
movq %rbx, %rdi
callq 0x3250
leaq 0x133b4(%rip), %rsi     # 0x17a33
movq %rax, %rdi
callq 0x3250
movq %rax, %rdi
callq 0x30f0
movl $0x1, %edi
callq 0x32c0
nop