// File: ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::details::expression_node<double>* exprtk::parser<double>::expression_generator<double>::synthesize_sos_expression_impl<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>(exprtk::details::operator_type const&, 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)
inline expression_node_ptr synthesize_sos_expression_impl(const details::operator_type& opr, T0 s0, T1 s1)
         {
            switch (opr)
            {
               #define case_stmt(op0, op1)                                                                 \
               case op0 : return node_allocator_->                                                         \
                             allocate_tt<typename details::sos_node<Type,T0,T1,op1<Type> >,T0,T1>(s0, s1); \

               string_opr_switch_statements
               #undef case_stmt
               default : return error_node();
            }
         }

// Assembly:
subq $0x328, %rsp            # imm = 0x328
movq %rdx, 0x90(%rsp)
movq %rcx, 0x98(%rsp)
movq %rdi, 0x318(%rsp)
movq %rsi, 0x310(%rsp)
movq %rdx, 0x308(%rsp)
movq %rcx, 0x300(%rsp)
movq 0x318(%rsp), %rax
movq %rax, 0xa0(%rsp)
movq 0x310(%rsp), %rax
movl (%rax), %eax
addl $-0xe, %eax
movl %eax, %ecx
movq %rcx, 0xa8(%rsp)
subl $0x4b, %eax
ja 0x44b7ee
movq 0xa8(%rsp), %rax
leaq 0x153e6e(%rip), %rcx    # 0x59eee4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x90(%rsp), %rsi
movq 0xa0(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x88(%rsp)
leaq 0x2e0(%rsp), %rdi
callq 0x11b140
movq 0x98(%rsp), %rsi
leaq 0x2c0(%rsp), %rdi
callq 0x11b140
jmp 0x44b0bf
movq 0x88(%rsp), %rdi
leaq 0x2e0(%rsp), %rsi
leaq 0x2c0(%rsp), %rdx
callq 0x44bc40
movq %rax, 0x80(%rsp)
jmp 0x44b0e6
movq 0x80(%rsp), %rax
movq %rax, 0x320(%rsp)
leaq 0x2c0(%rsp), %rdi
callq 0x11b838
leaq 0x2e0(%rsp), %rdi
callq 0x11b838
jmp 0x44b7fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
jmp 0x44b14c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
leaq 0x2c0(%rsp), %rdi
callq 0x11b838
leaq 0x2e0(%rsp), %rdi
callq 0x11b838
jmp 0x44b80b
movq 0x90(%rsp), %rsi
movq 0xa0(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x78(%rsp)
leaq 0x290(%rsp), %rdi
callq 0x11b140
movq 0x98(%rsp), %rsi
leaq 0x270(%rsp), %rdi
callq 0x11b140
jmp 0x44b19b
movq 0x78(%rsp), %rdi
leaq 0x290(%rsp), %rsi
leaq 0x270(%rsp), %rdx
callq 0x44bd60
movq %rax, 0x70(%rsp)
jmp 0x44b1bc
movq 0x70(%rsp), %rax
movq %rax, 0x320(%rsp)
leaq 0x270(%rsp), %rdi
callq 0x11b838
leaq 0x290(%rsp), %rdi
callq 0x11b838
jmp 0x44b7fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
jmp 0x44b21f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
leaq 0x270(%rsp), %rdi
callq 0x11b838
leaq 0x290(%rsp), %rdi
callq 0x11b838
jmp 0x44b80b
movq 0x90(%rsp), %rsi
movq 0xa0(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x68(%rsp)
leaq 0x250(%rsp), %rdi
callq 0x11b140
movq 0x98(%rsp), %rsi
leaq 0x230(%rsp), %rdi
callq 0x11b140
jmp 0x44b26e
movq 0x68(%rsp), %rdi
leaq 0x250(%rsp), %rsi
leaq 0x230(%rsp), %rdx
callq 0x44be80
movq %rax, 0x60(%rsp)
jmp 0x44b28f
movq 0x60(%rsp), %rax
movq %rax, 0x320(%rsp)
leaq 0x230(%rsp), %rdi
callq 0x11b838
leaq 0x250(%rsp), %rdi
callq 0x11b838
jmp 0x44b7fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
jmp 0x44b2f2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
leaq 0x230(%rsp), %rdi
callq 0x11b838
leaq 0x250(%rsp), %rdi
callq 0x11b838
jmp 0x44b80b
movq 0x90(%rsp), %rsi
movq 0xa0(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x58(%rsp)
leaq 0x210(%rsp), %rdi
callq 0x11b140
movq 0x98(%rsp), %rsi
leaq 0x1f0(%rsp), %rdi
callq 0x11b140
jmp 0x44b341
movq 0x58(%rsp), %rdi
leaq 0x210(%rsp), %rsi
leaq 0x1f0(%rsp), %rdx
callq 0x44bfa0
movq %rax, 0x50(%rsp)
jmp 0x44b362
movq 0x50(%rsp), %rax
movq %rax, 0x320(%rsp)
leaq 0x1f0(%rsp), %rdi
callq 0x11b838
leaq 0x210(%rsp), %rdi
callq 0x11b838
jmp 0x44b7fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
jmp 0x44b3c5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
leaq 0x1f0(%rsp), %rdi
callq 0x11b838
leaq 0x210(%rsp), %rdi
callq 0x11b838
jmp 0x44b80b
movq 0x90(%rsp), %rsi
movq 0xa0(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x48(%rsp)
leaq 0x1d0(%rsp), %rdi
callq 0x11b140
movq 0x98(%rsp), %rsi
leaq 0x1b0(%rsp), %rdi
callq 0x11b140
jmp 0x44b414
movq 0x48(%rsp), %rdi
leaq 0x1d0(%rsp), %rsi
leaq 0x1b0(%rsp), %rdx
callq 0x44c0c0
movq %rax, 0x40(%rsp)
jmp 0x44b435
movq 0x40(%rsp), %rax
movq %rax, 0x320(%rsp)
leaq 0x1b0(%rsp), %rdi
callq 0x11b838
leaq 0x1d0(%rsp), %rdi
callq 0x11b838
jmp 0x44b7fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
jmp 0x44b498
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
leaq 0x1b0(%rsp), %rdi
callq 0x11b838
leaq 0x1d0(%rsp), %rdi
callq 0x11b838
jmp 0x44b80b
movq 0x90(%rsp), %rsi
movq 0xa0(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x38(%rsp)
leaq 0x190(%rsp), %rdi
callq 0x11b140
movq 0x98(%rsp), %rsi
leaq 0x170(%rsp), %rdi
callq 0x11b140
jmp 0x44b4e7
movq 0x38(%rsp), %rdi
leaq 0x190(%rsp), %rsi
leaq 0x170(%rsp), %rdx
callq 0x44c1e0
movq %rax, 0x30(%rsp)
jmp 0x44b508
movq 0x30(%rsp), %rax
movq %rax, 0x320(%rsp)
leaq 0x170(%rsp), %rdi
callq 0x11b838
leaq 0x190(%rsp), %rdi
callq 0x11b838
jmp 0x44b7fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
jmp 0x44b56b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
leaq 0x170(%rsp), %rdi
callq 0x11b838
leaq 0x190(%rsp), %rdi
callq 0x11b838
jmp 0x44b80b
movq 0x90(%rsp), %rsi
movq 0xa0(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x28(%rsp)
leaq 0x150(%rsp), %rdi
callq 0x11b140
movq 0x98(%rsp), %rsi
leaq 0x130(%rsp), %rdi
callq 0x11b140
jmp 0x44b5ba
movq 0x28(%rsp), %rdi
leaq 0x150(%rsp), %rsi
leaq 0x130(%rsp), %rdx
callq 0x44c300
movq %rax, 0x20(%rsp)
jmp 0x44b5db
movq 0x20(%rsp), %rax
movq %rax, 0x320(%rsp)
leaq 0x130(%rsp), %rdi
callq 0x11b838
leaq 0x150(%rsp), %rdi
callq 0x11b838
jmp 0x44b7fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
jmp 0x44b63e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
leaq 0x130(%rsp), %rdi
callq 0x11b838
leaq 0x150(%rsp), %rdi
callq 0x11b838
jmp 0x44b80b
movq 0x90(%rsp), %rsi
movq 0xa0(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x18(%rsp)
leaq 0x110(%rsp), %rdi
callq 0x11b140
movq 0x98(%rsp), %rsi
leaq 0xf0(%rsp), %rdi
callq 0x11b140
jmp 0x44b68d
movq 0x18(%rsp), %rdi
leaq 0x110(%rsp), %rsi
leaq 0xf0(%rsp), %rdx
callq 0x44c420
movq %rax, 0x10(%rsp)
jmp 0x44b6ae
movq 0x10(%rsp), %rax
movq %rax, 0x320(%rsp)
leaq 0xf0(%rsp), %rdi
callq 0x11b838
leaq 0x110(%rsp), %rdi
callq 0x11b838
jmp 0x44b7fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
jmp 0x44b711
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
leaq 0xf0(%rsp), %rdi
callq 0x11b838
leaq 0x110(%rsp), %rdi
callq 0x11b838
jmp 0x44b80b
movq 0x90(%rsp), %rsi
movq 0xa0(%rsp), %rax
movq 0x8(%rax), %rax
movq %rax, 0x8(%rsp)
leaq 0xd0(%rsp), %rdi
callq 0x11b140
movq 0x98(%rsp), %rsi
leaq 0xb0(%rsp), %rdi
callq 0x11b140
jmp 0x44b760
movq 0x8(%rsp), %rdi
leaq 0xd0(%rsp), %rsi
leaq 0xb0(%rsp), %rdx
callq 0x44c540
movq %rax, (%rsp)
jmp 0x44b780
movq (%rsp), %rax
movq %rax, 0x320(%rsp)
leaq 0xb0(%rsp), %rdi
callq 0x11b838
leaq 0xd0(%rsp), %rdi
callq 0x11b838
jmp 0x44b7fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
jmp 0x44b7df
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x2b8(%rsp)
movl %eax, 0x2b4(%rsp)
leaq 0xb0(%rsp), %rdi
callq 0x11b838
leaq 0xd0(%rsp), %rdi
callq 0x11b838
jmp 0x44b80b
callq 0x2821f0
movq %rax, 0x320(%rsp)
movq 0x320(%rsp), %rax
addq $0x328, %rsp            # imm = 0x328
retq
movq 0x2b8(%rsp), %rdi
callq 0x11b4e0
nopl (%rax,%rax)