// File: /workspace/github_c_makefile_star2_O0/stonezwr[P]SpiKL-IP/main.C
// Function: PrintResultsToFile(std::vector<int, std::allocator<int>> const&, std::vector<int, std::allocator<int>> const&, std::vector<int, std::allocator<int>> const&, int)
void PrintResultsToFile(const vector<int>& r_correct, const vector<int>& r_wrong, const vector<int>& r_even, int n_speeches){
    assert(!r_correct.empty() && !r_wrong.empty() && !r_even.empty());

    ofstream f_c("outputs/rates.txt");
    ofstream f_w("outputs/errors.txt");
    ofstream f_e("outputs/evens.txt");
    if(!f_c.is_open()){
        cout<<"Cannot open: outputs/rates.txt"<<endl;
        return;
    }
    for(size_t i = 0; i < r_correct.size(); ++i){
        f_c<<r_correct[i]<<endl;
        f_w<<r_wrong[i]<<endl;
        f_e<<r_even[i]<<endl;			
        assert(r_correct[i] + r_wrong[i] + r_even[i] == n_speeches);
    }
    f_c<<endl, f_w<<endl, f_e<<endl;
    f_c.close(), f_w.close(), f_e.close();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x680, %rsp            # imm = 0x680
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movl %ecx, -0x1c(%rbp)
movq -0x8(%rbp), %rdi
callq 0x56b0
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x641(%rbp)
jne 0x31e5b
movq -0x10(%rbp), %rdi
callq 0x56b0
movb %al, %cl
xorl %eax, %eax
testb $0x1, %cl
movb %al, -0x641(%rbp)
jne 0x31e5b
movq -0x18(%rbp), %rdi
callq 0x56b0
xorb $-0x1, %al
movb %al, -0x641(%rbp)
movb -0x641(%rbp), %al
testb $0x1, %al
jne 0x31e67
jmp 0x31e69
jmp 0x31e88
leaq 0x4d76(%rip), %rdi      # 0x36be6
leaq 0x4da9(%rip), %rsi      # 0x36c20
movl $0x2a, %edx
leaq 0x4da4(%rip), %rcx      # 0x36c27
callq 0x4210
leaq 0x4e26(%rip), %rsi      # 0x36cb5
leaq -0x220(%rbp), %rdi
movl $0x10, %edx
movl %edx, -0x648(%rbp)
callq 0x43e0
movl -0x648(%rbp), %edx
leaq 0x4dd0(%rip), %rsi      # 0x36c83
leaq -0x420(%rbp), %rdi
callq 0x43e0
jmp 0x31ec1
leaq 0x4dce(%rip), %rsi      # 0x36c96
leaq -0x630(%rbp), %rdi
movl $0x10, %edx
callq 0x43e0
jmp 0x31edb
leaq -0x220(%rbp), %rdi
callq 0x4270
movb %al, -0x649(%rbp)
jmp 0x31eef
movb -0x649(%rbp), %al
testb $0x1, %al
jne 0x31f90
jmp 0x31eff
movq 0x1b0c2(%rip), %rdi     # 0x4cfc8
leaq 0x4d9b(%rip), %rsi      # 0x36ca8
callq 0x4360
movq %rax, -0x658(%rbp)
jmp 0x31f1b
movq -0x658(%rbp), %rdi
movq 0x1b08f(%rip), %rsi     # 0x4cfb8
callq 0x43b0
jmp 0x31f30
movl $0x1, -0x634(%rbp)
jmp 0x3217f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x321b8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
jmp 0x321ac
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x428(%rbp)
movl %eax, -0x42c(%rbp)
leaq -0x630(%rbp), %rdi
callq 0x4570
jmp 0x321ac
movq $0x0, -0x640(%rbp)
movq -0x640(%rbp), %rax
movq %rax, -0x660(%rbp)
movq -0x8(%rbp), %rdi
callq 0x5600
movq %rax, %rcx
movq -0x660(%rbp), %rax
cmpq %rcx, %rax
jae 0x3210c
movq -0x8(%rbp), %rdi
movq -0x640(%rbp), %rsi
callq 0x2d0f0
movl (%rax), %esi
leaq -0x220(%rbp), %rdi
callq 0x46c0
movq %rax, -0x668(%rbp)
jmp 0x31fec
movq -0x668(%rbp), %rdi
movq 0x1afbe(%rip), %rsi     # 0x4cfb8
callq 0x43b0
jmp 0x32001
movq -0x10(%rbp), %rdi
movq -0x640(%rbp), %rsi
callq 0x2d0f0
movl (%rax), %esi
leaq -0x420(%rbp), %rdi
callq 0x46c0
movq %rax, -0x670(%rbp)
jmp 0x32028
movq -0x670(%rbp), %rdi
movq 0x1af82(%rip), %rsi     # 0x4cfb8
callq 0x43b0
jmp 0x3203d
movq -0x18(%rbp), %rdi
movq -0x640(%rbp), %rsi
callq 0x2d0f0
movl (%rax), %esi
leaq -0x630(%rbp), %rdi
callq 0x46c0
movq %rax, -0x678(%rbp)
jmp 0x32064
movq -0x678(%rbp), %rdi
movq 0x1af46(%rip), %rsi     # 0x4cfb8
callq 0x43b0
jmp 0x32079
movq -0x8(%rbp), %rdi
movq -0x640(%rbp), %rsi
callq 0x2d0f0
movl (%rax), %eax
movl %eax, -0x680(%rbp)
movq -0x10(%rbp), %rdi
movq -0x640(%rbp), %rsi
callq 0x2d0f0
movq %rax, %rcx
movl -0x680(%rbp), %eax
addl (%rcx), %eax
movl %eax, -0x67c(%rbp)
movq -0x18(%rbp), %rdi
movq -0x640(%rbp), %rsi
callq 0x2d0f0
movq %rax, %rcx
movl -0x67c(%rbp), %eax
addl (%rcx), %eax
cmpl -0x1c(%rbp), %eax
jne 0x320d4
jmp 0x320f3
leaq 0x4bec(%rip), %rdi      # 0x36cc7
leaq 0x4b3e(%rip), %rsi      # 0x36c20
movl $0x37, %edx
leaq 0x4b39(%rip), %rcx      # 0x36c27
callq 0x4210
jmp 0x320f5
movq -0x640(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x640(%rbp)
jmp 0x31f9b
movq 0x1aea5(%rip), %rsi     # 0x4cfb8
leaq -0x220(%rbp), %rdi
callq 0x43b0
jmp 0x32121
movq 0x1ae90(%rip), %rsi     # 0x4cfb8
leaq -0x420(%rbp), %rdi
callq 0x43b0
jmp 0x32136
movq 0x1ae7b(%rip), %rsi     # 0x4cfb8
leaq -0x630(%rbp), %rdi
callq 0x43b0
jmp 0x3214b
leaq -0x220(%rbp), %rdi
callq 0x4530
jmp 0x32159
leaq -0x420(%rbp), %rdi
callq 0x4530
jmp 0x32167
leaq -0x630(%rbp), %rdi
callq 0x4530
jmp 0x32175
movl $0x0, -0x634(%rbp)
leaq -0x630(%rbp), %rdi
callq 0x4570
leaq -0x420(%rbp), %rdi
callq 0x4570
leaq -0x220(%rbp), %rdi
callq 0x4570
addq $0x680, %rsp            # imm = 0x680
popq %rbp
retq
leaq -0x420(%rbp), %rdi
callq 0x4570
leaq -0x220(%rbp), %rdi
callq 0x4570
movq -0x428(%rbp), %rdi
callq 0x46d0