// File: /workspace/github_cpp_makefile_star2_O3/canzarlab[P]Trajan/src/Solver.cpp
// Function: Solver::PrintScore(double)
void Solver::PrintScore(double weight)
{
    if (d == "e")
    {
        double optVal2 = -weight;
        int n = (int) cost_matrix.size();
        int m = (int) cost_matrix[0].size();
        for (int i=0; i < n-1; ++i)
            optVal2 += cost_matrix[i][m-1];
        for (int j=0; j < m-1; ++j)
            optVal2 += cost_matrix[n-1][j];
        optVal2 = optVal2*scaleCoef;
        cout << ">>>>>>>>>>>>>>>>>>>>>> Optimal value:" << optVal2 << "." << endl;
        moptVal = optVal2;
//         return optVal2;
    }
    else if (dag){
        cout << weight << " ";
//         return weight;
    }
    else{
        cout << ((d == "j") ? JaccardDist(weight) : SymdifDist(weight)) << " ";
//         return ((d == "j") ? JaccardDist(weight) : SymdifDist(weight));
    }
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x18, %rsp
movaps %xmm0, (%rsp)
movq %rdi, %rbx
leaq 0x40(%rdi), %r14
leaq 0x3af8a(%rip), %rsi     # 0x6ec3b
movq %r14, %rdi
callq 0x90e0
testl %eax, %eax
je 0x33cd8
cmpb $0x1, 0x68(%rbx)
jne 0x33ddd
movq 0x522f2(%rip), %rdi     # 0x85fc0
movapd (%rsp), %xmm0
jmp 0x33e61
movapd (%rsp), %xmm0
xorpd 0x286db(%rip), %xmm0    # 0x5c3c0
movq 0x70(%rbx), %rcx
movq 0x78(%rbx), %rax
subq %rcx, %rax
shrq $0x3, %rax
imull $0xaaaaaaab, %eax, %esi # imm = 0xAAAAAAAB
movq 0x8(%rcx), %rdi
subq (%rcx), %rdi
movq %rdi, %rax
shrq $0x3, %rax
leal -0x1(%rsi), %edx
cmpl $0x2, %esi
jl 0x33d3c
shlq $0x1d, %rdi
movabsq $-0x100000000, %rsi     # imm = 0xFFFFFFFF00000000
addq %rdi, %rsi
sarq $0x1d, %rsi
movl %edx, %edi
movq %rcx, %r8
movq (%r8), %r9
addsd (%r9,%rsi), %xmm0
addq $0x18, %r8
decq %rdi
jne 0x33d2a
cmpl $0x2, %eax
jl 0x33d5d
decl %eax
movslq %edx, %rdx
leaq (%rdx,%rdx,2), %rdx
movq (%rcx,%rdx,8), %rcx
xorl %edx, %edx
addsd (%rcx,%rdx,8), %xmm0
incq %rdx
cmpq %rdx, %rax
jne 0x33d50
mulsd 0x28(%rbx), %xmm0
movapd %xmm0, (%rsp)
movq 0x52252(%rip), %r14     # 0x85fc0
leaq 0x3a079(%rip), %rsi     # 0x6ddee
movl $0x25, %edx
movq %r14, %rdi
callq 0x93b0
movq %r14, %rdi
movaps (%rsp), %xmm0
callq 0x9570
movq %rax, %r14
leaq 0x29e72(%rip), %rsi     # 0x5dc0a
movl $0x1, %edx
movq %rax, %rdi
callq 0x93b0
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x9330
movsbl %al, %esi
movq %r14, %rdi
callq 0x9040
movq %rax, %rdi
callq 0x9230
movaps (%rsp), %xmm0
movsd %xmm0, 0x20(%rbx)
addq $0x18, %rsp
popq %rbx
popq %r14
retq
leaq 0x282e2(%rip), %rsi     # 0x5c0c6
movq %r14, %rdi
callq 0x90e0
testl %eax, %eax
je 0x33dff
movq %rbx, %rdi
movapd (%rsp), %xmm0
callq 0x33ee2
jmp 0x33e5a
movq 0x30(%rbx), %rax
movq 0x38(%rbx), %rcx
movq 0x10(%rax), %rdx
subq 0x8(%rax), %rdx
movslq 0x70(%rax), %rax
sarq $0x3, %rdx
movslq 0x70(%rcx), %rsi
addq %rax, %rsi
movq 0x10(%rcx), %rax
subq 0x8(%rcx), %rax
sarq $0x3, %rax
addq %rdx, %rax
subq %rax, %rsi
addq $-0x2, %rsi
movq %rsi, %xmm1
punpckldq 0x39f5f(%rip), %xmm1 # xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
subpd 0x39f67(%rip), %xmm1    # 0x6ddb0
movapd %xmm1, %xmm0
unpckhpd %xmm1, %xmm0            # xmm0 = xmm0[1],xmm1[1]
addsd %xmm1, %xmm0
subsd (%rsp), %xmm0
movq 0x5215f(%rip), %rdi     # 0x85fc0
callq 0x9570
leaq 0x283f5(%rip), %rsi     # 0x5c262
movl $0x1, %edx
movq %rax, %rdi
addq $0x18, %rsp
popq %rbx
popq %r14
jmp 0x93b0
nop