// File: /workspace/github_cpp_makefile_star2_O2/AshOlogn[P]ash-language-interpreter/src/bitlogicaleval.cpp
// Function: evaluateBitLogicalExpression(BitLogicalOperatorNode*)
ParseData evaluateBitLogicalExpression(BitLogicalOperatorNode* node) {

  ParseData left = node->leftArg->evaluate();
  ParseData right = node->rightArg->evaluate();
  
  switch(node->operation) {
    
    case BIT_AND_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_AND_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_AND_OP); 
          }
        }
      }
    }
    
    case BIT_XOR_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_XOR_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_XOR_OP); 
          }
        }
      }
    }
    
    case BIT_OR_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_OR_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_OR_OP); 
          }
        }
      }
    }

		case BIT_LEFT_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_LEFT_OP); 
          }
        }
      }
    }

		case BIT_RIGHT_OP: {

      switch(left.type) {

        case CHAR_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((unsigned char) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((unsigned char) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((unsigned char) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((unsigned char) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((unsigned char) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP);  
          }
        }    

        case INT32_T: {
          
          switch(right.type) {
            case CHAR_T: return bitHelper((int32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((int32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((int32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((int32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((int32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP);                
          }
        }

        case INT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((int64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((int64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((int64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((int64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((int64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
          }    
        }

        case UINT32_T: {

          switch(right.type) {            
            case CHAR_T: return bitHelper((uint32_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((uint32_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((uint32_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((uint32_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((uint32_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP);   
          }
        }

        case UINT64_T: {

          switch(right.type) {
            case CHAR_T: return bitHelper((uint64_t) left.value.integer, (unsigned char) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT32_T: return bitHelper((uint64_t) left.value.integer, (int32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case INT64_T: return bitHelper((uint64_t) left.value.integer, (int64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT32_T: return bitHelper((uint64_t) left.value.integer, (uint32_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
            case UINT64_T: return bitHelper((uint64_t) left.value.integer, (uint64_t) right.value.integer, node->evalType, BIT_RIGHT_OP); 
          }
        }
      }
    }
    
    case AND_OP: return logicHelper((bool) left.value.integer, (bool) right.value.integer, AND_OP); 
    case XOR_OP: return logicHelper((bool) left.value.integer, (bool) right.value.integer, XOR_OP); 
    case OR_OP: return logicHelper((bool) left.value.integer, (bool) right.value.integer, OR_OP); 
  }

  ParseData dummy;
  return dummy;

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %r14
movq 0x20(%rdi), %rdi
movq (%rdi), %rax
callq *(%rax)
movl %eax, %r15d
movq %rdx, %rbx
movq 0x28(%r14), %rdi
movq (%rdi), %rax
callq *(%rax)
movl %eax, %esi
movl 0x18(%r14), %edi
addl $-0x11, %edi
cmpl $0xd, %edi
ja 0x10032
leaq 0xf9b5(%rip), %rax      # 0x1efa4
movslq (%rax,%rdi,4), %rdi
addq %rax, %rdi
jmpq *%rdi
addl $-0x2, %r15d
cmpl $0x6, %r15d
ja 0xfaaa
leaq 0xfa77(%rip), %rax      # 0x1f084
movslq (%rax,%r15,4), %rcx
addq %rax, %rcx
jmpq *%rcx
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xfacb(%rip), %rax      # 0x1f0f4
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xf769
addl $-0x2, %r15d
cmpl $0x6, %r15d
ja 0xfaaa
leaq 0xfada(%rip), %rax      # 0x1f12c
movslq (%rax,%r15,4), %rcx
addq %rax, %rcx
jmpq *%rcx
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xfb2e(%rip), %rax      # 0x1f19c
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xf769
testq %rbx, %rbx
setne %al
testq %rdx, %rdx
setne %cl
xorb %al, %cl
jmp 0xfab8
xorl %ecx, %ecx
orq %rbx, %rdx
setne %cl
jmp 0xfabb
addl $-0x2, %r15d
cmpl $0x6, %r15d
ja 0xfaaa
leaq 0xf925(%rip), %rax      # 0x1efdc
movslq (%rax,%r15,4), %rcx
addq %rax, %rcx
jmpq *%rcx
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf979(%rip), %rax      # 0x1f04c
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xf769
addl $-0x2, %r15d
cmpl $0x6, %r15d
ja 0xfaaa
leaq 0xfb80(%rip), %rax      # 0x1f27c
movslq (%rax,%r15,4), %rcx
addq %rax, %rcx
jmpq *%rcx
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xfbd4(%rip), %rax      # 0x1f2ec
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xf769
addl $-0x2, %r15d
cmpl $0x6, %r15d
ja 0xfaaa
leaq 0xfa96(%rip), %rax      # 0x1f1d4
movslq (%rax,%r15,4), %rcx
addq %rax, %rcx
jmpq *%rcx
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xfaea(%rip), %rax      # 0x1f244
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movl %ebx, %edi
movl %edx, %esi
movl %eax, %edx
callq 0x106ce
jmp 0x1002f
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf9d7(%rip), %rax      # 0x1f164
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xf8aa
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf908(%rip), %rax      # 0x1f0bc
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xf8aa
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf9a5(%rip), %rax      # 0x1f180
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xf9a0
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf812(%rip), %rax      # 0x1f014
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xf8aa
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf8af(%rip), %rax      # 0x1f0d8
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xf9a0
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xfa64(%rip), %rax      # 0x1f2b4
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xf8aa
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf8d4(%rip), %rax      # 0x1f148
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfa68
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf971(%rip), %rax      # 0x1f20c
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movl %ebx, %edi
movl %edx, %esi
movl %eax, %edx
callq 0x1122b
jmp 0x1002f
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf8ea(%rip), %rax      # 0x1f1b8
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x1b
jmp 0xfa9b
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf7a8(%rip), %rax      # 0x1f0a0
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfa68
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf7f1(%rip), %rax      # 0x1f110
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x11
jmp 0xfa9b
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf6e7(%rip), %rax      # 0x1f030
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xf9a0
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf963(%rip), %rax      # 0x1f2d0
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xf9a0
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf897(%rip), %rax      # 0x1f228
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movl %edx, %esi
movl %eax, %edx
callq 0x10c58
jmp 0x1002f
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf633(%rip), %rax      # 0x1eff8
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfa68
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf67c(%rip), %rax      # 0x1f068
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x12
jmp 0xfa9b
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf882(%rip), %rax      # 0x1f298
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfa68
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf8d2(%rip), %rax      # 0x1f308
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x19
jmp 0xfa9b
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf797(%rip), %rax      # 0x1f1f0
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movl %edx, %esi
movl %eax, %edx
callq 0x117aa
jmp 0x1002f
addl $-0x2, %esi
cmpl $0x6, %esi
ja 0xfaaa
leaq 0xf7d7(%rip), %rax      # 0x1f260
movslq (%rax,%rsi,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x1a
popq %rcx
movl %edx, %esi
movl %eax, %edx
callq 0x1011f
jmp 0x1002f
testq %rbx, %rbx
setne %al
testq %rdx, %rdx
setne %cl
andb %al, %cl
movzbl %cl, %ecx
pushq $0x9
popq %rax
jmp 0x10032
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfb41
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfb41
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfc10
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfc4b
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfc63
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfc10
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfb41
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfc4b
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfc63
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfb41
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfd45
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfd68
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movl %ebx, %edi
movl %edx, %esi
movl %eax, %edx
callq 0x11444
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x1b
jmp 0xfdb2
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x1b
jmp 0xfdca
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfe06
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfd45
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfd68
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfe1e
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x11
jmp 0xfdb2
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x11
jmp 0xfdca
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfc10
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfe06
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfc4b
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfc63
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfc10
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfe1e
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfed2
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfc4b
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfc63
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movl %ebx, %edi
movl %edx, %esi
movl %eax, %edx
callq 0x108eb
jmp 0x1002f
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xfef5
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xff19
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x1b
jmp 0xff35
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movl %ebx, %edi
movq %rdx, %rsi
movl %eax, %edx
callq 0x1132e
jmp 0x1002f
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movl %edx, %esi
movl %eax, %edx
callq 0x10ebf
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x1b
jmp 0xff4d
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x1b
jmp 0xff66
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfed2
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfd45
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfd68
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xfef5
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xff19
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x11
jmp 0xff35
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x12
jmp 0xfdb2
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x12
jmp 0xfdca
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfd45
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfd68
movl 0x10(%r14), %eax
pushq $0x1b
jmp 0xffc9
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x11
jmp 0xff4d
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x11
jmp 0xff66
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfe06
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x19
jmp 0xfdb2
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movl %ebx, %edi
movq %rdx, %rsi
movl %eax, %edx
callq 0x11547
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x19
jmp 0xfdca
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movl %edx, %esi
movl %eax, %edx
callq 0x11a11
jmp 0x1002f
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfe1e
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x1b
jmp 0xfff3
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x1b
jmp 0x10009
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfe06
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x1a
popq %rcx
movl %ebx, %edi
movl %eax, %edx
callq 0x1111a
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x1a
popq %rcx
movl %edx, %esi
movl %eax, %edx
callq 0x1036e
jmp 0x1002f
movl 0x10(%r14), %eax
movl $0xff, %esi
andl %esi, %ebx
andl %edx, %esi
pushq $0x1b
jmp 0x10025
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfe1e
movl 0x10(%r14), %eax
pushq $0x11
jmp 0xffc9
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movl %ebx, %edi
movq %rdx, %rsi
movl %eax, %edx
callq 0x107ce
jmp 0x1002f
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movq %rdx, %rsi
movl %eax, %edx
callq 0x10d8f
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x11
jmp 0xfff3
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x11
jmp 0x10009
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfed2
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xfef5
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xff19
movl 0x10(%r14), %eax
movl $0xff, %esi
andl %esi, %ebx
andl %edx, %esi
pushq $0x11
jmp 0x10025
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x12
jmp 0xff35
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfed2
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x12
jmp 0xff4d
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x12
jmp 0xff66
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xfef5
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xff19
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x19
jmp 0xff35
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movl %ebx, %edi
movq %rdx, %rsi
movl %eax, %edx
callq 0x109ee
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x19
jmp 0xff4d
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movq %rdx, %rsi
movl %eax, %edx
callq 0x10fea
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x19
jmp 0xff66
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movq %rdx, %rsi
movl %eax, %edx
callq 0x118e1
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x1a
popq %rcx
movl %ebx, %edi
movl %eax, %edx
callq 0x105bd
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movl %eax, %edx
callq 0x10b0b
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x1a
popq %rcx
movq %rdx, %rsi
movl %eax, %edx
callq 0x10237
jmp 0x1002f
movl 0x10(%r14), %eax
pushq $0x12
jmp 0xffc9
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x12
jmp 0xfff3
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x12
jmp 0x10009
movl 0x10(%r14), %eax
pushq $0x19
jmp 0xffc9
movl 0x10(%r14), %eax
movl $0xff, %esi
andl %esi, %ebx
andl %edx, %esi
pushq $0x12
jmp 0x10025
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x19
jmp 0xfff3
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x19
jmp 0x10009
movl 0x10(%r14), %eax
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movq %rdx, %rsi
movl %eax, %edx
callq 0x11b3c
jmp 0x1002f
movl 0x10(%r14), %eax
movl $0xff, %esi
andl %esi, %ebx
andl %edx, %esi
pushq $0x19
jmp 0x10025
movl 0x10(%r14), %eax
movzbl %dl, %esi
pushq $0x1a
popq %rcx
movq %rbx, %rdi
movl %eax, %edx
callq 0x1165d
jmp 0x1002f
movl 0x10(%r14), %eax
movzbl %bl, %edi
pushq $0x1a
popq %rcx
movq %rdx, %rsi
movl %eax, %edx
callq 0x10486
jmp 0x1002f
movl 0x10(%r14), %eax
movl $0xff, %esi
andl %esi, %ebx
andl %edx, %esi
pushq $0x1a
popq %rcx
movl %ebx, %edi
movl %eax, %edx
callq 0x10040
movq %rdx, %rcx
movq %rcx, %rdx
addq $0x8, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq