// File: GouMinghao[P]graspnms/grasp_nms.cpp
// Function: _Pyx_CLineForTraceback(_ts*, int)
static int __Pyx_CLineForTraceback(CYTHON_NCP_UNUSED PyThreadState *tstate, int c_line) {
    PyObject *use_cline;
    PyObject *ptype, *pvalue, *ptraceback;
#if CYTHON_COMPILING_IN_CPYTHON
    PyObject **cython_runtime_dict;
#endif
    if (unlikely(!__pyx_cython_runtime)) {
        return c_line;
    }
    __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
#if CYTHON_COMPILING_IN_CPYTHON
    cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime);
    if (likely(cython_runtime_dict)) {
        __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
            use_cline, *cython_runtime_dict,
            __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback))
    } else
#endif
    {
      PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback);
      if (use_cline_obj) {
        use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True;
        Py_DECREF(use_cline_obj);
      } else {
        PyErr_Clear();
        use_cline = NULL;
      }
    }
    if (!use_cline) {
        c_line = 0;
        PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False);
    }
    else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) {
        c_line = 0;
    }
    __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
    return c_line;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movl %esi, -0x14(%rbp)
cmpq $0x0, 0xe0d1(%rip)      # 0x23b88
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x15ac6
jmp 0x15ad1
movl -0x14(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x15c43
movq -0x10(%rbp), %rdi
leaq -0x28(%rbp), %rsi
leaq -0x30(%rbp), %rdx
leaq -0x38(%rbp), %rcx
callq 0x130c0
movq 0xe09b(%rip), %rdi      # 0x23b88
callq 0xb340
movq %rax, -0x40(%rbp)
cmpq $0x0, -0x40(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x15b08
jmp 0x15b71
movq -0x40(%rbp), %rax
movq (%rax), %rax
movq 0x18(%rax), %rax
cmpq 0xe33e(%rip), %rax      # 0x23e58
sete %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x15b27
jmp 0x15b34
movq 0xe332(%rip), %rax      # 0x23e60
movq %rax, -0x20(%rbp)
jmp 0x15b6f
movq -0x40(%rbp), %rax
movq (%rax), %rdi
movq 0xe116(%rip), %rsi      # 0x23c58
movq 0xe10f(%rip), %rax      # 0x23c58
movq 0x18(%rax), %rdx
callq 0xb470
movq %rax, 0xe307(%rip)      # 0x23e60
movq %rax, -0x20(%rbp)
movq -0x40(%rbp), %rax
movq (%rax), %rax
movq 0x18(%rax), %rax
movq %rax, 0xe2e9(%rip)      # 0x23e58
jmp 0x15bcd
movq 0xe010(%rip), %rdi      # 0x23b88
movq 0xe0d9(%rip), %rsi      # 0x23c58
callq 0xf2b0
movq %rax, -0x48(%rbp)
cmpq $0x0, -0x48(%rbp)
je 0x15bbe
movq -0x48(%rbp), %rdi
callq 0xb4a0
movl %eax, %edx
movq 0xd367(%rip), %rax      # 0x22f08
movq 0xd408(%rip), %rcx      # 0x22fb0
cmpl $0x0, %edx
cmovneq %rcx, %rax
movq %rax, -0x20(%rbp)
movq -0x48(%rbp), %rdi
callq 0xdce0
jmp 0x15bcb
callq 0xb3a0
movq $0x0, -0x20(%rbp)
jmp 0x15bcd
cmpq $0x0, -0x20(%rbp)
jne 0x15bf7
movl $0x0, -0x14(%rbp)
movq 0xdfa6(%rip), %rdi      # 0x23b88
movq 0xe06f(%rip), %rsi      # 0x23c58
movq 0xd3c0(%rip), %rdx      # 0x22fb0
callq 0xb1e0
jmp 0x15c28
movq 0xd3b2(%rip), %rax      # 0x22fb0
cmpq %rax, -0x20(%rbp)
je 0x15c1f
movq 0xd2fd(%rip), %rax      # 0x22f08
cmpq %rax, -0x20(%rbp)
je 0x15c26
movq -0x20(%rbp), %rdi
callq 0xb4a0
cmpl $0x0, %eax
je 0x15c26
movl $0x0, -0x14(%rbp)
jmp 0x15c28
movq -0x10(%rbp), %rdi
movq -0x28(%rbp), %rsi
movq -0x30(%rbp), %rdx
movq -0x38(%rbp), %rcx
callq 0x13160
movl -0x14(%rbp), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nopl (%rax)