// File: ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::details::assignment_vec_op_node<double, exprtk::details::add_op<double>>::value() const
inline T value() const exprtk_override
         {
            const T v = branch(1)->value();

            T* vec = vds().data();

            loop_unroll::details lud(size());
            const T* upper_bound = vec + lud.upper_bound;

            while (vec < upper_bound)
            {
               #define exprtk_loop(N)       \
               Operation::assign(vec[N],v); \

               exprtk_loop( 0) exprtk_loop( 1)
               exprtk_loop( 2) exprtk_loop( 3)
               #ifndef exprtk_disable_superscalar_unroll
               exprtk_loop( 4) exprtk_loop( 5)
               exprtk_loop( 6) exprtk_loop( 7)
               exprtk_loop( 8) exprtk_loop( 9)
               exprtk_loop(10) exprtk_loop(11)
               exprtk_loop(12) exprtk_loop(13)
               exprtk_loop(14) exprtk_loop(15)
               #endif

               vec += lud.batch_size;
            }

            switch (lud.remainder)
            {
               #define case_stmt(N,fall_through)     \
               case N : Operation::assign(*vec++,v); \
               fall_through                          \

               #ifndef exprtk_disable_superscalar_unroll
               case_stmt(15, exprtk_fallthrough) case_stmt(14, exprtk_fallthrough)
               case_stmt(13, exprtk_fallthrough) case_stmt(12, exprtk_fallthrough)
               case_stmt(11, exprtk_fallthrough) case_stmt(10, exprtk_fallthrough)
               case_stmt( 9, exprtk_fallthrough) case_stmt( 8, exprtk_fallthrough)
               case_stmt( 7, exprtk_fallthrough) case_stmt( 6, exprtk_fallthrough)
               case_stmt( 5, exprtk_fallthrough) case_stmt( 4, exprtk_fallthrough)
               #endif
               case_stmt( 3, exprtk_fallthrough) case_stmt( 2, exprtk_fallthrough)
               case_stmt( 1, (void)0;)
            }

            #undef exprtk_loop
            #undef case_stmt

            return vec_node_ptr_->value();
         }

// Assembly:
subq $0x58, %rsp
movq %rdi, 0x50(%rsp)
movq 0x50(%rsp), %rdi
movq %rdi, 0x10(%rsp)
movq $0x1, 0x40(%rsp)
leaq 0x40(%rsp), %rsi
callq 0x3ebf00
movq %rax, %rdi
movq (%rdi), %rax
callq *0x18(%rax)
movq 0x10(%rsp), %rdi
movsd %xmm0, 0x48(%rsp)
callq 0x3ffa70
movq %rax, %rdi
callq 0x3b8ad0
movq 0x10(%rsp), %rdi
movq %rax, 0x38(%rsp)
callq 0x3ffa30
movq %rax, 0x20(%rsp)
leaq 0x2c(%rsp), %rdi
leaq 0x20(%rsp), %rsi
movl $0x10, %edx
callq 0x3a0c70
movq 0x38(%rsp), %rax
movslq 0x34(%rsp), %rcx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, 0x18(%rsp)
movq 0x38(%rsp), %rax
cmpq 0x18(%rsp), %rax
jae 0x3ff7bd
movq 0x38(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x8, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x10, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x18, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x20, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x28, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x30, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x38, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x40, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x48, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x50, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x58, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x60, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x68, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x70, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
addq $0x78, %rdi
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movl 0x2c(%rsp), %ecx
movq 0x38(%rsp), %rax
movl %ecx, %ecx
shlq $0x3, %rcx
addq %rcx, %rax
movq %rax, 0x38(%rsp)
jmp 0x3ff665
movl 0x30(%rsp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, 0x8(%rsp)
subl $0xe, %eax
ja 0x3ff97d
movq 0x8(%rsp), %rax
leaq 0x19e199(%rip), %rcx    # 0x59d978
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x38(%rsp), %rdi
movq %rdi, %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rsi
callq 0x3ffbf0
movq 0x10(%rsp), %rax
movq 0x50(%rax), %rdi
callq 0x3b8ef0
addq $0x58, %rsp
retq