// File: ddu1[P]polarizedtext/src/fasttext.cc
// Function: fasttext::FastText::textVectors()
void FastText::textVectors() {
  std::vector<int32_t> line, labels;
  Vector vec(args_->dim);
  while (std::cin.peek() != EOF) {
    dict_->getLine(std::cin, line, labels, model_->rng);
    dict_->addNgrams(line, args_->wordNgrams);
    vec.zero();
    for (auto it = line.cbegin(); it != line.cend(); ++it) {
      vec.addRow(*input_, *it);
    }
    if (!line.empty()) {
      vec.mul(1.0 / line.size());
    }
    std::cout << vec << std::endl;
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xa0, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x70(%rbp)
leaq -0x20(%rbp), %rdi
callq 0x9e40
leaq -0x38(%rbp), %rdi
callq 0x9e40
movq -0x70(%rbp), %rdi
callq 0xa170
movslq 0x6c(%rax), %rsi
leaq -0x48(%rbp), %rdi
callq 0x13030
jmp 0x1e2e1
jmp 0x1e2e3
movq 0x1dcee(%rip), %rdi     # 0x3bfd8
callq 0x40e0
movl %eax, -0x74(%rbp)
jmp 0x1e2f4
movl -0x74(%rbp), %eax
cmpl $-0x1, %eax
je 0x1e4a6
movq -0x70(%rbp), %rdi
addq $0x10, %rdi
callq 0x1ff50
movq -0x70(%rbp), %rdi
movq %rax, -0x80(%rbp)
addq $0x40, %rdi
callq 0x202d0
movq -0x80(%rbp), %rdi
movq %rax, %r8
addq $0x108, %r8             # imm = 0x108
movq 0x1dca5(%rip), %rsi     # 0x3bfd8
leaq -0x20(%rbp), %rdx
leaq -0x38(%rbp), %rcx
callq 0x8090
jmp 0x1e342
movq -0x70(%rbp), %rdi
addq $0x10, %rdi
callq 0x1ff50
movq -0x70(%rbp), %rdi
movq %rax, -0x88(%rbp)
callq 0xa170
movq -0x88(%rbp), %rdi
movl 0x84(%rax), %edx
leaq -0x20(%rbp), %rsi
callq 0x7f70
jmp 0x1e377
leaq -0x48(%rbp), %rdi
callq 0x13180
jmp 0x1e382
leaq -0x20(%rbp), %rdi
callq 0x15b10
movq %rax, -0x60(%rbp)
leaq -0x20(%rbp), %rdi
callq 0x15b40
movq %rax, -0x68(%rbp)
leaq -0x60(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0x13840
testb $0x1, %al
jne 0x1e3af
jmp 0x1e419
movq -0x70(%rbp), %rdi
addq $0x20, %rdi
callq 0x15a10
movq %rax, -0x90(%rbp)
leaq -0x60(%rbp), %rdi
callq 0x13880
movq -0x90(%rbp), %rsi
movslq (%rax), %rdx
leaq -0x48(%rbp), %rdi
callq 0x132d0
jmp 0x1e3e1
jmp 0x1e3e3
leaq -0x60(%rbp), %rdi
callq 0x138a0
jmp 0x1e38f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
jmp 0x1e4ca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x50(%rbp)
movl %eax, -0x54(%rbp)
leaq -0x48(%rbp), %rdi
callq 0x131d0
jmp 0x1e4ca
leaq -0x20(%rbp), %rdi
callq 0x206d0
testb $0x1, %al
jne 0x1e473
leaq -0x20(%rbp), %rdi
callq 0xad50
movq %rax, %xmm1
movaps 0xb1c5(%rip), %xmm0     # 0x29600
punpckldq %xmm0, %xmm1    # xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
movapd 0xb1c9(%rip), %xmm0     # 0x29610
subpd %xmm0, %xmm1
movaps %xmm1, %xmm0
unpckhpd %xmm1, %xmm1            # xmm1 = xmm1[1,1]
addsd %xmm0, %xmm1
movsd 0xb16a(%rip), %xmm0     # 0x295c8
divsd %xmm1, %xmm0
cvtsd2ss %xmm0, %xmm0
leaq -0x48(%rbp), %rdi
callq 0x13270
jmp 0x1e471
jmp 0x1e473
movq 0x1db46(%rip), %rdi     # 0x3bfc0
leaq -0x48(%rbp), %rsi
callq 0x137b0
movq %rax, -0x98(%rbp)
jmp 0x1e48c
movq -0x98(%rbp), %rdi
movq 0x1dafe(%rip), %rsi     # 0x3bf98
callq 0x4310
jmp 0x1e4a1
jmp 0x1e2e3
leaq -0x48(%rbp), %rdi
callq 0x131d0
leaq -0x38(%rbp), %rdi
callq 0xa040
leaq -0x20(%rbp), %rdi
callq 0xa040
addq $0xa0, %rsp
popq %rbp
retq
leaq -0x38(%rbp), %rdi
callq 0xa040
leaq -0x20(%rbp), %rdi
callq 0xa040
movq -0x50(%rbp), %rdi
callq 0x45b0
nopw %cs:(%rax,%rax)