// File: epfml[P]Bi-Sent2Vec/src/args.cc
// Function: fasttext::Args::printHelp()
void Args::printHelp() {
  std::string lname = "ns";
  if (loss == loss_name::hs) lname = "hs";
  if (loss == loss_name::softmax) lname = "softmax";
  std::cout
    << "\n"
    << "The following arguments are mandatory:\n"
    << "  -input              training file path\n"
    << "  -output             output file path\n\n"
    << "The following arguments are optional:\n"
    << "  -lr                 learning rate [" << lr << "]\n"
    << "  -lrUpdateRate       change the rate of updates for the learning rate [" << lrUpdateRate << "]\n"
    << "  -dim                size of word vectors [" << dim << "]\n"
    << "  -ws                 size of the context window [" << ws << "]\n"
    << "  -epoch              number of epochs [" << epoch << "]\n"
    << "  -minCount           minimal number of word occurences [" << minCount << "]\n"
    << "  -minCountLabel      minimal number of label occurences [" << minCountLabel << "]\n"
    << "  -neg                number of negatives sampled [" << neg << "]\n"
    << "  -wordNgrams         max length of word ngram [" << wordNgrams << "]\n"
    << "  -loss               loss function {ns, hs, softmax} [ns]\n"
    << "  -bucket             number of buckets [" << bucket << "]\n"
    << "  -maxVocabSize       vocabulary exceeding this size will be truncated [None]\n"
    << "  -numCheckPoints     number of intermediary checkpoints to save when training [" << numCheckPoints << "]\n"
    << "  -minn               min length of char ngram [" << minn << "]\n"
    << "  -maxn               max length of char ngram [" << maxn << "]\n"
    << "  -thread             number of threads [" << thread << "]\n"
    << "  -t                  sampling threshold [" << t << "]\n"
    << "  -label              labels prefix [" << label << "]\n"
    << "  -dropoutK           number of ngrams dropped when training a sent2vec model [" << dropoutK << "]\n"
    << "  -verbose            verbosity level [" << verbose << "]\n"
    << "  -pretrainedVectors  pretrained word vectors for supervised learning []\n"
    << "  -saveOutput         whether output params should be saved [" << saveOutput << "]\n"
    << "\nThe following arguments for quantization are optional:\n"
    << "  -cutoff             number of words and ngrams to retain [" << cutoff << "]\n"
    << "  -retrain            finetune embeddings if a cutoff is applied [" << retrain << "]\n"
    << "  -qnorm              quantizing the norm separately [" << qnorm << "]\n"
    << "  -qout               quantizing the classifier [" << qout << "]\n"
    << "  -dsub               size of each sub-vector [" << dsub << "]\n"
    << std::endl;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2e0, %rsp            # imm = 0x2E0
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x50(%rbp)
leaq -0x29(%rbp), %rdi
movq %rdi, -0x48(%rbp)
callq 0x57b0
movq -0x48(%rbp), %rdx
leaq 0x3b182(%rip), %rsi     # 0x42101
leaq -0x28(%rbp), %rdi
callq 0x7c10
jmp 0x6f8a
leaq -0x29(%rbp), %rdi
callq 0x5480
movq -0x50(%rbp), %rax
cmpl $0x1, 0xbc(%rax)
jne 0x6fe8
leaq 0x3b157(%rip), %rsi     # 0x420fe
leaq -0x28(%rbp), %rdi
callq 0x55e0
jmp 0x6fb2
jmp 0x6fe8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x29(%rbp), %rdi
callq 0x5480
jmp 0x7943
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x38(%rbp)
movl %eax, -0x3c(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x58d8
jmp 0x7943
movq -0x50(%rbp), %rax
cmpl $0x3, 0xbc(%rax)
jne 0x7009
leaq 0x3b108(%rip), %rsi     # 0x42104
leaq -0x28(%rbp), %rdi
callq 0x55e0
jmp 0x7007
jmp 0x7009
movq 0x57fa8(%rip), %rdi     # 0x5efb8
leaq 0x3ceda(%rip), %rsi     # 0x43ef1
callq 0x5420
movq %rax, -0x58(%rbp)
jmp 0x7022
movq -0x58(%rbp), %rdi
leaq 0x3b1a9(%rip), %rsi     # 0x421d6
callq 0x5420
movq %rax, -0x60(%rbp)
jmp 0x7038
movq -0x60(%rbp), %rdi
leaq 0x3b1bb(%rip), %rsi     # 0x421fe
callq 0x5420
movq %rax, -0x68(%rbp)
jmp 0x704e
movq -0x68(%rbp), %rdi
leaq 0x3b1cf(%rip), %rsi     # 0x42228
callq 0x5420
movq %rax, -0x70(%rbp)
jmp 0x7064
movq -0x70(%rbp), %rdi
leaq 0x3b1e2(%rip), %rsi     # 0x42251
callq 0x5420
movq %rax, -0x78(%rbp)
jmp 0x707a
movq -0x78(%rbp), %rdi
leaq 0x3b1f3(%rip), %rsi     # 0x42278
callq 0x5420
movq %rax, -0x80(%rbp)
jmp 0x7090
movq -0x80(%rbp), %rdi
movq -0x50(%rbp), %rax
movsd 0x80(%rax), %xmm0
callq 0x5840
movq %rax, -0x88(%rbp)
jmp 0x70ae
movq -0x88(%rbp), %rdi
leaq 0x3b630(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x90(%rbp)
jmp 0x70ca
movq -0x90(%rbp), %rdi
leaq 0x3b1c6(%rip), %rsi     # 0x4229e
callq 0x5420
movq %rax, -0x98(%rbp)
jmp 0x70e6
movq -0x98(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0x90(%rax), %esi
callq 0x5770
movq %rax, -0xa0(%rbp)
jmp 0x7105
movq -0xa0(%rbp), %rdi
leaq 0x3b5d9(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0xa8(%rbp)
jmp 0x7121
movq -0xa8(%rbp), %rdi
leaq 0x3b1b8(%rip), %rsi     # 0x422e7
callq 0x5420
movq %rax, -0xb0(%rbp)
jmp 0x713d
movq -0xb0(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0x94(%rax), %esi
callq 0x5770
movq %rax, -0xb8(%rbp)
jmp 0x715c
movq -0xb8(%rbp), %rdi
leaq 0x3b582(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0xc0(%rbp)
jmp 0x7178
movq -0xc0(%rbp), %rdi
leaq 0x3b18e(%rip), %rsi     # 0x42314
callq 0x5420
movq %rax, -0xc8(%rbp)
jmp 0x7194
movq -0xc8(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0x98(%rax), %esi
callq 0x5770
movq %rax, -0xd0(%rbp)
jmp 0x71b3
movq -0xd0(%rbp), %rdi
leaq 0x3b52b(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0xd8(%rbp)
jmp 0x71cf
movq -0xd8(%rbp), %rdi
leaq 0x3b16a(%rip), %rsi     # 0x42347
callq 0x5420
movq %rax, -0xe0(%rbp)
jmp 0x71eb
movq -0xe0(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xa0(%rax), %esi
callq 0x5770
movq %rax, -0xe8(%rbp)
jmp 0x720a
movq -0xe8(%rbp), %rdi
leaq 0x3b4d4(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0xf0(%rbp)
jmp 0x7226
movq -0xf0(%rbp), %rdi
leaq 0x3b13c(%rip), %rsi     # 0x42370
callq 0x5420
movq %rax, -0xf8(%rbp)
jmp 0x7242
movq -0xf8(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xa8(%rax), %esi
callq 0x5770
movq %rax, -0x100(%rbp)
jmp 0x7261
movq -0x100(%rbp), %rdi
leaq 0x3b47d(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x108(%rbp)
jmp 0x727d
movq -0x108(%rbp), %rdi
leaq 0x3b11f(%rip), %rsi     # 0x423aa
callq 0x5420
movq %rax, -0x110(%rbp)
jmp 0x7299
movq -0x110(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xac(%rax), %esi
callq 0x5770
movq %rax, -0x118(%rbp)
jmp 0x72b8
movq -0x118(%rbp), %rdi
leaq 0x3b426(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x120(%rbp)
jmp 0x72d4
movq -0x120(%rbp), %rdi
leaq 0x3b103(%rip), %rsi     # 0x423e5
callq 0x5420
movq %rax, -0x128(%rbp)
jmp 0x72f0
movq -0x128(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xb0(%rax), %esi
callq 0x5770
movq %rax, -0x130(%rbp)
jmp 0x730f
movq -0x130(%rbp), %rdi
leaq 0x3b3cf(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x138(%rbp)
jmp 0x732b
movq -0x138(%rbp), %rdi
leaq 0x3b0e0(%rip), %rsi     # 0x42419
callq 0x5420
movq %rax, -0x140(%rbp)
jmp 0x7347
movq -0x140(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xb4(%rax), %esi
callq 0x5770
movq %rax, -0x148(%rbp)
jmp 0x7366
movq -0x148(%rbp), %rdi
leaq 0x3b378(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x150(%rbp)
jmp 0x7382
movq -0x150(%rbp), %rdi
leaq 0x3b0ba(%rip), %rsi     # 0x4244a
callq 0x5420
movq %rax, -0x158(%rbp)
jmp 0x739e
movq -0x158(%rbp), %rdi
leaq 0x3b0da(%rip), %rsi     # 0x42486
callq 0x5420
movq %rax, -0x160(%rbp)
jmp 0x73ba
movq -0x160(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xc4(%rax), %esi
callq 0x5770
movq %rax, -0x168(%rbp)
jmp 0x73d9
movq -0x168(%rbp), %rdi
leaq 0x3b305(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x170(%rbp)
jmp 0x73f5
movq -0x170(%rbp), %rdi
leaq 0x3b0ad(%rip), %rsi     # 0x424b0
callq 0x5420
movq %rax, -0x178(%rbp)
jmp 0x7411
movq -0x178(%rbp), %rdi
leaq 0x3b0e0(%rip), %rsi     # 0x424ff
callq 0x5420
movq %rax, -0x180(%rbp)
jmp 0x742d
movq -0x180(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xb8(%rax), %esi
callq 0x5770
movq %rax, -0x188(%rbp)
jmp 0x744c
movq -0x188(%rbp), %rdi
leaq 0x3b292(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x190(%rbp)
jmp 0x7468
movq -0x190(%rbp), %rdi
leaq 0x3b0da(%rip), %rsi     # 0x42550
callq 0x5420
movq %rax, -0x198(%rbp)
jmp 0x7484
movq -0x198(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xcc(%rax), %esi
callq 0x5770
movq %rax, -0x1a0(%rbp)
jmp 0x74a3
movq -0x1a0(%rbp), %rdi
leaq 0x3b23b(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x1a8(%rbp)
jmp 0x74bf
movq -0x1a8(%rbp), %rdi
leaq 0x3b0b4(%rip), %rsi     # 0x42581
callq 0x5420
movq %rax, -0x1b0(%rbp)
jmp 0x74db
movq -0x1b0(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xd0(%rax), %esi
callq 0x5770
movq %rax, -0x1b8(%rbp)
jmp 0x74fa
movq -0x1b8(%rbp), %rdi
leaq 0x3b1e4(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x1c0(%rbp)
jmp 0x7516
movq -0x1c0(%rbp), %rdi
leaq 0x3b08e(%rip), %rsi     # 0x425b2
callq 0x5420
movq %rax, -0x1c8(%rbp)
jmp 0x7532
movq -0x1c8(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0xd4(%rax), %esi
callq 0x5770
movq %rax, -0x1d0(%rbp)
jmp 0x7551
movq -0x1d0(%rbp), %rdi
leaq 0x3b18d(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x1d8(%rbp)
jmp 0x756d
movq -0x1d8(%rbp), %rdi
leaq 0x3b061(%rip), %rsi     # 0x425dc
callq 0x5420
movq %rax, -0x1e0(%rbp)
jmp 0x7589
movq -0x1e0(%rbp), %rdi
movq -0x50(%rbp), %rax
movsd 0xd8(%rax), %xmm0
callq 0x5840
movq %rax, -0x1e8(%rbp)
jmp 0x75aa
movq -0x1e8(%rbp), %rdi
leaq 0x3b134(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x1f0(%rbp)
jmp 0x75c6
movq -0x1f0(%rbp), %rdi
leaq 0x3b033(%rip), %rsi     # 0x42607
callq 0x5420
movq %rax, -0x1f8(%rbp)
jmp 0x75e2
movq -0x1f8(%rbp), %rdi
movq -0x50(%rbp), %rsi
addq $0xe0, %rsi
callq 0x53e0
movq %rax, -0x200(%rbp)
jmp 0x7602
movq -0x200(%rbp), %rdi
leaq 0x3b0dc(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x208(%rbp)
jmp 0x761e
movq -0x208(%rbp), %rdi
leaq 0x3b001(%rip), %rsi     # 0x4262d
callq 0x5420
movq %rax, -0x210(%rbp)
jmp 0x763a
movq -0x210(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0x9c(%rax), %esi
callq 0x5770
movq %rax, -0x218(%rbp)
jmp 0x7659
movq -0x218(%rbp), %rdi
leaq 0x3b085(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x220(%rbp)
jmp 0x7675
movq -0x220(%rbp), %rdi
leaq 0x3affa(%rip), %rsi     # 0x4267d
callq 0x5420
movq %rax, -0x228(%rbp)
jmp 0x7691
movq -0x228(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0x100(%rax), %esi
callq 0x5770
movq %rax, -0x230(%rbp)
jmp 0x76b0
movq -0x230(%rbp), %rdi
leaq 0x3b02e(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x238(%rbp)
jmp 0x76cc
movq -0x238(%rbp), %rdi
leaq 0x3afcb(%rip), %rsi     # 0x426a5
callq 0x5420
movq %rax, -0x240(%rbp)
jmp 0x76e8
movq -0x240(%rbp), %rdi
leaq 0x3aff9(%rip), %rsi     # 0x426ef
callq 0x5420
movq %rax, -0x248(%rbp)
jmp 0x7704
movq -0x248(%rbp), %rdi
movq -0x50(%rbp), %rax
movl 0x128(%rax), %esi
callq 0x5770
movq %rax, -0x250(%rbp)
jmp 0x7723
movq -0x250(%rbp), %rdi
leaq 0x3afbb(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x258(%rbp)
jmp 0x773f
movq -0x258(%rbp), %rdi
leaq 0x3afe0(%rip), %rsi     # 0x4272d
callq 0x5420
movq %rax, -0x260(%rbp)
jmp 0x775b
movq -0x260(%rbp), %rdi
leaq 0x3affd(%rip), %rsi     # 0x42766
callq 0x5420
movq %rax, -0x268(%rbp)
jmp 0x7777
movq -0x268(%rbp), %rdi
movq -0x50(%rbp), %rax
movq 0x130(%rax), %rsi
callq 0x5110
movq %rax, -0x270(%rbp)
jmp 0x7797
movq -0x270(%rbp), %rdi
leaq 0x3af47(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x278(%rbp)
jmp 0x77b3
movq -0x278(%rbp), %rdi
leaq 0x3afe2(%rip), %rsi     # 0x427a3
callq 0x5420
movq %rax, -0x280(%rbp)
jmp 0x77cf
movq -0x280(%rbp), %rdi
movq -0x50(%rbp), %rax
movzbl 0x12d(%rax), %esi
andl $0x1, %esi
callq 0x57d0
movq %rax, -0x288(%rbp)
jmp 0x77f2
movq -0x288(%rbp), %rdi
leaq 0x3aeec(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x290(%rbp)
jmp 0x780e
movq -0x290(%rbp), %rdi
leaq 0x3afca(%rip), %rsi     # 0x427e6
callq 0x5420
movq %rax, -0x298(%rbp)
jmp 0x782a
movq -0x298(%rbp), %rdi
movq -0x50(%rbp), %rax
movzbl 0x12e(%rax), %esi
andl $0x1, %esi
callq 0x57d0
movq %rax, -0x2a0(%rbp)
jmp 0x784d
movq -0x2a0(%rbp), %rdi
leaq 0x3ae91(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x2a8(%rbp)
jmp 0x7869
movq -0x2a8(%rbp), %rdi
leaq 0x3afa6(%rip), %rsi     # 0x4281d
callq 0x5420
movq %rax, -0x2b0(%rbp)
jmp 0x7885
movq -0x2b0(%rbp), %rdi
movq -0x50(%rbp), %rax
movzbl 0x12c(%rax), %esi
andl $0x1, %esi
callq 0x57d0
movq %rax, -0x2b8(%rbp)
jmp 0x78a8
movq -0x2b8(%rbp), %rdi
leaq 0x3ae36(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x2c0(%rbp)
jmp 0x78c4
movq -0x2c0(%rbp), %rdi
leaq 0x3af7d(%rip), %rsi     # 0x4284f
callq 0x5420
movq %rax, -0x2c8(%rbp)
jmp 0x78e0
movq -0x2c8(%rbp), %rdi
movq -0x50(%rbp), %rax
movq 0x138(%rax), %rsi
callq 0x5110
movq %rax, -0x2d0(%rbp)
jmp 0x7900
movq -0x2d0(%rbp), %rdi
leaq 0x3adde(%rip), %rsi     # 0x426ec
callq 0x5420
movq %rax, -0x2d8(%rbp)
jmp 0x791c
movq -0x2d8(%rbp), %rdi
movq 0x57666(%rip), %rsi     # 0x5ef90
callq 0x5460
jmp 0x7931
leaq -0x28(%rbp), %rdi
callq 0x58d8
addq $0x2e0, %rsp            # imm = 0x2E0
popq %rbp
retq
movq -0x38(%rbp), %rdi
callq 0x57a0
nopl (%rax)