// File: Mulan-Szechuan-Sauce[P]javelin/src/node.cpp
// Function: NOpType_str[abi:cxx11](NOpType)
string NOpType_str(NOpType t) {
  switch (t) {
  case N_LT:  return "<";
  case N_GT:  return ">";
  case N_EQ:  return "==";
  case N_NEQ: return "!=";
  case N_GTE: return ">=";
  case N_LTE: return "<=";
  case N_NOT: return "!";
  case N_AND: return "&&";
  case N_OR:  return "||";
  case N_ADD: return "+";
  case N_SUB: return "-";
  case N_MUL: return "*";
  case N_DIV: return "/";
  case N_SL: return "<<";
  case N_SR: return ">>";
  case N_BA: return "&";
  case N_BO: return "|";
  case N_BN: return "~";
  case N_BX: return "^";
  default:    return "<type string undeclared>";
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xf0, %rsp
movq %rdi, -0x48(%rbp)
movq %rdi, %rax
movq %rax, -0x40(%rbp)
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl -0xc(%rbp), %eax
movq %rax, -0x38(%rbp)
subq $0x12, %rax
ja 0x138c5
movq -0x38(%rbp), %rax
leaq 0x396b(%rip), %rcx      # 0x16c54
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq -0xd(%rbp), %rdi
movq %rdi, -0x50(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x50(%rbp), %rdx
leaq 0x3b2b(%rip), %rsi      # 0x16e39
callq 0x52f0
jmp 0x13315
leaq -0xd(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0xd(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x1d(%rbp), %rdi
movq %rdi, -0x58(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x58(%rbp), %rdx
leaq 0x3ae3(%rip), %rsi      # 0x16e3c
callq 0x52f0
jmp 0x13360
leaq -0x1d(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x1d(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x1e(%rbp), %rdi
movq %rdi, -0x60(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x60(%rbp), %rdx
leaq 0x3a78(%rip), %rsi      # 0x16e1c
callq 0x52f0
jmp 0x133ab
leaq -0x1e(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x1e(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x1f(%rbp), %rdi
movq %rdi, -0x68(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x68(%rbp), %rdx
leaq 0x3a30(%rip), %rsi      # 0x16e1f
callq 0x52f0
jmp 0x133f6
leaq -0x1f(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x1f(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x20(%rbp), %rdi
movq %rdi, -0x70(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x70(%rbp), %rdx
leaq 0x39e8(%rip), %rsi      # 0x16e22
callq 0x52f0
jmp 0x13441
leaq -0x20(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x20(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x21(%rbp), %rdi
movq %rdi, -0x78(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x78(%rbp), %rdx
leaq 0x39a0(%rip), %rsi      # 0x16e25
callq 0x52f0
jmp 0x1348c
leaq -0x21(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x21(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x22(%rbp), %rdi
movq %rdi, -0x80(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x80(%rbp), %rdx
leaq 0x3958(%rip), %rsi      # 0x16e28
callq 0x52f0
jmp 0x134d7
leaq -0x22(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x22(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x23(%rbp), %rdi
movq %rdi, -0x88(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x88(%rbp), %rdx
leaq 0x3909(%rip), %rsi      # 0x16e2a
callq 0x52f0
jmp 0x13528
leaq -0x23(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x23(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x24(%rbp), %rdi
movq %rdi, -0x90(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x90(%rbp), %rdx
leaq 0x38bb(%rip), %rsi      # 0x16e2d
callq 0x52f0
jmp 0x13579
leaq -0x24(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x24(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x25(%rbp), %rdi
movq %rdi, -0x98(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0x98(%rbp), %rdx
leaq 0x386d(%rip), %rsi      # 0x16e30
callq 0x52f0
jmp 0x135ca
leaq -0x25(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x25(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x26(%rbp), %rdi
movq %rdi, -0xa0(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xa0(%rbp), %rdx
leaq 0x381e(%rip), %rsi      # 0x16e32
callq 0x52f0
jmp 0x1361b
leaq -0x26(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x26(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x27(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xa8(%rbp), %rdx
leaq 0x37cf(%rip), %rsi      # 0x16e34
callq 0x52f0
jmp 0x1366c
leaq -0x27(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x27(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x28(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xb0(%rbp), %rdx
leaq 0x3780(%rip), %rsi      # 0x16e36
callq 0x52f0
jmp 0x136bd
leaq -0x28(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x29(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xb8(%rbp), %rdx
leaq 0x3731(%rip), %rsi      # 0x16e38
callq 0x52f0
jmp 0x1370e
leaq -0x29(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x29(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x2a(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xc0(%rbp), %rdx
leaq 0x36e3(%rip), %rsi      # 0x16e3b
callq 0x52f0
jmp 0x1375f
leaq -0x2a(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2a(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x2b(%rbp), %rdi
movq %rdi, -0xc8(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xc8(%rbp), %rdx
leaq 0x3682(%rip), %rsi      # 0x16e2b
callq 0x52f0
jmp 0x137b0
leaq -0x2b(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2b(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x2c(%rbp), %rdi
movq %rdi, -0xd0(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xd0(%rbp), %rdx
leaq 0x3634(%rip), %rsi      # 0x16e2e
callq 0x52f0
jmp 0x13801
leaq -0x2c(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2c(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x2d(%rbp), %rdi
movq %rdi, -0xd8(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xd8(%rbp), %rdx
leaq 0x35f3(%rip), %rsi      # 0x16e3e
callq 0x52f0
jmp 0x13852
leaq -0x2d(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2d(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x2e(%rbp), %rdi
movq %rdi, -0xe0(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xe0(%rbp), %rdx
leaq 0x35a4(%rip), %rsi      # 0x16e40
callq 0x52f0
jmp 0x138a3
leaq -0x2e(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2e(%rbp), %rdi
callq 0x5260
jmp 0x1391d
leaq -0x2f(%rbp), %rdi
movq %rdi, -0xe8(%rbp)
callq 0x5410
movq -0x48(%rbp), %rdi
movq -0xe8(%rbp), %rdx
leaq 0x355b(%rip), %rsi      # 0x16e42
callq 0x52f0
jmp 0x138ee
leaq -0x2f(%rbp), %rdi
callq 0x5260
jmp 0x13910
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2f(%rbp), %rdi
callq 0x5260
jmp 0x1391d
movq -0x40(%rbp), %rax
addq $0xf0, %rsp
popq %rbp
retq
movq -0x18(%rbp), %rdi
callq 0x5400
nopw %cs:(%rax,%rax)