// File: ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::details::for_loop_bc_node<double>::value() const
inline T value() const exprtk_override
         {
            T result = T(0);

            if (parent_t::initialiser_.first)
               parent_t::initialiser_.first->value();

            if (parent_t::incrementor_.first)
            {
               while (is_true(parent_t::condition_))
               {
                  try
                  {
                     result = parent_t::loop_body_.first->value();
                  }
                  catch(const break_exception<T>& e)
                  {
                     return e.value;
                  }
                  catch(const continue_exception&)
                  {}

                  parent_t::incrementor_.first->value();
               }
            }
            else
            {
               while (is_true(parent_t::condition_))
               {
                  try
                  {
                     result = parent_t::loop_body_.first->value();
                  }
                  catch(const break_exception<T>& e)
                  {
                     return e.value;
                  }
                  catch(const continue_exception&)
                  {}
               }
            }

            return result;
         }

// Assembly:
subq $0x78, %rsp
movq %rdi, 0x68(%rsp)
movq 0x68(%rsp), %rax
movq %rax, 0x28(%rsp)
xorps %xmm0, %xmm0
movsd %xmm0, 0x60(%rsp)
cmpq $0x0, 0x20(%rax)
je 0x4ebc92
movq 0x28(%rsp), %rax
movq 0x20(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
movq 0x28(%rsp), %rax
cmpq $0x0, 0x40(%rax)
je 0x4ebd68
jmp 0x4ebca4
movq 0x28(%rsp), %rdi
addq $0x30, %rdi
callq 0x4e4d70
testb $0x1, %al
jne 0x4ebcbb
jmp 0x4ebd63
movq 0x28(%rsp), %rax
movq 0x50(%rax), %rdi
movq (%rdi), %rax
movq 0x18(%rax), %rax
callq *%rax
movsd %xmm0, 0x20(%rsp)
jmp 0x4ebcd5
movsd 0x20(%rsp), %xmm0
movsd %xmm0, 0x60(%rsp)
jmp 0x4ebd4f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x58(%rsp)
movl %eax, 0x54(%rsp)
movl 0x54(%rsp), %eax
movl %eax, 0x1c(%rsp)
movl $0x2, %ecx
cmpl %ecx, %eax
jne 0x4ebd2a
movq 0x58(%rsp), %rdi
callq 0x11b0a0
movq %rax, 0x40(%rsp)
movq 0x40(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x70(%rsp)
callq 0x11b560
jmp 0x4ebe21
movl 0x1c(%rsp), %eax
movl $0x1, %ecx
cmpl %ecx, %eax
jne 0x4ebe2c
movq 0x58(%rsp), %rdi
callq 0x11b0a0
movq %rax, 0x48(%rsp)
callq 0x11b560
movq 0x28(%rsp), %rax
movq 0x40(%rax), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
jmp 0x4ebca4
jmp 0x4ebe15
jmp 0x4ebd6a
movq 0x28(%rsp), %rdi
addq $0x30, %rdi
callq 0x4e4d70
testb $0x1, %al
jne 0x4ebd81
jmp 0x4ebe13
movq 0x28(%rsp), %rax
movq 0x50(%rax), %rdi
movq (%rdi), %rax
movq 0x18(%rax), %rax
callq *%rax
movsd %xmm0, 0x10(%rsp)
jmp 0x4ebd9b
movsd 0x10(%rsp), %xmm0
movsd %xmm0, 0x60(%rsp)
jmp 0x4ebe0e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x58(%rsp)
movl %eax, 0x54(%rsp)
movl 0x54(%rsp), %eax
movl %eax, 0xc(%rsp)
movl $0x2, %ecx
cmpl %ecx, %eax
jne 0x4ebded
movq 0x58(%rsp), %rdi
callq 0x11b0a0
movq %rax, 0x30(%rsp)
movq 0x30(%rsp), %rax
movsd (%rax), %xmm0
movsd %xmm0, 0x70(%rsp)
callq 0x11b560
jmp 0x4ebe21
movl 0xc(%rsp), %eax
movl $0x1, %ecx
cmpl %ecx, %eax
jne 0x4ebe2c
movq 0x58(%rsp), %rdi
callq 0x11b0a0
movq %rax, 0x38(%rsp)
callq 0x11b560
jmp 0x4ebd6a
jmp 0x4ebe15
movsd 0x60(%rsp), %xmm0
movsd %xmm0, 0x70(%rsp)
movsd 0x70(%rsp), %xmm0
addq $0x78, %rsp
retq
movq 0x58(%rsp), %rdi
callq 0x11b4e0
nopw %cs:(%rax,%rax)