// File: acliusBackHome[P]kamaya/dist/ParseExpression.cpp
// Function: ParseExpression::get_expr_type_name[abi:cxx11](ExpressionType)
string ParseExpression::get_expr_type_name(ExpressionType type) {
    switch (type) {
        case E_UNDEFINED:
            break;
        case E_POS:
        case E_ADD:
            return "+";
        case E_NEG:
        case E_SUB:
            return "-";
        case E_MUL:
            return "*";
        case E_DIV:
            return "/";
        case E_POW:
            return "^";
        case E_LOGIC_OR:
            return "||";
        case E_LOGIC_AND:
            return "&&";
        case E_G:
            return ">";
        case E_GE:
            return ">=";
        case E_EQUAL:
            return "==";
        case E_NE:
            return "!=";
        case E_L:
            return "<";
        case E_LE:
            return "<=";
        case E_VAR:
            return "variable";
        case E_CONST:
            return "const";
        case E_MOD:
            return "%";
        case E_ASSIGN:
            return "=";
        case E_GET_ITEM:
            return "[]";
        case E_NOT:
            return "!";
        case E_ADR:
            return "&";
        case E_PTR:
            return "*";
        case E_BIT_NOT:
            return "~";
        case E_FUN:
            return "function";
    }
    return "undefined";
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x110, %rsp            # imm = 0x110
movq %rdi, -0x50(%rbp)
movq %rdi, %rax
movq %rax, -0x48(%rbp)
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl -0xc(%rbp), %eax
movq %rax, -0x40(%rbp)
subq $0x19, %rax
ja 0x61724
movq -0x40(%rbp), %rax
leaq 0x2f047(%rip), %rcx     # 0x90040
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
jmp 0x61724
leaq -0xd(%rbp), %rdi
movq %rdi, -0x58(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x58(%rbp), %rdx
leaq 0x2ce5e(%rip), %rsi     # 0x8de81
callq 0x4450
jmp 0x6102a
leaq -0xd(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0xd(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x1d(%rbp), %rdi
movq %rdi, -0x60(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x60(%rbp), %rdx
leaq 0x2f1ea(%rip), %rsi     # 0x90258
callq 0x4450
jmp 0x61075
leaq -0x1d(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x1d(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x1e(%rbp), %rdi
movq %rdi, -0x68(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x68(%rbp), %rdx
leaq 0x2e2b5(%rip), %rsi     # 0x8f36e
callq 0x4450
jmp 0x610c0
leaq -0x1e(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x1e(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x1f(%rbp), %rdi
movq %rdi, -0x70(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x70(%rbp), %rdx
leaq 0x2e26c(%rip), %rsi     # 0x8f370
callq 0x4450
jmp 0x6110b
leaq -0x1f(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x1f(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x20(%rbp), %rdi
movq %rdi, -0x78(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x78(%rbp), %rdx
leaq 0x2c624(%rip), %rsi     # 0x8d773
callq 0x4450
jmp 0x61156
leaq -0x20(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x20(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x21(%rbp), %rdi
movq %rdi, -0x80(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x80(%rbp), %rdx
leaq 0x2e1f0(%rip), %rsi     # 0x8f38a
callq 0x4450
jmp 0x611a1
leaq -0x21(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x21(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x22(%rbp), %rdi
movq %rdi, -0x88(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x88(%rbp), %rdx
leaq 0x2e19c(%rip), %rsi     # 0x8f387
callq 0x4450
jmp 0x611f2
leaq -0x22(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x22(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x23(%rbp), %rdi
movq %rdi, -0x90(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x90(%rbp), %rdx
leaq 0x2bd38(%rip), %rsi     # 0x8cf74
callq 0x4450
jmp 0x61243
leaq -0x23(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x23(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x24(%rbp), %rdi
movq %rdi, -0x98(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x98(%rbp), %rdx
leaq 0x2bd95(%rip), %rsi     # 0x8d022
callq 0x4450
jmp 0x61294
leaq -0x24(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x24(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x25(%rbp), %rdi
movq %rdi, -0xa0(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xa0(%rbp), %rdx
leaq 0x2bd48(%rip), %rsi     # 0x8d026
callq 0x4450
jmp 0x612e5
leaq -0x25(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x25(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x26(%rbp), %rdi
movq %rdi, -0xa8(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xa8(%rbp), %rdx
leaq 0x2bcfb(%rip), %rsi     # 0x8d02a
callq 0x4450
jmp 0x61336
leaq -0x26(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x26(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x27(%rbp), %rdi
movq %rdi, -0xb0(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xb0(%rbp), %rdx
leaq 0x2bc98(%rip), %rsi     # 0x8d018
callq 0x4450
jmp 0x61387
leaq -0x27(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x27(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x28(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xb8(%rbp), %rdx
leaq 0x2bc4a(%rip), %rsi     # 0x8d01b
callq 0x4450
jmp 0x613d8
leaq -0x28(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x29(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xc0(%rbp), %rdx
leaq 0x2e4bb(%rip), %rsi     # 0x8f8dd
callq 0x4450
jmp 0x61429
leaq -0x29(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x29(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x2a(%rbp), %rdi
movq %rdi, -0xc8(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xc8(%rbp), %rdx
leaq 0x2bf75(%rip), %rsi     # 0x8d3e8
callq 0x4450
jmp 0x6147a
leaq -0x2a(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2a(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x2b(%rbp), %rdi
movq %rdi, -0xd0(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xd0(%rbp), %rdx
leaq 0x2deae(%rip), %rsi     # 0x8f372
callq 0x4450
jmp 0x614cb
leaq -0x2b(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2b(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x2c(%rbp), %rdi
movq %rdi, -0xd8(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xd8(%rbp), %rdx
leaq 0x2c1ee(%rip), %rsi     # 0x8d703
callq 0x4450
jmp 0x6151c
leaq -0x2c(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2c(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x2d(%rbp), %rdi
movq %rdi, -0xe0(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xe0(%rbp), %rdx
leaq 0x2c015(%rip), %rsi     # 0x8d57b
callq 0x4450
jmp 0x6156d
leaq -0x2d(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2d(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x2e(%rbp), %rdi
movq %rdi, -0xe8(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xe8(%rbp), %rdx
leaq 0x2ddd6(%rip), %rsi     # 0x8f38d
callq 0x4450
jmp 0x615be
leaq -0x2e(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2e(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x2f(%rbp), %rdi
movq %rdi, -0xf0(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xf0(%rbp), %rdx
leaq 0x2dd80(%rip), %rsi     # 0x8f388
callq 0x4450
jmp 0x6160f
leaq -0x2f(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x2f(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x30(%rbp), %rdi
movq %rdi, -0xf8(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0xf8(%rbp), %rdx
leaq 0x2dd15(%rip), %rsi     # 0x8f36e
callq 0x4450
jmp 0x61660
leaq -0x30(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x31(%rbp), %rdi
movq %rdi, -0x100(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x100(%rbp), %rdx
leaq 0x2ec34(%rip), %rsi     # 0x902de
callq 0x4450
jmp 0x616b1
leaq -0x31(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x31(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x32(%rbp), %rdi
movq %rdi, -0x108(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x108(%rbp), %rdx
leaq 0x2b7c0(%rip), %rsi     # 0x8cebb
callq 0x4450
jmp 0x61702
leaq -0x32(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x32(%rbp), %rdi
callq 0x4380
jmp 0x6177c
leaq -0x33(%rbp), %rdi
movq %rdi, -0x110(%rbp)
callq 0x45f0
movq -0x50(%rbp), %rdi
movq -0x110(%rbp), %rdx
leaq 0x2eb9a(%rip), %rsi     # 0x902e0
callq 0x4450
jmp 0x6174d
leaq -0x33(%rbp), %rdi
callq 0x4380
jmp 0x6176f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
leaq -0x33(%rbp), %rdi
callq 0x4380
jmp 0x6177c
movq -0x48(%rbp), %rax
addq $0x110, %rsp            # imm = 0x110
popq %rbp
retq
movq -0x18(%rbp), %rdi
callq 0x45e0
nopw %cs:(%rax,%rax)