// File: ehw-fit[P]py-paretoarchive/src/paretoarchive/core.cpp
// Function: _pyx_pw_13paretoarchive_4core_17PyBspTreeArchive1_17points(_object*, _object*, _object*)
static PyObject *__pyx_pw_13paretoarchive_4core_17PyBspTreeArchive1_17points(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  bool __pyx_v_returnIds;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("points (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_returnIds,0};
    PyObject* values[1] = {0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_returnIds);
          if (value) { values[0] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "points") < 0)) __PYX_ERR(0, 93, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    if (values[0]) {
      __pyx_v_returnIds = __Pyx_PyObject_IsTrue(values[0]); if (unlikely((__pyx_v_returnIds == ((bool)-1)) && PyErr_Occurred())) __PYX_ERR(0, 93, __pyx_L3_error)
    } else {
      __pyx_v_returnIds = ((bool)0);
    }
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("points", 0, 0, 1, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 93, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("paretoarchive.core.PyBspTreeArchive1.points", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_13paretoarchive_4core_17PyBspTreeArchive1_16points(((struct __pyx_obj_13paretoarchive_4core_PyBspTreeArchive1 *)__pyx_v_self), __pyx_v_returnIds);

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x90, %rsp
movq %fs:0x28, %rax
movq %rax, -0x8(%rbp)
movq %rdi, -0x20(%rbp)
movq %rsi, -0x28(%rbp)
movq %rdx, -0x30(%rbp)
movl $0x0, -0x38(%rbp)
movq $0x0, -0x40(%rbp)
movl $0x0, -0x44(%rbp)
movq $0x0, -0x50(%rbp)
leaq -0x10(%rbp), %rdi
xorl %esi, %esi
movl $0x8, %edx
callq 0x29250
cmpq $0x0, -0x30(%rbp)
setne %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x2e817
jmp 0x2e915
movq -0x28(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rax
movq %rax, -0x70(%rbp)
testq %rax, %rax
je 0x2e84a
jmp 0x2e832
movq -0x70(%rbp), %rax
subq $0x1, %rax
jne 0x2e84c
jmp 0x2e83e
movq -0x28(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x10(%rbp)
jmp 0x2e851
jmp 0x2e9b2
movq -0x30(%rbp), %rdi
callq 0x29650
movq %rax, -0x58(%rbp)
movq -0x60(%rbp), %rax
testq %rax, %rax
jne 0x2e8ae
jmp 0x2e869
cmpq $0x0, -0x58(%rbp)
jle 0x2e8ac
movq -0x30(%rbp), %rdi
movq 0x7de7d(%rip), %rsi     # 0xac6f8
movq 0x7de76(%rip), %rax     # 0xac6f8
movq 0x18(%rax), %rdx
callq 0x29490
movq %rax, -0x68(%rbp)
cmpq $0x0, -0x68(%rbp)
je 0x2e8aa
movq -0x68(%rbp), %rax
movq %rax, -0x10(%rbp)
movq -0x58(%rbp), %rax
addq $-0x1, %rax
movq %rax, -0x58(%rbp)
jmp 0x2e8ac
jmp 0x2e8ae
cmpq $0x0, -0x58(%rbp)
setg %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x2e8c0
jmp 0x2e913
movq -0x30(%rbp), %rdi
leaq -0x10(%rbp), %rcx
movq -0x60(%rbp), %r8
leaq 0x7b5dd(%rip), %rsi     # 0xa9eb0
xorl %eax, %eax
movl %eax, %edx
leaq 0x611c2(%rip), %r9      # 0x8faa0
callq 0x2f320
cmpl $0x0, %eax
setl %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x2e8f3
jmp 0x2e911
movq 0x78b66(%rip), %rax     # 0xa7460
movq %rax, -0x40(%rbp)
movl $0x5d, -0x38(%rbp)
movl $0xbc9, -0x44(%rbp)     # imm = 0xBC9
jmp 0x2e9ea
jmp 0x2e913
jmp 0x2e946
movq -0x28(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x78(%rbp)
testq %rax, %rax
je 0x2e940
jmp 0x2e928
movq -0x78(%rbp), %rax
subq $0x1, %rax
jne 0x2e942
jmp 0x2e934
movq -0x28(%rbp), %rax
movq 0x18(%rax), %rax
movq %rax, -0x10(%rbp)
jmp 0x2e944
jmp 0x2e9b2
jmp 0x2e946
cmpq $0x0, -0x10(%rbp)
je 0x2e9ac
movq -0x10(%rbp), %rdi
callq 0x2f230
cmpl $0x0, %eax
setne %al
andb $0x1, %al
movb %al, -0x31(%rbp)
movb -0x31(%rbp), %al
andb $0x1, %al
movzbl %al, %ecx
xorl %eax, %eax
cmpl $0x1, %ecx
movb %al, -0x79(%rbp)
jne 0x2e982
callq 0x295f0
cmpq $0x0, %rax
setne %al
movb %al, -0x79(%rbp)
movb -0x79(%rbp), %al
xorb $-0x1, %al
xorb $-0x1, %al
testb $0x1, %al
jne 0x2e98f
jmp 0x2e9aa
movq 0x78aca(%rip), %rax     # 0xa7460
movq %rax, -0x40(%rbp)
movl $0x5d, -0x38(%rbp)
movl $0xbd4, -0x44(%rbp)     # imm = 0xBD4
jmp 0x2e9ea
jmp 0x2e9b0
movb $0x0, -0x31(%rbp)
jmp 0x2ea0a
movq -0x28(%rbp), %rax
movq 0x10(%rax), %r8
leaq 0x610df(%rip), %rdi     # 0x8faa0
xorl %esi, %esi
xorl %eax, %eax
movl %eax, %edx
movl $0x1, %ecx
callq 0x2f6a0
movq 0x78a88(%rip), %rax     # 0xa7460
movq %rax, -0x40(%rbp)
movl $0x5d, -0x38(%rbp)
movl $0xbdb, -0x44(%rbp)     # imm = 0xBDB
movl -0x44(%rbp), %esi
movl -0x38(%rbp), %edx
movq -0x40(%rbp), %rcx
leaq 0x605ad(%rip), %rdi     # 0x8efa8
callq 0x2c5a0
movq $0x0, -0x18(%rbp)
jmp 0x2ea27
movq -0x20(%rbp), %rdi
movb -0x31(%rbp), %al
andb $0x1, %al
movzbl %al, %esi
callq 0x304e0
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rax
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x88(%rbp)
movq %fs:0x28, %rax
movq -0x8(%rbp), %rcx
cmpq %rcx, %rax
jne 0x2ea54
movq -0x88(%rbp), %rax
addq $0x90, %rsp
popq %rbp
retq
callq 0x29420
nopl (%rax)