Generated by Cython 3.1.2

Yellow lines hint at Python interaction.
Click on a line that starts with a "+" to see the C code that Cython generated for it.

Raw output: numbers.c

+001: # cython: language_level=3, cdivision=True
  __pyx_t_4 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_4) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
 002: 
 003: cimport cython
 004: from cpython cimport PyObject, Py_DECREF
 005: from libc.stdint cimport *
 006: from .dtypes cimport *
 007: 
 008: cdef DDType decl
 009: 
 010: 
 011: ### declare double
 012: 
+013: cdef int pack_d(object dtype, double* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_d(CYTHON_UNUSED PyObject *__pyx_v_dtype, double *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_d", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+014: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyFloat_AsDouble(__pyx_v_obj); if (unlikely((__pyx_t_1 == (double)-1) && PyErr_Occurred())) __PYX_ERR(0, 14, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+015: cdef object unpack_d(object dtype, double* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_d(CYTHON_UNUSED PyObject *__pyx_v_dtype, double *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("arrex.numbers.unpack_d", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+016: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyFloat_FromDouble((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 16, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 017: 
+018: decl = DDType()
  __pyx_t_3 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_4 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL};
    __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 18, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_2);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_2));
  __Pyx_GIVEREF((PyObject *)__pyx_t_2);
  __pyx_t_2 = 0;
+019: decl.dsize = sizeof(double)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(double));
+020: decl.c_pack = <c_pack_t> pack_d
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_d);
+021: decl.c_unpack = <c_unpack_t> unpack_d
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_d);
+022: decl.layout = b'd'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_d);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_d);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_d;
 023: 
+024: declare('d', decl)
  __pyx_t_2 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_2);
  __pyx_t_4 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_d, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
 025: 
 026: 
 027: ### declare float
 028: 
+029: cdef int pack_f(object dtype, float* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_f(CYTHON_UNUSED PyObject *__pyx_v_dtype, float *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_f", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+030: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyFloat_AsFloat(__pyx_v_obj); if (unlikely((__pyx_t_1 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 30, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+031: cdef object unpack_f(object dtype, float* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_f(CYTHON_UNUSED PyObject *__pyx_v_dtype, float *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("arrex.numbers.unpack_f", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+032: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyFloat_FromDouble((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 32, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 033: 
+034: decl = DDType()
  __pyx_t_2 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL};
    __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 34, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_4);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_4));
  __Pyx_GIVEREF((PyObject *)__pyx_t_4);
  __pyx_t_4 = 0;
+035: decl.dsize = sizeof(float)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(float));
+036: decl.c_pack = <c_pack_t> pack_f
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_f);
+037: decl.c_unpack = <c_unpack_t> unpack_f
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_f);
+038: decl.layout = b'f'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_f);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_f);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_f;
 039: 
+040: declare('f', decl)
  __pyx_t_4 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_4);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_4);
  __pyx_t_3 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_f, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 40, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
 041: 
 042: 
 043: ### declare int8_t
 044: 
+045: cdef int pack_b(object dtype, int8_t* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_b(CYTHON_UNUSED PyObject *__pyx_v_dtype, int8_t *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_b", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+046: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyLong_As_int8_t(__pyx_v_obj); if (unlikely((__pyx_t_1 == ((int8_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 46, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+047: cdef object unpack_b(object dtype, int8_t* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_b(CYTHON_UNUSED PyObject *__pyx_v_dtype, int8_t *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("arrex.numbers.unpack_b", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+048: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyLong_From_int8_t((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 48, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 049: 
+050: decl = DDType()
  __pyx_t_4 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_2 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL};
    __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 50, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_3);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_3));
  __Pyx_GIVEREF((PyObject *)__pyx_t_3);
  __pyx_t_3 = 0;
+051: decl.dsize = sizeof(int8_t)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(int8_t));
+052: decl.c_pack = <c_pack_t> pack_b
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_b);
+053: decl.c_unpack = <c_unpack_t> unpack_b
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_b);
+054: decl.layout = b'b'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_b);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_b);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_b;
 055: 
+056: declare('b', decl)
  __pyx_t_3 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_3);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_3);
  __pyx_t_2 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_b, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 56, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 057: 
 058: 
 059: ### declare uint8_t
 060: 
+061: cdef int pack_B(object dtype, uint8_t* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_B(CYTHON_UNUSED PyObject *__pyx_v_dtype, uint8_t *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_B", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+062: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyLong_As_uint8_t(__pyx_v_obj); if (unlikely((__pyx_t_1 == ((uint8_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 62, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+063: cdef object unpack_B(object dtype, uint8_t* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_B(CYTHON_UNUSED PyObject *__pyx_v_dtype, uint8_t *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("arrex.numbers.unpack_B", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+064: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyLong_From_uint8_t((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 64, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 065: 
+066: decl = DDType()
  __pyx_t_3 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_4 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL};
    __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 66, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_2);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_2));
  __Pyx_GIVEREF((PyObject *)__pyx_t_2);
  __pyx_t_2 = 0;
+067: decl.dsize = sizeof(uint8_t)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(uint8_t));
+068: decl.c_pack = <c_pack_t> pack_B
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_B);
+069: decl.c_unpack = <c_unpack_t> unpack_B
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_B);
+070: decl.layout = b'B'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_B);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_B);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_B;
 071: 
+072: declare('B', decl)
  __pyx_t_2 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_2);
  __pyx_t_4 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_B, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 72, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
 073: 
 074: 
 075: ### declare int16_t
 076: 
+077: cdef int pack_h(object dtype, int16_t* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_h(CYTHON_UNUSED PyObject *__pyx_v_dtype, int16_t *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_h", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+078: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyLong_As_int16_t(__pyx_v_obj); if (unlikely((__pyx_t_1 == ((int16_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 78, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+079: cdef object unpack_h(object dtype, int16_t* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_h(CYTHON_UNUSED PyObject *__pyx_v_dtype, int16_t *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("arrex.numbers.unpack_h", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+080: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyLong_From_int16_t((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 80, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 081: 
+082: decl = DDType()
  __pyx_t_2 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL};
    __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 82, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_4);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_4));
  __Pyx_GIVEREF((PyObject *)__pyx_t_4);
  __pyx_t_4 = 0;
+083: decl.dsize = sizeof(int16_t)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(int16_t));
+084: decl.c_pack = <c_pack_t> pack_h
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_h);
+085: decl.c_unpack = <c_unpack_t> unpack_h
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_h);
+086: decl.layout = b'h'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_h);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_h);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_h;
 087: 
+088: declare('h', decl)
  __pyx_t_4 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_4);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_4);
  __pyx_t_3 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_h, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 88, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
 089: 
 090: 
 091: ### declare uint16_t
 092: 
+093: cdef int pack_H(object dtype, uint16_t* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_H(CYTHON_UNUSED PyObject *__pyx_v_dtype, uint16_t *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_H", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+094: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyLong_As_uint16_t(__pyx_v_obj); if (unlikely((__pyx_t_1 == ((uint16_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 94, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+095: cdef object unpack_H(object dtype, uint16_t* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_H(CYTHON_UNUSED PyObject *__pyx_v_dtype, uint16_t *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("arrex.numbers.unpack_H", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+096: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyLong_From_uint16_t((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 96, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 097: 
+098: decl = DDType()
  __pyx_t_4 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_2 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL};
    __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 98, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_3);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_3));
  __Pyx_GIVEREF((PyObject *)__pyx_t_3);
  __pyx_t_3 = 0;
+099: decl.dsize = sizeof(uint16_t)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(uint16_t));
+100: decl.c_pack = <c_pack_t> pack_H
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_H);
+101: decl.c_unpack = <c_unpack_t> unpack_H
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_H);
+102: decl.layout = b'H'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_H);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_H);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_H;
 103: 
+104: declare('H', decl)
  __pyx_t_3 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_3);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_3);
  __pyx_t_2 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_H, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 104, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 105: 
 106: 
 107: ### declare int32_t
 108: 
+109: cdef int pack_i(object dtype, int32_t* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_i(CYTHON_UNUSED PyObject *__pyx_v_dtype, int32_t *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_i", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+110: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyLong_As_int32_t(__pyx_v_obj); if (unlikely((__pyx_t_1 == ((int32_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 110, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+111: cdef object unpack_i(object dtype, int32_t* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_i(CYTHON_UNUSED PyObject *__pyx_v_dtype, int32_t *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("arrex.numbers.unpack_i", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+112: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyLong_From_int32_t((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 112, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 113: 
+114: decl = DDType()
  __pyx_t_3 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_4 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL};
    __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 114, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_2);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_2));
  __Pyx_GIVEREF((PyObject *)__pyx_t_2);
  __pyx_t_2 = 0;
+115: decl.dsize = sizeof(int32_t)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(int32_t));
+116: decl.c_pack = <c_pack_t> pack_i
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_i);
+117: decl.c_unpack = <c_unpack_t> unpack_i
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_i);
+118: decl.layout = b'i'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_i);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_i);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_i;
 119: 
+120: declare('i', decl)
  __pyx_t_2 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_2);
  __pyx_t_4 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_i, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 120, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
 121: 
 122: 
 123: ### declare uint32_t
 124: 
+125: cdef int pack_I(object dtype, uint32_t* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_I(CYTHON_UNUSED PyObject *__pyx_v_dtype, uint32_t *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_I", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+126: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyLong_As_uint32_t(__pyx_v_obj); if (unlikely((__pyx_t_1 == ((uint32_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 126, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+127: cdef object unpack_I(object dtype, uint32_t* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_I(CYTHON_UNUSED PyObject *__pyx_v_dtype, uint32_t *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("arrex.numbers.unpack_I", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+128: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyLong_From_uint32_t((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 128, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 129: 
+130: decl = DDType()
  __pyx_t_2 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_3 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL};
    __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 130, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_4);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_4));
  __Pyx_GIVEREF((PyObject *)__pyx_t_4);
  __pyx_t_4 = 0;
+131: decl.dsize = sizeof(uint32_t)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(uint32_t));
+132: decl.c_pack = <c_pack_t> pack_I
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_I);
+133: decl.c_unpack = <c_unpack_t> unpack_I
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_I);
+134: decl.layout = b'I'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_I);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_I);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_I;
 135: 
+136: declare('I', decl)
  __pyx_t_4 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_4);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_4);
  __pyx_t_3 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_I, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 136, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
 137: 
 138: 
 139: ### declare int64_t
 140: 
+141: cdef int pack_l(object dtype, int64_t* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_l(CYTHON_UNUSED PyObject *__pyx_v_dtype, int64_t *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_l", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+142: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyLong_As_int64_t(__pyx_v_obj); if (unlikely((__pyx_t_1 == ((int64_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 142, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+143: cdef object unpack_l(object dtype, int64_t* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_l(CYTHON_UNUSED PyObject *__pyx_v_dtype, int64_t *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("arrex.numbers.unpack_l", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+144: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyLong_From_int64_t((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 144, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 145: 
+146: decl = DDType()
  __pyx_t_4 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_2 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL};
    __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
    __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
    if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 146, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_3);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_3));
  __Pyx_GIVEREF((PyObject *)__pyx_t_3);
  __pyx_t_3 = 0;
+147: decl.dsize = sizeof(int64_t)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(int64_t));
+148: decl.c_pack = <c_pack_t> pack_l
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_l);
+149: decl.c_unpack = <c_unpack_t> unpack_l
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_l);
+150: decl.layout = b'l'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_l);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_l);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_l;
 151: 
+152: declare('l', decl)
  __pyx_t_3 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_3);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_3);
  __pyx_t_2 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_l, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 152, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
 153: 
 154: 
 155: ### declare uint64_t
 156: 
+157: cdef int pack_L(object dtype, uint64_t* place, object obj) except -1:
static int __pyx_f_5arrex_7numbers_pack_L(CYTHON_UNUSED PyObject *__pyx_v_dtype, uint64_t *__pyx_v_place, PyObject *__pyx_v_obj) {
  int __pyx_r;
/* … */
  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_AddTraceback("arrex.numbers.pack_L", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  return __pyx_r;
}
+158: 	place[0] = obj
  __pyx_t_1 = __Pyx_PyLong_As_uint64_t(__pyx_v_obj); if (unlikely((__pyx_t_1 == ((uint64_t)-1)) && PyErr_Occurred())) __PYX_ERR(0, 158, __pyx_L1_error)
  (__pyx_v_place[0]) = __pyx_t_1;
+159: cdef object unpack_L(object dtype, uint64_t* place):
static PyObject *__pyx_f_5arrex_7numbers_unpack_L(CYTHON_UNUSED PyObject *__pyx_v_dtype, uint64_t *__pyx_v_place) {
  PyObject *__pyx_r = NULL;
+160: 	return place[0]
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = __Pyx_PyLong_From_uint64_t((__pyx_v_place[0])); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 160, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;
 161: 
+162: decl = DDType()
  __pyx_t_3 = NULL;
  __Pyx_INCREF((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType);
  __pyx_t_4 = ((PyObject *)__pyx_mstate_global->__pyx_ptype_5arrex_6dtypes_DDType); 
  __pyx_t_5 = 1;
  {
    PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL};
    __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+__pyx_t_5, (1-__pyx_t_5) | (__pyx_t_5*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 162, __pyx_L1_error)
    __Pyx_GOTREF((PyObject *)__pyx_t_2);
  }
  __Pyx_XGOTREF((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_DECREF_SET(__pyx_v_5arrex_7numbers_decl, ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_2));
  __Pyx_GIVEREF((PyObject *)__pyx_t_2);
  __pyx_t_2 = 0;
+163: decl.dsize = sizeof(uint64_t)
  __pyx_v_5arrex_7numbers_decl->dsize = (sizeof(uint64_t));
+164: decl.c_pack = <c_pack_t> pack_L
  __pyx_v_5arrex_7numbers_decl->c_pack = ((__pyx_t_5arrex_6dtypes_c_pack_t)__pyx_f_5arrex_7numbers_pack_L);
+165: decl.c_unpack = <c_unpack_t> unpack_L
  __pyx_v_5arrex_7numbers_decl->c_unpack = ((__pyx_t_5arrex_6dtypes_c_unpack_t)__pyx_f_5arrex_7numbers_unpack_L);
+166: decl.layout = b'L'
  __Pyx_INCREF(__pyx_mstate_global->__pyx_n_b_L);
  __Pyx_GIVEREF(__pyx_mstate_global->__pyx_n_b_L);
  __Pyx_GOTREF(__pyx_v_5arrex_7numbers_decl->layout);
  __Pyx_DECREF(__pyx_v_5arrex_7numbers_decl->layout);
  __pyx_v_5arrex_7numbers_decl->layout = __pyx_mstate_global->__pyx_n_b_L;
 167: 
+168: declare('L', decl)
  __pyx_t_2 = ((PyObject *)__pyx_v_5arrex_7numbers_decl);
  __Pyx_INCREF(__pyx_t_2);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_2);
  __pyx_t_4 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(__pyx_mstate_global->__pyx_n_u_L, 0, &__pyx_t_6)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 168, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
 169: 
+170: declare(float, declared('d'))
  __pyx_t_4 = ((PyObject *)__pyx_f_5arrex_6dtypes_declared(__pyx_mstate_global->__pyx_n_u_d, 0)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 170, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_4);
  __pyx_t_2 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(((PyObject *)(&PyFloat_Type)), 0, &__pyx_t_6)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 170, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
+171: declare(int, declared('l'))
  __pyx_t_2 = ((PyObject *)__pyx_f_5arrex_6dtypes_declared(__pyx_mstate_global->__pyx_n_u_l, 0)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 171, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_6.__pyx_n = 1;
  __pyx_t_6.dtype = ((struct __pyx_obj_5arrex_6dtypes_DDType *)__pyx_t_2);
  __pyx_t_4 = ((PyObject *)__pyx_f_5arrex_6dtypes_declare(((PyObject *)(&PyLong_Type)), 0, &__pyx_t_6)); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 171, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;