// File: /workspace/github_cpp_makefile_star2_O3/bonetblai[P]mdp-engine/ctp3/../engine/lrtdp.h
// Function: Algorithm::lrtdp_base_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("epsilon");
        if( it != parameters.end() ) epsilon_ = strtof(it->second.c_str(), 0);
        it = parameters.find("bound");
        if( it != parameters.end() ) bound_ = strtoul(it->second.c_str(), 0, 0);
        it = parameters.find("epsilon-greedy");
        if( it != parameters.end() ) epsilon_greedy_ = strtof(it->second.c_str(), 0);
        it = parameters.find("heuristic");
        if( it != parameters.end() ) {
            delete heuristic_;
            dispatcher.create_request(problem_, it->first, it->second);
            heuristic_ = dispatcher.fetch_heuristic(it->second);
        }
        it = parameters.find("seed");
        if( it != parameters.end() ) seed_ = strtol(it->second.c_str(), 0, 0);
#ifdef DEBUG
        std::cout << "debug: lrtdp-base(): params:"
                  << " epsilon=" << epsilon_
                  << " bound=" << bound_
                  << " epsilon-greedy=" << epsilon_greedy_
                  << " heuristic=" << (heuristic_ == 0 ? std::string("null") : heuristic_->name())
                  << " seed=" << seed_
                  << std::endl;
#endif
    }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdx, %r15
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x18(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x1827a(%rip), %rsi     # 0x2ba2f
leaq 0x1827a(%rip), %rdx     # 0x2ba36
leaq 0x8(%rsp), %rdi
callq 0xd386
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
callq 0xef28
movq %rax, %r12
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x137e5
callq 0x5260
leaq 0x8(%r14), %rbp
cmpq %rbp, %r12
je 0x137ff
movq 0x40(%r12), %rdi
xorl %esi, %esi
callq 0x5360
movss %xmm0, 0x20(%rbx)
leaq 0x8(%rsp), %rdi
movq %r13, (%rdi)
leaq 0x1854a(%rip), %rsi     # 0x2bd58
leaq 0x18548(%rip), %rdx     # 0x2bd5d
callq 0xd386
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
callq 0xef28
movq %rax, %r12
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x13839
callq 0x5260
cmpq %rbp, %r12
je 0x1384f
movq 0x40(%r12), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x50e0
movl %eax, 0x24(%rbx)
leaq 0x8(%rsp), %rdi
movq %r13, (%rdi)
leaq 0x18500(%rip), %rsi     # 0x2bd5e
leaq 0x18507(%rip), %rdx     # 0x2bd6c
callq 0xd386
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
callq 0xef28
movq %rax, %r12
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x13889
callq 0x5260
cmpq %rbp, %r12
je 0x1389f
movq 0x40(%r12), %rdi
xorl %esi, %esi
callq 0x5360
movss %xmm0, 0x28(%rbx)
leaq 0x8(%rsp), %rdi
movq %r13, (%rdi)
leaq 0x17f34(%rip), %rsi     # 0x2b7e2
leaq 0x17f36(%rip), %rdx     # 0x2b7eb
callq 0xd386
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
callq 0xef28
movq %rax, %r12
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x138d9
callq 0x5260
cmpq %rbp, %r12
je 0x13926
movq 0x10(%rbx), %rdi
testq %rdi, %rdi
je 0x138ed
movq (%rdi), %rax
callq *0x8(%rax)
movq 0x8(%rbx), %rsi
leaq 0x20(%r12), %rdx
addq $0x40, %r12
movq %r15, %rdi
movq %r12, %rcx
callq 0x7a98
leaq 0x38(%r15), %rdi
movq %r12, %rsi
callq 0x17c4e
addq $0x40, %r15
cmpq %r15, %rax
je 0x13920
movq 0x40(%rax), %rax
jmp 0x13922
xorl %eax, %eax
movq %rax, 0x10(%rbx)
leaq 0x8(%rsp), %rdi
movq %r13, (%rdi)
leaq 0x178ab(%rip), %rsi     # 0x2b1e0
leaq 0x178a8(%rip), %rdx     # 0x2b1e4
callq 0xd386
leaq 0x8(%rsp), %rsi
movq %r14, %rdi
callq 0xef28
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x13960
callq 0x5260
cmpq %rbp, %r14
je 0x13975
movq 0x40(%r14), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x5370
movl %eax, 0x18(%rbx)
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x13994
jmp 0x139a8
jmp 0x13994
jmp 0x139a8
jmp 0x13994
jmp 0x139a8
jmp 0x13994
jmp 0x139a8
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x139ab
callq 0x5260
jmp 0x139ab
movq %rax, %rbx
movq %rbx, %rdi
callq 0x5410
nop