// File: /workspace/github_cpp_makefile_star2_O1/ArashPartow[P]exprtk/./exprtk.hpp
// Function: double exprtk::details::vararg_mand_op<double>::process<std::pair<exprtk::details::expression_node<double>*, bool>, std::allocator<std::pair<exprtk::details::expression_node<double>*, bool>>, std::vector>(std::vector<std::pair<exprtk::details::expression_node<double>*, bool>, std::allocator<std::pair<exprtk::details::expression_node<double>*, bool>>> const&)
static inline T process(const Sequence<Type,Allocator>& arg_list)
         {
            switch (arg_list.size())
            {
               case 1  : return process_1(arg_list);
               case 2  : return process_2(arg_list);
               case 3  : return process_3(arg_list);
               case 4  : return process_4(arg_list);
               case 5  : return process_5(arg_list);
               default :
                         {
                            for (std::size_t i = 0; i < arg_list.size(); ++i)
                            {
                               if (std::equal_to<T>()(T(0), value(arg_list[i])))
                                  return T(0);
                            }

                            return T(1);
                         }
            }
         }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %rbx
movq (%rdi), %rax
movq 0x8(%rdi), %rcx
subq %rax, %rcx
sarq $0x4, %rcx
decq %rcx
cmpq $0x4, %rcx
ja 0x2999d3
leaq 0x11a0e6(%rip), %rdx    # 0x3b3954
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
movq (%rax), %rdi
jmp 0x2999b6
movq (%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x299898
jnp 0x299a3f
movq (%rbx), %rax
movq 0x10(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x2998b5
jnp 0x299a3f
movq (%rbx), %rax
movq 0x20(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x2998d2
jnp 0x299a3f
movq (%rbx), %rax
movq 0x30(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x2998ef
jnp 0x299a3f
movq (%rbx), %rax
movq 0x40(%rax), %rdi
jmp 0x2999b6
movq (%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x299914
jnp 0x299a3f
movq (%rbx), %rax
movq 0x10(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x299931
jnp 0x299a3f
movq (%rbx), %rax
movq 0x20(%rax), %rdi
jmp 0x2999b6
movq (%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x299953
jnp 0x299a3f
movq (%rbx), %rax
movq 0x10(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x299970
jnp 0x299a3f
movq (%rbx), %rax
movq 0x20(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x29998d
jnp 0x299a3f
movq (%rbx), %rax
movq 0x30(%rax), %rdi
jmp 0x2999b6
movq (%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x2999af
jnp 0x299a3f
movq (%rbx), %rax
movq 0x10(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm1, %xmm1
cmpneqsd %xmm0, %xmm1
movsd 0x118653(%rip), %xmm2   # 0x3b2020
andpd %xmm1, %xmm2
jmp 0x299a3f
movq (%rbx), %rax
cmpq %rax, 0x8(%rbx)
setne %bpl
je 0x299a37
movq (%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x2999f5
jnp 0x299a32
movl $0x10, %r14d
xorl %r15d, %r15d
incq %r15
movq (%rbx), %rax
movq 0x8(%rbx), %rcx
subq %rax, %rcx
sarq $0x4, %rcx
cmpq %rcx, %r15
setb %bpl
jae 0x299a37
movq (%rax,%r14), %rdi
addq $0x10, %r14
movq (%rdi), %rax
callq *0x18(%rax)
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x2999fe
jp 0x2999fe
testb %bpl, %bpl
jne 0x299a3f
movsd 0x1185e1(%rip), %xmm2   # 0x3b2020
movapd %xmm2, %xmm0
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq