// File: /workspace/github_cpp_makefile_star2_O2/bonetblai[P]mdp-engine/ctp3/../engine/base_policies.h
// Function: Online::Policy::base_greedy_t<state_t>::set_parameters(std::multimap<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>> const&, Dispatcher::dispatcher_t<state_t>&)
virtual void set_parameters(const std::multimap<std::string, std::string> &parameters, Dispatcher::dispatcher_t<T> &dispatcher) {
        std::multimap<std::string, std::string>::const_iterator it = parameters.find("optimistic");
        if( it != parameters.end() ) optimistic_ = it->second == "true";
        it = parameters.find("random-ties");
        if( it != parameters.end() ) random_ties_ = it->second == "true";
        it = parameters.find("caching");
        if( it != parameters.end() ) caching_ = it->second == "true";
        it = parameters.find("heuristic");
        if( it != parameters.end() ) {
            delete heuristic_;
            dispatcher.create_request(problem_, it->first, it->second);
            heuristic_ = dispatcher.fetch_heuristic(it->second);
        }
        policy_t<T>::setup_time_ = heuristic_ == 0 ? 0 : heuristic_->setup_time();
#ifdef DEBUG
        std::cout << "debug: greedy(): params:"
                  << " optimistic= " << optimistic_
                  << " random-ties= " << random_ties_
                  << " caching= " << caching_
                  << " heuristic= " << (heuristic_ == 0 ? std::string("null") : heuristic_->name())
                  << std::endl;
#endif
    }

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x30, %rsp
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
leaq 0xc7f3(%rip), %rsi      # 0x2115c
leaq 0x10(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x50e0
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0xcea2
movq %rax, %r12
leaq 0x10(%rsp), %rdi
callq 0x5120
leaq 0x8(%r15), %r13
cmpq %r13, %r12
je 0x149b1
addq $0x40, %r12
leaq 0xc793(%rip), %rsi      # 0x21139
movq %r12, %rdi
callq 0x6357
movb %al, 0x30(%rbx)
leaq 0xc7af(%rip), %rsi      # 0x21167
leaq 0x10(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x50e0
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0xcea2
movq %rax, %r12
leaq 0x10(%rsp), %rdi
callq 0x5120
cmpq %r13, %r12
je 0x149fc
addq $0x40, %r12
leaq 0xc748(%rip), %rsi      # 0x21139
movq %r12, %rdi
callq 0x6357
movb %al, 0x31(%rbx)
leaq 0xc770(%rip), %rsi      # 0x21173
leaq 0x10(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x50e0
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0xcea2
movq %rax, %r12
leaq 0x10(%rsp), %rdi
callq 0x5120
cmpq %r13, %r12
je 0x14a47
addq $0x40, %r12
leaq 0xc6fd(%rip), %rsi      # 0x21139
movq %r12, %rdi
callq 0x6357
movb %al, 0x32(%rbx)
leaq 0xbd54(%rip), %rsi      # 0x207a2
leaq 0x10(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x50e0
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0xcea2
movq %rax, %r15
leaq 0x10(%rsp), %rdi
callq 0x5120
movq 0x28(%rbx), %rax
cmpq %r13, %r15
je 0x14ab4
testq %rax, %rax
je 0x14a8e
movq (%rax), %rcx
movq %rax, %rdi
callq *0x8(%rcx)
movq 0x8(%rbx), %rsi
leaq 0x20(%r15), %rdx
addq $0x40, %r15
movq %r14, %rdi
movq %r15, %rcx
callq 0x6dfe
movq %r14, %rdi
movq %r15, %rsi
callq 0xc328
movq %rax, 0x28(%rbx)
testq %rax, %rax
je 0x14ac0
movss 0x14(%rax), %xmm0
jmp 0x14ac3
xorps %xmm0, %xmm0
movss %xmm0, 0x14(%rbx)
addq $0x30, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
jmp 0x14ae2
jmp 0x14af1
jmp 0x14ae2
jmp 0x14af1
jmp 0x14ae2
jmp 0x14af1
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x5120
jmp 0x14af4
movq %rax, %rbx
movq %rbx, %rdi
callq 0x5410