// File: /workspace/github_cpp_makefile_star2_O1/vsklad[P]cgen/commands.cpp
// Function: print_statistics(bal::Cnf const&)
void print_statistics(const bal::Cnf& cnf) {
    if (cnf.clauses_size() == 0) {
        std::cout << MSG_FORMULA_IS_SATISFIABLE;
        if (cnf.variables_size() > 0) {
            std::cout << " with " << std::dec << cnf.variables_size() << " free variables";
        } else {
            std::cout << " with 1 solution";
        };
        std::cout << std::endl;
    } else {
        std::cout << "CNF: " << std::dec;
        std::cout << cnf.variables_size() << " var";
        std::cout << ", " << cnf.clauses_size() << "/" << cnf.clauses_size<0, true>() << "/" << cnf.clauses_size<2>() << " cls/agr/bin";
        std::cout << ", " << cnf.clauses_size<0, false, true>() << " lit";
        std::cout << ", " << (cnf.memory_size() >> 10) << " Kb" << std::endl;
    };
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
leaq 0x78(%rdi), %r14
movq %r14, %rdi
callq 0x12aec
testl %eax, %eax
je 0x1fa92
movq 0x3f66a(%rip), %r15     # 0x5efa8
leaq 0x28a54(%rip), %rsi     # 0x48399
movl $0x5, %edx
movq %r15, %rdi
callq 0xc320
movq (%r15), %rax
movq -0x18(%rax), %rax
movl 0x18(%r15,%rax), %ecx
andl $-0x4b, %ecx
orl $0x2, %ecx
movl %ecx, 0x18(%r15,%rax)
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x58(%rax)
movl %eax, %esi
movq %r15, %rdi
callq 0xc190
leaq 0x28a1c(%rip), %rsi     # 0x4839f
movl $0x4, %edx
movq %rax, %rdi
callq 0xc320
leaq 0x28a2f(%rip), %rsi     # 0x483c6
movl $0x2, %edx
movq %r15, %rdi
callq 0xc320
movq %r14, %rdi
callq 0x12aec
movl %eax, %esi
movq %r15, %rdi
callq 0xc190
movq %rax, %r13
leaq 0x2239e(%rip), %r12     # 0x41d5e
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0xc320
movq %r14, %rdi
callq 0x150c8
movl %eax, %esi
movq %r13, %rdi
callq 0xc190
movq %rax, %r13
movl $0x1, %edx
movq %rax, %rdi
movq %r12, %rsi
callq 0xc320
movq %r14, %rdi
callq 0x22340
movl %eax, %esi
movq %r13, %rdi
callq 0xc190
leaq 0x28996(%rip), %rsi     # 0x483a4
movl $0xc, %edx
movq %rax, %rdi
callq 0xc320
movl $0x2, %edx
movq %r15, %rdi
leaq 0x2899c(%rip), %r12     # 0x483c6
movq %r12, %rsi
callq 0xc320
movq %r14, %rdi
callq 0x224f8
movl %eax, %esi
movq %r15, %rdi
callq 0xc190
leaq 0x28966(%rip), %rsi     # 0x483b1
movl $0x4, %edx
movq %rax, %rdi
callq 0xc320
movl $0x2, %edx
movq %r15, %rdi
movq %r12, %rsi
callq 0xc320
movq 0x78(%rbx), %rax
movq %r14, %rdi
callq *0x10(%rax)
shrq $0xa, %rax
movq %r15, %rdi
movq %rax, %rsi
callq 0xc190
movq %rax, %r14
leaq 0x24e0d(%rip), %rsi     # 0x44898
movl $0x3, %edx
jmp 0x1fb08
movq 0x3f50f(%rip), %r14     # 0x5efa8
leaq 0x288b6(%rip), %rsi     # 0x48356
movl $0x1a, %edx
movq %r14, %rdi
callq 0xc320
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x58(%rax)
testl %eax, %eax
je 0x1fb45
leaq 0x288ac(%rip), %rsi     # 0x48371
movl $0x6, %edx
movq %r14, %rdi
callq 0xc320
movq (%r14), %rax
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl $-0x4b, %ecx
orl $0x2, %ecx
movl %ecx, 0x18(%r14,%rax)
movq (%rbx), %rax
movq %rbx, %rdi
callq *0x58(%rax)
movl %eax, %esi
movq %r14, %rdi
callq 0xc190
leaq 0x28875(%rip), %rsi     # 0x48378
movl $0xf, %edx
movq %rax, %rdi
callq 0xc320
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0xc2a0
movsbl %al, %esi
movq %r14, %rdi
callq 0xc030
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0xc1a0
movq 0x3f45c(%rip), %r14     # 0x5efa8
leaq 0x28835(%rip), %rsi     # 0x48388
movl $0x10, %edx
movq %r14, %rdi
jmp 0x1fb0b