// File: /workspace/github_cpp_makefile_star2_O2/bonetblai[P]mdp-engine/ctp3/../engine/dispatcher.h
// Function: Dispatcher::dispatcher_t<state_t>::print_stats(std::ostream&, Dispatcher::dispatcher_t<state_t>::evaluate_result_t const&) const
void dispatcher_t<T>::print_stats(std::ostream &os, const evaluate_result_t &result) const {
    const Online::Policy::policy_t<T> &policy = *result.policy_;
   
    // general stats 
    os << Utils::green() << "stats:" << Utils::normal()
       << " type=eval"
       << " name=" << result.name_
       << " seed=" << result.seed_
       << " problem.expansions=" << result.problem_expansions_;

    // stats from trials
    os << Utils::green() << " eval.value=" << result.eval_value_ << Utils::normal()
       << " eval.stdev=" << result.eval_stdev_;

    // time stats
    os << " time.raw=" << result.time_raw_
       << " time.setup=" << policy.setup_time();
    if( policy.uses_base_policy() != Online::Policy::policy_t<T>::usage_t::No )
         os << " time.base-policy=" << policy.base_policy_time();
    if( policy.uses_heuristic() != Online::Policy::policy_t<T>::usage_t::No )
         os << " time.heuristic=" << policy.heuristic_time();
    os << " time.policy=" << result.time_raw_ - policy.base_policy_time() - policy.heuristic_time()
       << std::endl;
    policy.print_other_stats(os, 2);
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rdx, %r15
movq %rsi, %rbx
movq 0x20(%rdx), %r14
leaq 0x28(%rsp), %r12
movq %r12, %rdi
callq 0x1f040
movq %rbx, %rdi
movq %r12, %rsi
callq 0x5250
leaq 0x1b159(%rip), %rsi     # 0x23111
movq %rax, %rdi
callq 0x5290
movq %rax, %r12
leaq 0x8(%rsp), %rdi
callq 0x1f074
leaq 0x8(%rsp), %rsi
movq %r12, %rdi
callq 0x5250
leaq 0x1b243(%rip), %rsi     # 0x23224
movq %rax, %rdi
callq 0x5290
leaq 0x185d8(%rip), %rsi     # 0x205c8
movq %rax, %rdi
callq 0x5290
movq %rax, %rdi
movq %r15, %rsi
callq 0x5250
leaq 0x181df(%rip), %rsi     # 0x201e9
movq %rax, %rdi
callq 0x5290
movl 0x28(%r15), %esi
movq %rax, %rdi
callq 0x51c0
leaq 0x1b0ff(%rip), %rsi     # 0x23124
movq %rax, %rdi
callq 0x5290
movl 0x2c(%r15), %esi
movq %rax, %rdi
callq 0x51c0
leaq 0x8(%rsp), %rdi
callq 0x5120
leaq 0x28(%rsp), %rdi
callq 0x5120
leaq 0x28(%rsp), %r12
movq %r12, %rdi
callq 0x1f040
movq %rbx, %rdi
movq %r12, %rsi
callq 0x5250
leaq 0x1b1c3(%rip), %rsi     # 0x2322f
movq %rax, %rdi
callq 0x5290
movss 0x30(%r15), %xmm0
movq %rax, %rdi
callq 0x51f0
movq %rax, %r12
leaq 0x8(%rsp), %rdi
callq 0x1f074
leaq 0x8(%rsp), %rsi
movq %r12, %rdi
callq 0x5250
leaq 0x1b199(%rip), %rsi     # 0x2323c
movq %rax, %rdi
callq 0x5290
movss 0x34(%r15), %xmm0
movq %rax, %rdi
callq 0x51f0
leaq 0x8(%rsp), %rdi
callq 0x5120
leaq 0x28(%rsp), %rdi
callq 0x5120
leaq 0x1b104(%rip), %rsi     # 0x231d8
movq %rbx, %rdi
callq 0x5290
movss 0x38(%r15), %xmm0
movq %rax, %rdi
callq 0x51f0
leaq 0x1b158(%rip), %rsi     # 0x23249
movq %rax, %rdi
callq 0x5290
movss 0x14(%r14), %xmm0
movq %rax, %rdi
callq 0x51f0
movq (%r14), %rax
movq %r14, %rdi
callq *0x40(%rax)
testl %eax, %eax
je 0x8131
leaq 0x1b13b(%rip), %rsi     # 0x23256
movq %rbx, %rdi
callq 0x5290
movss 0x18(%r14), %xmm0
movq %rax, %rdi
callq 0x51f0
movq (%r14), %rax
movq %r14, %rdi
callq *0x48(%rax)
testl %eax, %eax
je 0x815b
leaq 0x1b09e(%rip), %rsi     # 0x231e3
movq %rbx, %rdi
callq 0x5290
movss 0x1c(%r14), %xmm0
movq %rax, %rdi
callq 0x51f0
leaq 0x1b107(%rip), %rsi     # 0x23269
movq %rbx, %rdi
callq 0x5290
movss 0x38(%r15), %xmm0
movss 0x18(%r14), %xmm1
addss 0x1c(%r14), %xmm1
subss %xmm1, %xmm0
movq %rax, %rdi
callq 0x51f0
movq %rax, %rdi
callq 0x5130
movq (%r14), %rax
pushq $0x2
popq %rdx
movq %r14, %rdi
movq %rbx, %rsi
callq *0x30(%rax)
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
retq
jmp 0x81b3
jmp 0x81b3
jmp 0x81b3
jmp 0x81b8
movq %rax, %rbx
jmp 0x81c5
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x5120
leaq 0x28(%rsp), %rdi
callq 0x5120
movq %rbx, %rdi
callq 0x5410
nop