// File: /workspace/github_cpp_makefile_star2_O2/ArashPartow[P]exprtk/./exprtk.hpp
// Function: exprtk::lexer::token_scanner::process(exprtk::lexer::generator&)
inline std::size_t process(generator& g) exprtk_override
         {
            if (g.token_list_.size() >= stride_)
            {
               for (std::size_t i = 0; i < (g.token_list_.size() - stride_ + 1); ++i)
               {
                  token t;

                  switch (stride_)
                  {
                     case 1 :
                              {
                                 const token& t0 = g.token_list_[i];

                                 if (!operator()(t0))
                                 {
                                    return 0;
                                 }
                              }
                              break;

                     case 2 :
                              {
                                 const token& t0 = g.token_list_[i    ];
                                 const token& t1 = g.token_list_[i + 1];

                                 if (!operator()(t0, t1))
                                 {
                                    return 0;
                                 }
                              }
                              break;

                     case 3 :
                              {
                                 const token& t0 = g.token_list_[i    ];
                                 const token& t1 = g.token_list_[i + 1];
                                 const token& t2 = g.token_list_[i + 2];

                                 if (!operator()(t0, t1, t2))
                                 {
                                    return 0;
                                 }
                              }
                              break;

                     case 4 :
                              {
                                 const token& t0 = g.token_list_[i    ];
                                 const token& t1 = g.token_list_[i + 1];
                                 const token& t2 = g.token_list_[i + 2];
                                 const token& t3 = g.token_list_[i + 3];

                                 if (!operator()(t0, t1, t2, t3))
                                 {
                                    return 0;
                                 }
                              }
                              break;
                  }
               }
            }

            return 0;
         }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rsi, %r14
movq %rdi, %r15
movq (%rsi), %rsi
movq 0x8(%r14), %rcx
movq %rcx, %rax
subq %rsi, %rax
pushq $0x30
popq %r13
cqto
idivq %r13
movq 0x8(%rdi), %rdi
cmpq %rdi, %rax
jb 0x1a0245
movl $0x90, %ebp
xorl %ebx, %ebx
leaq 0x12e247(%rip), %r12    # 0x2ce3a0
subq %rsi, %rcx
movq %rcx, %rax
cqto
idivq %r13
subq %rdi, %rax
incq %rax
cmpq %rax, %rbx
jae 0x1a0245
leaq 0x8(%rsp), %rdi
callq 0x19e4ae
movq 0x8(%r15), %rax
decq %rax
cmpq $0x3, %rax
ja 0x1a021a
movslq (%r12,%rax,4), %rax
addq %r12, %rax
jmpq *%rax
movq (%r14), %rax
leaq (%rax,%rbp), %rsi
addq $-0x90, %rsi
movq (%r15), %rax
movq %r15, %rdi
callq *0x30(%rax)
jmp 0x1a0216
movq (%r14), %rax
leaq (%rax,%rbp), %rsi
addq $-0x90, %rsi
leaq -0x60(%rax,%rbp), %rdx
leaq -0x30(%rax,%rbp), %rcx
movq (%r15), %rax
movq %r15, %rdi
callq *0x40(%rax)
jmp 0x1a0216
movq (%r14), %rax
leaq (%rax,%rbp), %r8
leaq (%rax,%rbp), %rsi
addq $-0x90, %rsi
leaq -0x60(%rax,%rbp), %rdx
leaq -0x30(%rax,%rbp), %rcx
movq (%r15), %rax
movq %r15, %rdi
callq *0x48(%rax)
jmp 0x1a0216
movq (%r14), %rax
leaq (%rax,%rbp), %rsi
addq $-0x90, %rsi
leaq -0x60(%rax,%rbp), %rdx
movq (%r15), %rax
movq %r15, %rdi
callq *0x38(%rax)
testb %al, %al
je 0x1a023b
leaq 0x10(%rsp), %rdi
callq 0x118648
incq %rbx
movq (%r14), %rsi
movq 0x8(%r14), %rcx
movq 0x8(%r15), %rdi
addq $0x30, %rbp
jmp 0x1a0159
leaq 0x10(%rsp), %rdi
callq 0x118648
xorl %eax, %eax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x1a025c
jmp 0x1a025c
jmp 0x1a025c
movq %rax, %r14
leaq 0x10(%rsp), %rdi
callq 0x118648
movq %r14, %rdi
callq 0x118360
nop